コンパイラ
クロスコンパイラの説明として正しいものはどれか。
- A2つのプログラミング言語を、1つの新しい言語に混ぜ合わせるコンパイラ
- B動かすコンピュータとは別のCPU向けの機械語を生成するコンパイラ
- C複数のコンパイラの出力を比べて、最も速いものを選ぶ道具
答えと解説を見る
正解:B. 動かすコンピュータとは別のCPU向けの機械語を生成するコンパイラ
クロスコンパイラは、例えばx86のパソコンの上で動きながら、ArmやRISC-Vのマイコン向けの機械語を生成するコンパイラです。組込み機器のように、対象の機器でコンパイラを動かすには性能やメモリが足りない場合に欠かせません。生成した機械語は、対象の機器に書き込んだり、その機器を模擬するエミュレータで動かしたりして確かめます。言語を混ぜ合わせたり、複数のコンパイラの結果を比べたりする道具ではありません。
- A. 言語を混ぜ合わせるコンパイラではありません。
- B. 正しい。別の種類のCPU向けに機械語を生成します。
- C. 結果を比べる道具ではありません。