您现在的位置:主页 > bet36体育在线直播 > 正文内容

什么是堆栈框架?

作者:亚洲365bet投注 来源:大陆365bet网址 更新日期:2019-11-14 浏览次数:
叠框
那么第一个问题是,什么是堆栈?
在数据结构中,堆栈是线性表,仅在表末尾定义插入或删除操作。
堆栈是一种数据结构,以先进先出的方式存储数据。第一个输入数据插入堆栈的底部。最终数据位于堆栈的顶部。当需要读取数据时,将从堆栈顶部提取数据。
在计算机系统中,堆栈也称为堆栈存储器。这是一个动态存储区。存储函数(包括主函数)中对局部变量和方法以及函数参数值的调用由系统自动分配,并且通常很快速。发生溢出。程序可以将数据插入堆栈或从堆栈顶部提取数据。
推动操作会增加电池电量,弹出操作会减少电池电量。
堆栈用于维护函数调用的上下文,没有堆栈函数调用就无法实现堆栈。
什么是堆栈框架?
每次调用函数时,都会在调用堆栈上保留一个单独的堆栈框架。
各个堆栈帧通常包括以下内容:
地址返回功能和参数
临时变量:非静态局部变量,包括由编译器自动生成的函数和其他临时变量
函数调用上下文。
电池电量从高到低。功能堆栈帧使用两个ebp和esp寄存器来定义范围。
Ebp指当前电池框架的底部,而esp始终指电池框架的顶部。/ br
ebp寄存器也称为帧指针。/ br
esp寄存器也称为堆栈指针(StackPointer)。