平成27年度 春期 午前 問19
ソフトウェア
目的プログラムに関する問題
あるコンピュータ上で,異なる命令形式のコンピュータで実行できる目的プログラムを生成する言語処理プログラムはどれか。
- アエミュレータ
- イクロスコンパイラ
- ウ最適化コンパイラ
- エプログラムジェネレータ
答えと解説を見る
✓ これが正解イクロスコンパイラ
解説
翻訳する機械と、動かす機械が違う翻訳道具です。
設問は、あるコンピュータ上で、異なる命令形式のコンピュータで実行できる目的プログラムを作る言語処理プログラムを選ばせています。文を二つに割ると軸が見えます。前半のあるコンピュータ上でが翻訳する側の機械を指し、後半の異なる命令形式のコンピュータが動かす側の機械を指します。この二つが食い違う翻訳を行うものが、クロスコンパイラです。クロスは渡るという意味で、名前がそのまま働きを表しています。必要になる場面もはっきりしています。組込み機器や小さな制御用の機械のように、開発の道具そのものを載せられない相手に向けたプログラムを、大きな機械の上で作るときです。四つを入口と出口で並べ直すと、原始プログラムを入口として、別の機械で動く目的プログラムを出すものは一つしかありません。コンパイラを問う設問では、翻訳する側と動かす側が同じか違うかを先に見てください。
ほかの選択肢はなぜ違うのか
- アエミュレータ:別の機械の動きをまねて、その場で走らせる道具です。何かを作り出すわけではないので、目的プログラムを生成するという条件にも、言語処理プログラムという限定にも当たりません。
- ウ最適化コンパイラ:同じ命令形式のまま、速くしたり小さくしたりする工夫を加えて翻訳するものです。変えているのは出来ばえであって、動かす相手の機械ではありません。
- エプログラムジェネレータ:画面や帳票などの仕様を入口として、原始プログラムを自動で書き出す道具です。入口も出口も一段ずれているので、設問が指している位置にありません。
出典:平成27年度 春期 応用情報技術者試験 午前 問19
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)