繁体   English   中英

lea 0x4(%esp),%ecx 在 AT&T 语法中是什么意思?

[英]What does lea 0x4(%esp),%ecx mean in AT&T syntax?

lea 0x4(%esp),%ecx在 at&t 汇编中是什么意思?

0x4(%esp)到底是什么?

它是%esp + 0x4

LEA代表加载有效地址。 在这种情况下,它是一个简单的添加,如上所示。 通常人们和编译器不再真正使用它,因为 CPU 现在带有一个漂亮的地址生成单元(也称为 AGU),它允许您使用各种花哨的算术从寄存器和值计算地址。 简而言之,无论您对lea做了什么,现在都可以将其嵌入到任何其他指令中。

lea ecx,[esp+4]

esp是堆栈指针。 0x4 是偏移量。 AT&T 语法具有command source, destination ,这里的命令是LEA ,即“加载有效地址”。

所以我们告诉 CPU 将地址“堆栈指针 + 4”加载到寄存器“ecx”中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM