本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

平成19年度 技術士第一次試験問題【専門科目】

W−3

コンパイラが行う最適化について述べた次の文のうち、最も不適切なものを選べ。

@ 末尾再帰呼び出し (tail recursion) は、スタックを消費しないループに変換することができる。

A 定数だけからなる式を、コンパイル時にその演算結果で置き換えることを、定数の畳み込みと呼ぶ。

B エイリアス解析は、エイリアスがあるものを調べることによって最適化を行う手法である。

C ループ不変式はループの外に移動することができる。

D ピープホール最適化は、通常コード生成の最後の段階で行われる。


正解

B


解説

B 不適切である。エイリアス解析は、あるメモリ領域に対して複数からアクセスされているかどうかを判定することである。エイリアスがあるかどうかが判定できない場合には、最適化できない。

D ピープホール最適化 (のぞき穴最適化) は、コンパイルされたオブジェクトの局所的な部分だけを見て施す最適化である。

W−2 目次 W−4