0

機械語とアセンブリ言語プログラミングの関係は?

4

3 に答える 3

4

アセンブリ言語は、人間が機械語を簡単に記述できるようにするために発明されました。

アセンブリ言語:

MOV AX,1

機械語:

B8 01 00    ; B8 = copy two bytes into AX   0001 = value to copy

アセンブリ言語が隠れていることに注意してください0100-0001このプロセッサは「リトルエンディアン」です

重要な違いは、アセンブリ言語がラベルを提供することです:

JMP next_thing

機械語:

EB FC         ; EB = jump, FC = current address - 4 bytes

組み立てる前に、手動でジャンプ オフセットを計算する必要がありました。

于 2010-08-23T21:46:40.863 に答える
1

どちらも実装固有であり、プロセッサへの個々の命令を処理しますが、マシンコードはわずかにレベルが低く、人間のプログラマーには一連の数値として表され、ほとんどの場合純粋なバイナリで表されます。

一方、アセンブリは、純粋なバイナリではなく、シンボリックに記述されます。人間のプログラマーが読み取ってマシン コード バイナリに変換できるように設計されていますが、個々の命令でも機能します。

ウィキペディアはそれをうまくまとめています:

アセンブリ言語と呼ばれる機械語のより読みやすい表現では、単純に命令の数値を使用するのではなく、ニーモニック コードを使用して機械語命令を参照します。たとえば、Zilog Z80 プロセッサでは、CPU に B プロセッサ レジスタをデクリメントさせるマシン コード 00000101 は、アセンブリ言語で DEC B として表されます。

于 2010-08-23T21:46:13.643 に答える
0

アセンブリ言語は、人間が読める機械語の表現です。

于 2010-08-23T21:47:03.033 に答える