天天看點

Lea 指令

假設 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。