FE SUBJECT A
基本情報技術者 科目Aの問題解説
問題
コンパイラとインタプリタの違いとして適切なものはどれか。
- ア コンパイラはソースコード全体を事前に機械語に変換し、インタプリタは1文ずつ解釈実行する
- イ コンパイラはスクリプト言語用、インタプリタはコンパイル言語用の処理系である
- ウ コンパイラは実行速度が遅く、インタプリタは速い
- エ コンパイラとインタプリタに本質的な違いはない
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目A範囲
正解と解説
正解:コンパイラはソースコード全体を事前に機械語に変換し、インタプリタは1文ずつ解釈実行する
正解はア。コンパイラは、ソースコード全体を事前に機械語や中間コードへ変換し、実行可能な形にする処理系である。一方、インタプリタはソースコードを実行時に1文ずつ解釈しながら処理する方式である。
一般にコンパイル方式は実行時の速度に有利で、インタプリタ方式は実行しながら確認しやすく開発時の試行錯誤に向く。ただし現実の言語処理系にはJITコンパイルなどの中間的な方式もある。イ、ウ、エはいずれも両者の関係を単純化しすぎている。
この問題について
IPAが公開するシラバス・試験範囲・公開問題の出題形式を参考にした独自作成問題。公式問題・過去問題の転載ではありません。
公式試験問題、過去問題、公式サンプル問題、市販教材の問題文を転載したものではありません。