【发布时间】:2015-07-17 09:18:17
【问题描述】:
我知道以下代码:
MOV AL, 8 ;
会将值 8(十进制)放入 EAX 的最低字节。但是,如果 EAX 里面已经存储了十进制值 1,会发生什么,它会覆盖它吗?
所以...
XOR EAX, EAX ;
INC EAX ;
MOV AL, 8 ;
EAX 现在是否只包含十进制 8?
【问题讨论】:
标签: assembly x86 cpu-registers
我知道以下代码:
MOV AL, 8 ;
会将值 8(十进制)放入 EAX 的最低字节。但是,如果 EAX 里面已经存储了十进制值 1,会发生什么,它会覆盖它吗?
所以...
XOR EAX, EAX ;
INC EAX ;
MOV AL, 8 ;
EAX 现在是否只包含十进制 8?
【问题讨论】:
标签: assembly x86 cpu-registers
当 EAX 包含 1 时,高字节包含 0 和 AL 1 - 这是 32 位整数中的数字表示。在 AL 中移动 8 时,EAX 仍然有其他三个字节为 0,整个整数现在为 8。
【讨论】:
是的,它复制目标操作数并将其替换为源操作数,源操作数不变。
【讨论】: