ITパスポート試験 ITパスポート 2013年 (平成25年 秋期)55: プログラムの実行方式としてインタプリタ方式とコンパイラ方式がある。図は,データを入力して結果を出力するプログラムの,それぞれの方式でのプログラムの実行の様子を示

ITパスポート 2013年 (平成25年 秋期)
Q 5555 / 100
プログラムの実行方式として方式と方式がある。図は,データを入力して結果を出力するプログラムの,それぞれの方式でのプログラムの実行の様子を示したものである。a,bに入れる字句の適切な組合せはどれか。 図(インタプリタ方式): ソースプログラム→[a]→結果 (データを入力,結果を出力) 図(コンパイラ方式): ソースプログラム→[b]→目的プログラム→結果 (データを入力,結果を出力)
ab
インタプリタインタプリタ
インタプリタコンパイラ
コンパイラインタプリタ
コンパイラコンパイラ
この問の正解率:74.34%(456件)
この問題の本文・選択肢・正解・解説(展開)

問題本文

プログラムの実行方式としてインタプリタ方式とコンパイラ方式がある。図は,データを入力して結果を出力するプログラムの,それぞれの方式でのプログラムの実行の様子を示したものである。a,bに入れる字句の適切な組合せはどれか。 図(インタプリタ方式): ソースプログラム→[a]→結果 (データを入力,結果を出力) 図(コンパイラ方式): ソースプログラム→[b]→目的プログラム→結果 (データを入力,結果を出力)

選択肢

  • .a:インタプリタ, b:インタプリタ
  • .a:インタプリタ, b:コンパイラ
  • .a:コンパイラ, b:インタプリタ
  • .a:コンパイラ, b:コンパイラ

正解

. a:インタプリタ, b:コンパイラ

解説

プログラム実行方式は,インタプリタ方式(interpreter:ソースコードを逐次解釈実行)とコンパイラ方式(compiler:ソースコード全体を翻訳して目的プログラムを生成し実行)に大別されます。インタプリタはソースから直接結果を出力(1段階)するのに対し,コンパイラはソース→目的プログラム→結果という2段階構造です。よって図のa(ソース→結果の中間)はインタプリタ,b(ソース→目的プログラム生成)はコンパイラとなり,組合せはイが正解です。Java等は両者の中間的な実行方式(中間コード→JIT)を採ります。

選択肢ごとの解説

  • .両方ともインタプリタでは,コンパイラ方式の目的プログラム生成という説明と矛盾し誤り。コンパイラ方式の特徴である翻訳ステップが説明できず,目的プログラムの存在が成立しない。
  • .正解。aはインタプリタ,bはコンパイラの組合せが正しい。インタプリタはソース→結果の1段階,コンパイラはソース→目的プログラム→結果の2段階という構造を反映した正解選択肢で,実行方式の本質を捉える。
  • .aがコンパイラだと,データ入力で結果出力という1段階方式と矛盾し誤り。aの構造はインタプリタの特徴(直接実行)に合致し,コンパイラとは整合しない。
  • .両方ともコンパイラでは,インタプリタ方式の説明(直接実行)が成立せず誤り。コンパイラは目的プログラム生成を経由するので,aの1段階方式の説明に当てはまらない。

ITパスポート 2013年 (平成25年 秋期)過去問一覧へ戻る・問55