アセンブリ言語命令はプロセッサに固有のものです システムで使用されています。例えば、 インテルのアセンブリ言語を実行することはできません PowerPCプロセッサ
私はこれを理解することができません。
これを考慮してください:フランス語で書かれた本はフランス語を理解している人だけが読むことができます。オランダ語しか話さない人は読むことができません。
—
Hennes
異なるアセンブリ言語、異なる命令、まったく異なるアーキテクチャ
—
Ramhound
クロスアセンブラのようなものはありませんか?ええと…もちろんあります。
—
Jamie Hanrahan
@JamieHanrahan - はい、もちろんコンパイラとアセンブラがありますが、あるプロセッサのアーキテクチャで使用されている実際の16進数と他社の互換性のないプロセッサとを比較すると、実際の関数のコードは異なる場合があります。それゆえ、あなたは直接ファイルにコードを書くことができず、それが他のものと全く同じであることを意味すると期待することができます - 非ファミリープロセッサライン。それが、私たちがそれらを「命令セット」と呼ぶ理由です。x86、mmx、mmx2などは、「Intel」プロセッサのための一般に知られているものです、
—
TG2
私はそれをすべて知っています。問題は、「1つのプロセッサのアーキテクチャで実際に使用される16進数」についてではありません。問題は「インテルのアセンブリ言語で書かれたプログラム」です。そのため、インテルのアセンブリ言語で書かれたプログラムは、インテルのプロセッサ上でも動作しません。組み立てる必要があります。そしてクロスアセンブラがあります。 PowerPCマシンコードをIntelアセンブリ言語から生成することは完全に可能です(ただし、Intelのセグメンテーションの実装のような特定の詳細は、一方から他方へ直接マッピングされません)。 「最良の答え」は、この区別を明確にするはずです。
—
Jamie Hanrahan