令和5年度 秋期 午前 問18
ソフトウェア
目的プログラムに関する問題
あるコンピュータ上で,当該コンピュータとは異なる命令形式のコンピュータで実行できる目的プログラムを生成する言語処理プログラムはどれか。
- アエミュレーター
- イクロスコンパイラ
- ウ最適化コンパイラ
- エプログラムジェネレーター
答えと解説を見る
✓ これが正解イクロスコンパイラ
解説
翻訳するコンピュータと動かすコンピュータが別になります。
設問は、あるコンピュータの上で、そのコンピュータとは命令形式の異なるコンピュータで実行できる目的プログラムを生成する言語処理プログラムを選ばせています。名前の前半が示すのはまたぐという意味で、翻訳を行う機械と、出来上がった目的プログラムが動く機械が別になることを指します。なぜそんな作り方をするのかというと、組込みの機器や制御用の装置は記憶も処理能力も小さく、自分の上で翻訳の処理を動かせないことが多いからです。そこで手元のコンピュータで翻訳し、出来たものを機器へ書き込みます。新しい命令形式の機械を立ち上げるときも、最初の一本は別の機械で作るほかありません。正解はクロスコンパイラです。
ほかの選択肢はなぜ違うのか
- アエミュレーター:エミュレーターは、命令形式の違うコンピュータのふるまいをまねて、その命令をその場で解釈しながら動かす仕組みです。設問が求めているのは実行できる形のものを作り出す側なので、役目がずれています。
- ウ最適化コンパイラ:最適化コンパイラは、同じ命令形式の機械に向けて、速く動くよう、また小さく収まるよう工夫して翻訳するものです。またぐ相手は命令の体系ではなく、出来ばえの良し悪しになります。
- エプログラムジェネレーター:プログラムジェネレーターは、与えた仕様から原始プログラムを作り出す道具です。出てくるものが人の書く段階のものである点で、設問が挙げている生成物と食い違います。
出典:令和5年度 秋期 応用情報技術者試験 午前 問18
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)