Lea 指令

来源:互联网 发布:ie8 json未定义 编辑:程序博客网 时间:2024/04/27 19:34

假设 eax=1
LEA eax [eax+eax*4] 结果为什么是 eax=5呢?

[eax+eax*4] 为直接寻址方式,操作数的地址有DS加上指令中给出的偏移得到。在这里,偏移为:eax+eax*4;

LEA指令的功能是将源操作数、即存储单元的有效地址(偏移地址)传送到目的操作数。

在这里就相当于将偏移值:eax+eax*4赋给eax了。如果用mv,那就是将ds:(eax+eax*4)=ds+5 处的值给eax。