コンパイラとは?
コンパイラとは、原始プログラムを一括して機械語などの目的プログラムへ翻訳するソフトウェア。字句解析→構文解析→意味解析→最適化→コード生成という順で処理を進める。
高度試験・午前I(全区分共通)の過去問では3回出題されています(2023年度〜2025年度)。
こんぱいら
コンパイラの意味
原始プログラムを一括して機械語などの目的プログラムへ翻訳するソフトウェア。字句解析→構文解析→意味解析→最適化→コード生成という順で処理を進める。
コンパイラの具体例
字句解析では文字列をトークン(識別子・演算子など)に切り分け、構文解析では構文規則に従って構文木を作る。意味解析で型の整合性を検査し、最適化で不要な計算を除去する。
コンパイラは試験でどう引っ掛けられる?
処理順序を問う問題が定番。「意味解析は構文解析の後」「最適化はコード生成の前」を押さえる。
コンパイラと関連する用語
コンパイラが出た過去問
組込みシステムのソフトウェア開発に使われるIDEの説明として、適切なものはどれか。
正解:エディター、コンパイラ、リンカ、デバッガなどが一体となったツール
要点:IDEは編集・翻訳・デバッグ機能を統合した開発環境
IDE(統合開発環境)は、エディタ、コンパイラ、リンカ、デバッガといった開発に必要なツール群を1つの環境にまとめ、統一された操作で扱えるようにしたソフトウェアである。組込み開発でもクロスコンパイラやデバッガと連携し、開発効率を高める。
出典:令和5年度 秋期 高度共通_午前I試験 am1 問17(IPA)手続型言語のコンパイラがコード生成までに行う処理のうち、最後に行うものはどれか。
正解:最適化
要点:コンパイラは字句→構文→意味→最適化→コード生成の順に処理する
コンパイラは字句解析、構文解析、意味解析の順に原始プログラムを解釈し、中間表現に対して最適化を施したうえでコード生成に進む。したがってコード生成の直前に行われるのは最適化である。
出典:令和6年度 秋期 高度共通_午前I試験 am1 問7(IPA)プロセッサの高速化技法の一つとして、同時に実行可能な複数の動作を、コンパイルの段階でまとめて一つの複合命令とし、高速化を図る方式はどれか。
正解:VLIW
要点:VLIWはコンパイラが並列動作を長い1命令にまとめる
VLIW(Very Long Instruction Word)は、並列実行できる複数の演算をコンパイル時にまとめ、非常に長い1命令として構成する方式である。命令の並列性の解析をコンパイラが担うため、実行時にハードウェアで依存関係を解析する必要がなく、回路を単純にしたまま高速化できる。
出典:令和7年度 秋期 高度共通_午前I試験 am1 問4(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。