摘要: 首先我们必须知道: 一个函数调用另外一个函数是将数据(过程参数和返回值)和控制从代码的一部分传递到另外一部分。包括为被调用的函数的局部变量分配内存空间并在退出时释放这些空间。其中,数据的传递,局部变量的分配和释放是通过操纵程序栈来实现的。 程序栈都是存放在内存的某个区域,而且栈都是向下增长的,所以,栈顶的元素的地址是所有栈中元素地址中最低的。寄存器ebp(base pointer )可称为“帧指针”或“基址指针”,其实语意是相同的。寄存器esp(stack pointer)可称为“ 栈指针”。帧指针%ebp 在未受改变之前始终指向栈帧的开始,也就是栈底,所以%ebp的用途是在堆栈中寻址用的.. 阅读全文
posted @ 2013-09-05 03:49 DanielYE.fr 阅读(1169) 评论(0) 推荐(0)