首先,我们先来了解下栈帧和栈的基本知识: 栈帧也常被称为“活动记录”(activation record),是编译器用来实现过程/函数调用的一种数据结构. 从逻辑上讲,栈帧就是一个函数执行的环境,包含所有与函数调用相关的数据:主要包括函数参数.函数中的局部变量.函数执行完后的返回地址,被函数修改的需要恢复的任何寄存器的副本. 另外,需要注意的是:栈是从高地址向低地址延伸的.每个函数的每次调用,都有它自己独立的一个栈帧,这个栈帧中维持着所需要的各种信息.寄存器ebp用来指向当前的栈帧的底部(高地址…