- 3
- 0
- 约2.46千字
- 约 23页
- 2022-01-25 发布于湖南
- 举报
堆栈 从物理上讲,堆栈是就是一段连续分配的内存空间 静态全局变量是位于数据段并且在程序开始运行的时候被加载 动态的局部变量 则分配在堆栈里面 从操作上来讲,堆栈是一个先入后出的队列,其生长方向与内存的生长方向正好相反 * 规定内存的生长方向为向上,则栈的生长方向为向下,压栈的操作push=ESP-4 ,出栈的操作是pop=ESP+4 在Win32系统中,ESP是堆栈指针寄存器,它指向当前堆栈储存区域的顶部。 EBP是基址寄存器,它指向当前堆栈储存区的底部。当要在堆栈中进行搜索时,常常需要它作用一个静态参考点。 除此之外,EIP是指令指针,它指向下一条将要被执行的指令。 * 在一次函数调用中,堆栈中将被依次压入: 参数,返回地址,EBP 如果函数有局部变量,接下来,就在堆栈中开辟相应的空间以构造变量 函数执行结束,这些局部变量的内容将被丢失。但是不被清除 在函数返回的时候,弹出EBP,恢复堆栈到函数调用的地址,弹出返回地址到EIP以继续执行程序 * /* function_call.c 考察堆栈在函数调用中的变化 */ void fun(int); int main(void) { …… fun(1); …… return 0; } void fun(int para) { char buffer_a[8]; char buffer_b[8]; …… } 动作
您可能关注的文档
- C++程序设计教程(第2版)课件 ch5函数.ppt
- C++程序设计教程(第2版)课件 ch6指针.ppt
- C++程序设计教程(第2版)课件 ch7函数与指针.ppt
- C++程序设计教程(第2版)课件 ch8结构化设计方法.ppt
- C++程序设计教程(第2版)课件 ch9类和对象(一).ppt
- C++程序设计教程(第2版)课件 ch10类和对象(二).ppt
- C++程序设计教程(第2版)课件 ch11继承和派生.ppt
- C++程序设计教程(第2版)课件 ch12多态性.ppt
- C++程序设计教程(第2版)课件 ch13模板与异常处理.ppt
- C++程序设计教程(第2版)课件 ch14标准库和输入输出流.ppt
- 4.4 控制系统的设计与实施(教学设计)高中通用技术苏教版2019必修2.docx
- 2026届衡水市第十三中学高三第一次质量调研(一模)数学试题.doc
- 3.1.1关系数据结构及关系代数教学设计-浙教版高中信息技术选修三.docx
- 高考化学二轮复习 阿伏伽德罗常数.docx
- 运筹学期末复习完全手册(直接使用版).docx
- 人工肝治疗中的家属支持与护理.pptx
- 人工肝治疗后的康复护理.pptx
- 4 自由落体运动(表格式教学设计)高中物理人教版2019必修第一册.docx
- 第05讲 充分条件、必要条件、充要条件(八大题型)新高一数学(苏教版2019必修第一册).docx
- 29 古代诗歌文本比较鉴赏题(比较形象、语言、表达技巧、情感态度)高考语文二轮复习专题.docx
最近下载
- 2026年贵阳市白云区社区工作者招聘考试模拟试题及答案解析.docx VIP
- 富迪斯通FTD360S说明书.pdf
- T CACM 1560.9—2023 中医养生保健服务(非医疗)技术操作规范 足浴.pdf VIP
- T_CACM 1560.8—2023(中医养生保健服务(非医疗)技术操作规范中药药浴).pdf VIP
- 人造板工艺学实验报告书.pdf VIP
- 医疗机构消毒技术规范.pdf VIP
- 锂渣在水泥和混凝土领域应用技术攻关.docx VIP
- SL176-2025《水利水电工程施工质量检验与评定规程》.docx VIP
- 中学生诗词大赛考试题库350题(含答案).docx VIP
- 《集成电路设计原理》试卷及答案.docx VIP
原创力文档

文档评论(0)