修了試験 2013-01-27実施分 基本情報技術者試験 問24
コンパイラにおける最適化の説明として,適切なものはどれか。
正答3
解説
正解は3です。 コンパイラの最適化は、ソースプログラムを解析し、実行速度やメモリ効率が高くなるように目的プログラムを生成する処理です。 例えば、ループ内で値が変わらない計算をループの外に出すなどの工夫をします。 【選択肢別解説】 1:× インタプリタ用の中間コードを生成するのは、中間コードを用いる言語処理方式の説明です。 最適化は処理効率を高める工夫であり、出力の形式を変えることではありません。 2:× 異なるアーキテクチャのコンピュータ向けにオブジェクトコードを生成するのは、クロスコンパイラの説明です。 最適化の説明ではありません。 3:○ プログラムコードを解析して、実行時の処理効率を高めたオブジェクトコードを生成しています。 これはコンパイラの最適化の説明です。 4:× 実行時に呼び出された関数名や変数の内容を表示するコードを埋め込むのは、デバッグ用のトレース機能です。 処理効率を高める最適化とは目的が逆です。 【ポイント】 最適化の例には、ループ内の不変式の移動、共通部分式の削除、定数の畳込みなどがあります。 クロスコンパイラは組込み機器のソフトウェア開発でよく使われます。まとめて解く
修了試験 2013-01-27実施分を通しで解く(80問)→