LEA指令 - 如何转换为C语言?

时间:2014-06-05 23:33:58

标签: assembly x86

我尝试用C语言转换一些程序集。我知道LEA指令将地址存储到指定的寄存器中。

例如:

LEA EAX, DWORD PTR SS:[EBP - 0x8] 

在堆栈地址[EBP - 0x8]中,我的值为00000003D(ollydbg显示它)。 如果我假设eax是指针并将00000003D视为61(十进制),那么我尝试以下操作:

int value = 61;

int *eax = &value
你同意吗?是否?如果没有,为什么?

1 个答案:

答案 0 :(得分:3)

LEA指令计算一个地址,在这种情况下是一个指向局部变量的指针,所以你写的内容非常接近。