2022 サンプル問題16テクノロジ系

基本情報 2022 サンプル問題 問16:テクノロジ系に関する問題

インタプリタの説明として,適切なものはどれか。

  • a原始プログラムを,解釈しながら実行するプログラムである。正答
  • b原始プログラムを,推論しながら翻訳するプログラムである。
  • c原始プログラムを,目的プログラムに翻訳するプログラムである。
  • d実行可能なプログラムを,主記憶装置にロードするプログラムである。 - 13 -
正答:A原始プログラムを,解釈しながら実行するプログラムである。

AI解説(初心者・標準・上級)

理解度に合わせて3レベルの解説を無料で読めます。

初心者向けまずはここから。やさしく要点を解説

答えは a「原始プログラムを,解釈しながら実行するプログラムである。」 です。

インタプリタは英語で「通訳さん」のこと。たとえば日本語しか話せない人と英語しか話せない人の会話を、通訳が1文ずつその場で訳して伝えるのと同じイメージです。

プログラムも人間が書いた言葉(原始プログラム=ソースコード)をコンピュータがそのままでは理解できないので、インタプリタが1行ずつ訳して、その場で実行してくれます。Python や JavaScript の動き方がこれです。

👉 覚え方:インタプリタ=通訳さん。「読みながらしゃべる」イメージ。

ほかの選択肢:b「推論しながら翻訳」というプログラムは存在しません/c はコンパイラ(まとめて翻訳して実行ファイルを作る)/d はローダ(できあがったアプリをメモリに読み込む役)。

標準試験対策の基準レベル

なぜこれが正解か

正解は a。インタプリタ(interpreter)は原始プログラム(ソースコード)を逐次解釈しながら実行する言語処理プログラム。実行前に一括翻訳せず、1文ずつ解釈と実行を交互に行うのが特徴。Python、Ruby、JavaScript などが代表例。

各選択肢の解説

  • b:「推論しながら翻訳」する処理系は一般に存在しない。ダミー選択肢。
  • c:原始プログラムを目的プログラム(オブジェクトコード)に一括翻訳するのはコンパイラの説明。
  • d:実行可能ファイルを主記憶(メモリ)にロードするのはローダの役割。OS の機能。

覚え方・ひっかけ注意

コンパイラ=事前に丸ごと翻訳→速い/インタプリタ=その場で逐次翻訳→開発が楽と対比で覚える。c の「目的プログラムに翻訳」を見たら反射的にコンパイラと判断。d はリンカ(複数の目的プログラム結合)と混同しないこと。

上級誤答論破・背景理論まで深掘り

理論的背景

言語処理系は大別して(1)コンパイラ方式、(2)インタプリタ方式、(3)中間コード方式(ハイブリッド)に分類される。インタプリタは構文解析→意味解析→即時実行を1文単位で繰り返すため、目的プログラム生成は行わない。実行速度はコンパイル方式に劣るが、対話的実行(REPL)・動的型付け・実行時メタプログラミングが容易。

実務での使われ方

現代の主要言語の多くはハイブリッド方式を採用。Java はソースを中間コード(バイトコード)にコンパイルし、JVM がインタプリタ実行+JIT(Just-In-Time)コンパイラで頻出部分を機械語に変換しキャッシュする。Python(CPython)も .py → .pyc バイトコード → 仮想マシンで実行。JavaScript エンジン(V8 等)も同様の JIT 構成。

試験での位置づけ

基本情報・応用情報ともに「言語処理系の分類」「コンパイラとインタプリタの比較」「中間コード方式」は定番頻出。字句解析→構文解析→意味解析→最適化→コード生成というコンパイラの工程順、AST(抽象構文木)、リンカ・ローダの役割分担まで体系で押さえる。近年は LLVM・WebAssembly など中間表現の出題例も増加。

選択肢の発展補足

  • c コンパイラ:プリプロセッサ→コンパイラ→アセンブラ→リンカ→ローダのトータルチェーンで実行可能ファイルが生成される。
  • d ローダ:絶対ローダ・再配置可能ローダ・動的ローダの区分があり、共有ライブラリ(.so / .dll)の動的リンクは動的ローダが担う。
  • 関連用語:クロスコンパイラ(別アーキテクチャ向け実行ファイルを生成)、トランスパイラ(TypeScript→JavaScript 等、高水準言語間変換)も合わせて押さえると応用問題に強い。
出典・引用について

出典:IPA(情報処理推進機構)公式 基本情報技術者試験 2022 サンプル問題16/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。

テクノロジ系の他の過去問

1
テクノロジ系
2
テクノロジ系
3
テクノロジ系
4
テクノロジ系
5
テクノロジ系

あなたの弱点を診断して、合格までの最短ルートを

この分野を連続演習し、AIがあなたの弱点を分析。合格ナビなら基本情報の過去問を解きながら学べます。