回答受付が終了しました

ID非公開

2021/6/14 7:02

66回答

C言語などのコンパイル言語は

C言語関連35閲覧

回答(6件)

1

コンパイルするCPUによっては変わりません。 ターゲットとなるCPUによって変わります。

1人がナイス!しています

1

CPUの種類によって、機械語が異なるので、当然機械語も変わります。又、プログラムはOSと連携して動いているので、OSの種類が異なる場合も、そのOSで動く機械語に翻訳されます。

1人がナイス!しています

ID非公開

質問者2021/6/14 14:27

OSと連携している とはどういうことでしょうか?

0

作成するCPU機械語に対応するコンパイラがコンパイルするCPUと言うよりOSで動きます。 例えばWindos OSで動くWin dos実行C言語コンパイラもあれば制御用8ビットCPUで動くクロスCコンパイラもあります。

ID非公開

質問者2021/6/14 14:31

最後は機械語だから CPUではないのですか? 機械語になったあとで OSがどう関わってくるのでしょうか?

2

>コンパイルするCPUによって 正確には「ターゲットとするCPU」によって変わります。 なお、コンパイルするCPU≠ターゲットのCPUの場合を、クロスコンパイルといいます。 昔、PCの性能が低かった時代にはクロスコンパイラとかクロスアセンブラというのは珍しくなかったですね(他の高性能なコンピュータで機械語のバイナリを作成する)。

2人がナイス!しています