目的プログラムを生成する言語処理プログラム

問題

あるコンピュータ上で,異なる命令形式のコンピュータで実行できる目的プログラムを生成する言語処理プログラムはどれか。

  • エミュレータ
  • クロスコンパイラ
  • 最適化コンパイラ
  • プログラムジェネレータ

答え

クロスコンパイラ

解説

コンパイラ

ソースコードから機械語に変換を行うプログラムをコンパイラと呼びます。

コンパイラ: compiler)とは、コンピュータ・プログラミング言語処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語あるいは元のプログラムよりも低い水準のコードに変換(コンパイル)するプログラムである。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

開発は、目的プログラムを動作させる環境に応じて、セルフ開発とクロス開発に分かれます。

  • セルフ開発 : 開発環境と同じ環境で目的プログラムを動作させる開発
  • クロス開発 : 開発環境と別の環境で目的プログラムを動作させる開発

それぞれの開発に、それぞれのコンパイラが対応して、クロスコンパイラという単語が生まれます。

  • セルフコンパイラ: セルフ開発のためのコンパイラ
  • クロスコンパイラ: クロス開発のためのコンパイラ

クロスコンパイラ: cross compiler)は、コンパイラが動作している以外のプラットフォーム向けに実行ファイルを生成する機能を持つコンパイラである。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

エミュレータ 

クロスコンパイルをしたプログラムの動作確認は、エミュレータを使って行うことができます。

コンピューターを含む機械装置の動作・機能を模倣する事をエミュレート(動詞)又はエミュレーション(名詞)といい、エミュレート/エミュレーションする装置、あるいはソフトウェアの事をエミュレータ (Emulator)という。

出典: フリー百科事典『ウィキペディア(Wikipedia)』