プロが教えるわが家の防犯対策術!

確認までになのですが。

C言語に限らず言語開発環境を構築する際にインストーラとして「win.x86」「win.x64」や「macOS」は選択することはあっても、「CPUはintelですか、AMDですか?」と尋ねられることはないことから、

「コンパイラはどうやって導入されるPCのCPUに対応するのか?」という疑問がありました。

もしも言語処理系というものが、

・数種類のメーカーのルールしかない
・CPUの世代(intel i7, i9など)の世代間で言語処理系に互換性がある
・コンパイラ内に必要な数種類のメーカーの処理系はもうすでに入っている
・コンパイラは今後しばらく修正される必要が今のところない

のであれば新品のwindowsOSにサードパーティのコンパイラをダウンロードしてきて利用できる意味が理解できるのですが、これは正しいですか?

A 回答 (1件)

正しくない。



コンパイルとは、プログラミング言語で記述されたソースコードを、コンピュータが実行可能なオブジェクトコードに変換すること。
コンパイラはコンパイルするためのツール。

CPUはIntel製, AMD製が有名ではあるけど、それだけではない。
スマートフォンに使用されているARMもあるし、古くはザイログ社のZ80シリーズ、モトローラ社のMC68000シリーズ等、多種多様なCPUが存在する。(存在していた)

CPUのメーカー、種類だけコンパイラは存在するし、同じメーカーの同系統のCPUでも世代が重なるごとに新たな構成、命令が追加されるため、コンパイラはそれに追随していかなければならない。
よって、コンパイラは現在でもどんどん更新されて行っている。
    • good
    • 1
この回答へのお礼

ありがとうございます、
想定外の内容でしたが貴重な情報をいただきました。

お礼日時:2020/11/07 16:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング