コンパイラー【compiler】
コンパイラ
(コンパイラー から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/09/09 21:01 UTC 版)
コンパイラ(英: compiler)は、高水準言語で書かれたコンピュータプログラムを、 コンピュータが実行や解釈できる形式に、一括して(※[1])変換するソフトウェア[2]。
注釈
- ^ この本の表紙には赤いドラゴンの絵が描かれているのでドラゴンブックと呼ばれている。
- ^ オブジェクトコードの記述に使われる言語は、要は、その言語から最終的に機械語に翻訳する道筋が1筋(1本)でもあるものであればよい。理論上、機械語にたどり着くまでに途中で何種類もの言語にコンパイル(翻訳)する必要があっても、ともかく最終的に機械語に翻訳するまでの道筋が1本あれば良い。オブジェクトコードの記述に使われる言語は必ずしもアセンブリ言語や機械語でなくてもよい。たとえばC++で書かれたオブジェクトコードを出力するコンパイラやC言語で書かれたオブジェクトコードを出力するコンパイラもある。それぞれ、C++を機械語に、あるいはC言語を機械語に変換するコンパイラを別途用意すれば最終的にCPUが実行できる機械語に変換できる。よくあるのはアセンブリ言語で書かれたオブジェクトコードを出力するコンパイラである。アセンブリ言語で書かれたプログラムも通常そのままでは実行できないが、アセンブラを使ってやはりCPUが実行できる機械語に変換できる。
- ^ 最終的に出力されるターゲットプログラムは、機械語やアセンブリ言語で記述したものが多いが、それらに限るわけではなく、中間コードや高級言語のプログラムを出力するコンパイラもある。
出典
- ^ a b (※)コンパイラの定義文にわざわざ「一括して」という言葉を含めることが多いのは、インタプリタと対比するためである。「一括して」を入れないとインタプリタまで含んでしまい、定義文としては落第点ものとなる。Merriam Websterの英文の定義文でも、やはり「translates an entire set of instructions」[1]と、「命令群(の一部分ではなく)全部を」と明記している。
- ^ “コンパイラとは - IT用語辞典”. IT用語辞典 e-Words. 2023年2月22日閲覧。
- ^ a b c d Alfred V. Aho, Compilers, Principles, Techniques, and Tools. Reprinted with corrections March, 1988.(Copyright 1986,Bell Telephone Laboratories, Incorporated), pp.1-2. (Chapter 1.1 "COMPILERS"の節の説明)
- ^ ASCII.jpデジタル用語辞典,デジタル大辞泉,IT用語がわかる辞典. “オブジェクトコード(おぶじぇくとこーど)とは”. コトバンク. 2020年4月26日閲覧。
- ^ 例えばCPUやGPUなど。
- ^ “分割コンパイル”. www3.nit.ac.jp. 2020年4月27日閲覧。
- ^ プログレッシブ英和中辞典「compile」
- ^ Oxford Dictionary; Produce (a list or book) by assembling information collected from other sources 「何らかの情報源から集めた情報を元にして、一覧や本を作りだす」
- ^ プログレッシブ英和中辞典「compiler」
- ^ 大辞泉「コンパイラ」
- ^ Oxford Dictionary; compiler: A person who produces a list or book by assembling information or written material collected from other sources.
- ^ bit 編集部『bit 単語帳』共立出版、1990年8月15日、82頁。ISBN 4-320-02526-1。
- ^ “CSAIL Publications”. publications.csail.mit.edu. 2020年6月16日閲覧。
- ^ “https://www.246.dk/” (デンマーク語). 2020年6月16日閲覧。
- ^ 2020年4月13日 8分. “コンパイラとインタプリタの違いは?言語の違いを分かりやすく解説!”. じゃぱざむ. 2020年4月27日閲覧。
- ^ “インタプリタとコンパイラ”. nyumon-info.com. 2020年4月27日閲覧。
- ^ a b Alfred V. Aho, Compilers, Principles, Techniques, and Tools. 1988., pp.10-15. 「1.3(1章3節) THE PHASES OF A COMPILER」
- ^ “コンパイラの構造を解説 | Shinta's Site”. www.gadgety.net. 2020年4月27日閲覧。
- ^ “コマンド:lex: UNIX/Linuxの部屋”. x68000.q-e-d.net. 2020年4月27日閲覧。
- ^ “パーサジェネレータとは - Weblio辞書”. www.weblio.jp. 2020年4月27日閲覧。
- ^ “コンパイラの入り口、「字句解析」のための文字列操作 (1/3)”. @IT. 2020年4月27日閲覧。
- ^ a b コンパイラの構成と最適化. Nakata, Ikuo, 1935-, 中田, 育男, 1935-. Tōkyō: Asakurashoten. (2009). ISBN 978-4-254-12177-3. OCLC 675837876
- ^ “プリプロセッサとは - IT用語辞典”. IT用語辞典 e-Words. 2020年4月27日閲覧。
- ^ “抽象構文木”. home.a00.itscom.net. 2020年4月27日閲覧。
- ^ “VU - exp. - compiler-general”. www.is.s.u-tokyo.ac.jp. 2020年4月27日閲覧。
- ^ MaryCore. “知っておいて損はない「コンパイラ最適化」の数々”. MaryCore 言語知能総合研究所. 2020年4月27日閲覧。
「コンパイラー」の例文・使い方・用例・文例
- コンパイラーのページへのリンク