汇编语言 CS与IP
在讲CS与IP寄存器的时候,动画显示mov AX,0123H占用三字节 而 mov AX,BX占用两字节是怎么回事?(找了一下没找到,或是看不懂,谁可以帮我一下!感激不尽)
本帖最后由 漩涡鸣人 于 2014-9-12 18:20 编辑
从8086指令编码而言,
intel编码中mov AX,0123H的二进制码:
B8 2301
操作数有一个2字节立即数,B8长度一个字节指明操作模式是(mov ax, 立即数)
所以就三字节了
mov ax,bx这种除了指明操作模式的1字节外,直接用另一个字节表明是这两个寄存器,
所以是二字节
说实话立即数比较占地方,指明一个通用寄存器只需要3个二进制位,而立即数最短也要8位
初学汇编不用看得太细,机器码的长度影响不到一般的汇编编程 漩涡鸣人 发表于 2014-9-12 18:12
从8086指令编码而言,
intel编码中mov AX,0123H的二进制码:
B8 2301
谢谢你的回答,基本明白了。 我也开始学了2014-9-16日开始 学
页:
[1]