平成23年度 高度共通 午前I(PM試験) 問7

分野:アルゴリズムとプログラミング(データ構造・アルゴリズム・探索整列・計算量の実際・擬似言語・プログラム言語・データ記述言語)|実際に出題されたIPA過去問題

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

  1.  エミュレータ
  2.  クロスコンパイラ
  3.  最適化コンパイラ
  4.  プログラムジェネレータ
解答・解説を見る

正解:イ

AI解説

クロスコンパイラは、開発を行うコンピュータとは異なる命令形式(アーキテクチャ)のコンピュータで実行できる目的プログラムを生成するコンパイラである。組込みシステム開発のように、実行環境(ターゲット)では開発できない場合に、開発機(ホスト)上でターゲット用のコードを作るために使う。「別の命令形式向けのコードを生成」がキーワードである。 ア: 誤り。エミュレータは、他のコンピュータ用のプログラムを命令を解釈しながらそのまま実行(模倣)するもので、目的プログラムを生成する言語処理プログラムではない。 イ: 正しい。クロスコンパイラは、実行対象と異なるコンピュータ上で、対象機種の命令形式の目的プログラムを生成する。 ウ: 誤り。最適化コンパイラは、実行速度やサイズの面で効率の良い目的プログラムを生成するコンパイラであり、対象は同一アーキテクチャでよい。 エ: 誤り。プログラムジェネレータは、パラメタや仕様の指定からプログラムを自動生成するツールであり、異機種向けコード生成の概念ではない。 💡 「クロス=機種をまたぐ」と覚える。エミュレータは『実行を模倣』、クロスコンパイラは『コードを生成』という動詞の違いで区別すると混同しない。組込み開発の文脈で問われるのが定番である。

出典:平成23年度 特別 プロジェクトマネージャ試験 午前I 問7 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
📱 演習アプリで解く(無料・登録不要・904問収録)

「アルゴリズムとプログラミング」分野の攻略ポイント

データ構造・アルゴリズム・探索と整列・計算量・擬似言語・プログラム言語・データ記述言語が対象です。擬似言語のトレースは時間はかかるものの、落ち着いて表を書けば必ず正解にたどり着く「確実に取れる」問題です。

アルゴリズムとプログラミングの攻略ポイントをすべて見る(要点6項目・ひっかけ3項目)→

同じ分野(アルゴリズムとプログラミング(データ構造・アルゴリズム・探索整列・計算量の実際・擬似言語・プログラム言語・データ記述言語))の過去問