十六进制数是什么,括号中的寄存器在汇编中是什么意思?

时间:2015-07-30 23:47:32

标签: linux assembly disassembly

lea 0x1c(%ebp),%eax

所以,我模糊地理解lea指令的作用,我知道这些是寄存器,但这个结构是什么:0x1c(%ebp)?我从objdump中得到了这段代码。

1 个答案:

答案 0 :(得分:3)

它是众多x86 addressing modes中的一个。具体来说,这被称为"置换"寻址。

既然你说过你使用了objdump并且没有指定你使用了-M标志,那么我将在GAS syntax中假设这一点(而不是{{3} }})。这意味着第一个操作数是源,第二个操作数是目标。

lea 0x1C(%ebp),%eax指令表示"取%ebp中的值,添加0x1C(十进制28),然后将该值存储在%eax"。