【发布时间】:2015-06-29 16:11:40
【问题描述】:
据说“离开”指令类似于:
movl %ebp, %esp
popl %ebp
我了解movl %ebp, %esp 部分,它的作用是释放存储的内存(如this question 中所述)。
但是popl %ebp 代码的目的是什么?
【问题讨论】:
-
弹出
ebp。 -
我投票决定关闭它,因为它混淆了所问的内容。您专门询问
pop %ebp,这在LEAVE之外具有意义,这使得这个问题变得非常复杂。你在LEAVE上的问题也是一个明确的骗局。所以我们需要知道这里的问题到底是什么,并保持其原子性。 -
有趣的是,这几乎是对这个问题的直接欺骗*.com/questions/41907672/…
-
仅供参考:
movl %ebp, %esp是 AT&T 语法,表示 esp=ebp。movl %esp, %ebp将是 Intel 语法等价物。