• ベストアンサー

CPUによって機械語だかアセンブリ言語が違うという

CPUによって機械語だかアセンブリ言語が違うという解説をしている記事があったんですが CPUによってというのは、 intel sandylakeとAMD ryzen 3700x と使い分けろ という意味ではなく 32bit対応CPUintel pentiumと64bit対応CPUintel sandylake とで使い分けろという意味ですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • sknbsknb2
  • ベストアンサー率38% (1158/3037)
回答No.2

CPUというのは、Intel製とかAMD製とかのメジャーなものばかりではなく、沢山の種類があります。 例えば、AppleはIntelのCPU採用をやめて独自開発のM1を使用するようになりました。また、SPARKとかPOWER PCとかMIPSとかのCPUもあり、さらにスマホや組み込み向けCPUにも独自のものが使われています。 通常これらのCPUの命令セットは互いに異なっているので、当然、機械語は異なるものになります。あなたの読まれた記事は、それを解説していたのだと思います。 あなたの言うように32bit CPUと64bit CPUでも機械語は異なりますが、本質的な違いではないので、解説記事の趣旨とは違うと思います。

okwaveokw
質問者

お礼

ありがとうございます

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • Kaneyan-R
  • ベストアンサー率42% (1376/3207)
回答No.3

32bitと64bitで違うのもありますが、もっと根本的に、CPUの作りが違うものがいくらでもあるのです。 PCに使われる「X86/x64系」やスマホ/タブレットの「ARM系」の他にも、サーバやルーター、ネットワーク機器に搭載されているもの、車のECUに搭載されているもの、冷蔵庫や電子レンジなど家電品に搭載されているもの等々、様々なタイプのCPUがありとあらゆるものに搭載されています。 それらのCPUは動作する信号系統が異なるので、それに合わせたOSでなければ動作しないのです。 例えばLinux。 ディストリビューションのダウンロードページに行けば、Windows PC用、Mac用など、いくつかのパッケージに別れているはずです。これはそれぞれのPCで使用されているCPUの命令系統が異なるので、それに合わせてシステムがカスタマイズされているのです。

okwaveokw
質問者

お礼

ありがとうございます

すると、全ての回答が全文表示されます。
  • FattyBear
  • ベストアンサー率33% (1614/4854)
回答No.1

CPUによりプログラムする機械語の意味は異なります。伝えるデーター や命令は16進数ですが数字の示す意味はCPUにより異なります。 例えばローマ字表記で日本語をアルファベットで表記できますが 英語としては理解できないアルファベットの並びに成ります。

okwaveokw
質問者

お礼

ありがとうございます

すると、全ての回答が全文表示されます。

関連するQ&A