bro*_*s94 5 assembly x86-64 machine-language
使用amd64汇编,最好的方法是将64位寄存器的前32位清零,例如将未覆盖的rax位清零?似乎我不能和整个寄存器对64位常数.
Bre*_*ale 11
movl %eax, %eax或者mov eax, eax,取决于使用中的汇编程序.
movl %eax, %eax
mov eax, eax
请参阅:英特尔®64和IA-32架构 - 软件开发人员手册,第1卷,3.4.1.1:64位模式下的通用寄存器.
32位操作数生成32位结果,在目标通用寄存器中零扩展为64位结果.
关于@ HansPassant的评论,我还应补充一点:7.3.1.7:
MOVSXD指令对64位数据进行操作.它将32位值符号扩展为64位.
归档时间:
12 年,1 月 前
查看次数:
1185 次
最近记录: