数据传输指令的形式
指令 | 效果 | 描述 |
---|---|---|
mov S, D | D ← S | 传送 |
movb | 传送字节 | |
movw | 传送字 | |
movl | 传送双字 | |
movq | 传送四字 | |
movabsq I, R | D ← S | 传送绝对的四字 |
需要注意的点
- 传送指令的两操作数不可均为内存位置。
- movl在以寄存器作为目的时,会把寄存器的高位设为0
例子:分别执行movabsq $0xABCDEF0123456789, %r8
和movl $0xFFFFFFFF, %r8d
,此时%r8
寄存器的值为00000000FFFFFFFF
- movq仅可以操作32位补码的立即数,而movabsq仅可以以寄存器为目的地
符号扩展/零扩展
零扩展
指令 | 效果 | 描述 |
---|---|---|
movz S, R | R ← (零扩展)S | 以零扩展进行传送 |