ウカマル応用情報技術者ログイン

平成25年度 秋期 応用情報技術者 問20

テクノロジ系

コンパイラにおける処理を字句解析,構文解析,意味解析,最適化の四つのフェーズに分けたとき,意味解析のフェーズで行う処理はどれか。

選択肢
正解と解説

正解 ウ

意味解析は、変数の宣言と使用の対応付けや、データ型の整合性のチェックを行うフェーズです。

コンパイラは、字句解析、構文解析、意味解析、最適化の順に処理を進めます。意味解析は、構文解析で得た構文木をもとに、文法だけでは判断できない意味上の正しさを調べます。具体的には、変数が宣言されているかの確認や、宣言と使用の対応付け、演算のデータ型が合っているかのチェックを行います。選択肢の「宣言と使用とを対応付け」と「データ型の整合性」が意味解析の決め手になります。

ア:構文解析は、字句の列を文法に基づいて解析し、文法誤りがないかを調べる処理です。

イ:字句解析は、ソースプログラムの文字の列を、字句(トークン)という意味のある最小の単位の列に変換する処理です。

エ:最適化は、レジスタ割付けや不要な演算の削除によって、実行効率のよいコードに変換する処理です。

出典:平成25年度 秋期 応用情報技術者試験 問20

全年度から出題。10問で実力を判定します。登録不要。

出典:平成25年度 秋期 応用情報技術者試験 問20(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方