開発ツール(全32問中5問目)

午前試験免除制度対応!基本情報技術者試験のeラーニング【独習ゼミ】
手続型言語のコンパイラが行う処理のうち,最初に行う処理はどれか。

出典:平成30年秋期 問19

  • 意味解析
  • 構文解析
  • 最適化
  • 字句解析
正解 問題へ
分野:テクノロジ系
中分類:ソフトウェア
小分類:開発ツール
解説
コンパイラは、高水準語で記述されたソースコードをコンピュータが理解できる機械語に一括変換する(=コンパイルする)ソフトウェアです。

コンパイルは、①字句解析、②構文解析、③意味解析、④最適化の4つの段階に分けて順に作業を行います。
19.png
字句解析
プログラムを表現する文字列を、意味のある最小の構成要素(トークン)に分解する
int a = 5 + 3;

int(型)、a(変数)、=(代入演算子)、5(整数)、+(加算演算子)、3(整数)、;(セミコロン)
構文解析
句解析で得られたトークンをもとに、言語の文法に基づいてプログラムを解析し、文法誤りがないかチェックする。構文木を使用してプログラムの構造を表現する
意味解析
プログラムが意味的に正しいかを検証する。変数の宣言と使用とを対応付けたり、演算におけるデータ型の整合性を確認する
最適化
コードの実行効率を向上させるために、不要な演算の省略、ループの展開、関数のインライン展開、レジスタ割付けなどの変換を行う
int a = 2 * 5;

int a = 10;
4つのうちコンパイラが最初に行う処理は「字句解析」なので「エ」が正解です。

Pagetop