ebp寄存器的值总是8的倍数?

时间:2016-12-24 16:24:05

标签: gcc reverse-engineering disassembly

我是逆向工程的新手。每当我反编译程序时,我总是发现ebp寄存器的值是 8的倍数。

  

ebp的值是否总是 8的多个或只是我的观察?

1 个答案:

答案 0 :(得分:3)

出于性能原因,现代x64调用约定要求堆栈对齐到16个字节。 https://msdn.microsoft.com/en-us/library/ms235286.aspx https://en.wikipedia.org/wiki/X86_calling_conventions

GCC的x86调用约定也是如此。

我可以认为这与ebp相关,而不仅仅是esp