LEA
- 格式:
LEA 通用寄存器 内存地址
- 功能:取地址命令
将内存地址赋值给寄存器
lea eax,dword ptr ds:[ecx+0x16]
- dword 双字 就是四个字节
- ptr pointer缩写 即指针
- ds 数据段版寄存器
- []里的数据是一个地址值,这个地址指向一个双字型数据
将dword ptr ds:[ecx+0x16]
的地址赋值给eax,我们要与mov
指令区分开,如果将lea改成mov,就是将ecx+0x16
这个代表的地址里面的值赋值给eax
ecx此时的值如下:
执行完指令,eax的值为00402016,00402016是一个地址
XCHG
交换命令
xchg 操作数1,操作数2
操作数1可以是寄存器也可以是内存地址
操作数2必须是寄存器
功能:交换内存的值或者寄存器的值
xchg dword ptr ds:[0x402000],ebx
ebx和0x402000的内容互相交换