当前位置: 代码迷 >> 汇编语言 >> 请问一个汇编语言入门示例图
  详细解决方案

请问一个汇编语言入门示例图

热度:3314   发布时间:2013-02-26 00:00:00.0
请教一个汇编语言入门示例图
问题一:

B8 20000
23 20001
01 20002 //mov ax,0123H

这里 B8=mov, 23=23H, 01=01H

为啥不是

B8
01
23

问题二:
BB 20003
03 20004
00 20005 //mov bx,0003H
89 20006
D8 20007 //mov ax,bx

这里 mov 怎么又变成 BB 和 89 了







------解决方案--------------------------------------------------------
B8 23 01 mov ax, 0123h 为什么不是 B8 01 23,这是因为 x86 体系的 cpu 是所谓的“小端”型的,即一个多字节类型数据在内存中组织时,LSB 最小端在前,MSB 最大端在后。

第二个问题,mov 指令,针对不同的操作数类型,操作码是不一样的。不是指令的首个字节就一定是单独的操作码。仔细看看 mov 指令的说明和编码规则就知道了。
------解决方案--------------------------------------------------------
寄存器不同啊大哥
------解决方案--------------------------------------------------------
探讨mov ax,0123H 和 mov bx,0003H 是同类型的操作,为啥 mov 翻译过去还是不一样呢?
  相关解决方案