正答3
解説
正解は3です。
コンパイラの最適化とは、プログラムの意味を変えずに、実行速度やメモリ使用量の点で効率の良いオブジェクトコードを生成する処理です。
【選択肢別解説】
1:× オブジェクトコードの代わりにインタプリタ用の中間コードを生成するのは、中間言語方式の処理系の説明です。
実行効率を高める最適化とは別のものです。
2:× コンパイルするコンピュータとは異なるアーキテクチャのコンピュータ向けにオブジェクトコードを生成するのは、クロスコンパイラの説明です。
3:○ プログラムコードを解析し、不要な計算の削除やループ内の処理の移動などを行って、実行時の効率を高めたオブジェクトコードを生成します。
これが最適化の説明です。
4:× 実行時に呼び出されたサブプログラム名や変数の内容を表示するのは、トレースなどのデバッグ用コードを埋め込む機能の説明です。
【ポイント】
最適化の代表例には、定数の畳み込み、共通部分式の削除、ループ内で値が変わらない式のループ外への移動などがあります。
クロスコンパイラは、組込みシステムの開発などでよく使われます。