- 13
- 0
- 约5.08千字
- 约 7页
- 2017-06-24 发布于湖北
- 举报
函数调用 堆栈最近在学习嵌入式系统移植时,一直有一个相关概念就是堆栈。很多资料都说堆栈是c语言里函数调用的基础。具体,堆栈在c语言里和在系统里有哪些具体的作用。我在网上和书上查了一下资料,现在总结一下,以供大家参考。我们一般说堆栈的时候都强调堆栈是函数调用时把被调用的函数所需参数压入栈中,以实现函数的调用。但是,函数调用具体是怎么实现的,我们一般不讲。现在总结一下堆栈的具体作用:1,传递参数(为被调用函数提供参数)2,保存局部变量3,保存中间变量4,在系统中用堆栈保存任务的状态(例如各个寄存器的值)堆栈有后进先出的特性,所以能帮我们做很多事情。一会我们通过实例分析时你就会有感触。下面先说一下看下面的具体事例分析时所需要的基础知识:1.什么是堆栈????? 编译器一般使用堆栈实现函数调用。堆栈是存储器的一个区域,嵌入式环境有时需要程序员自己定义一个数组作为堆栈。Windows为每个线程自动维护一个堆栈,堆栈的大小可以设置。编译器使用堆栈来堆放每个函数的参数、局部变量等信息。????? 函数调用经常是嵌套的,在同一时刻,堆栈中会有多个函数的信息,每个函数占用一个连续的区域。一个函数占用的区域被称作帧(frame)。【每个函数都占有一个帧区。就是为了区分开这个函数的框架,一会我们分析具体实例时,我们就会有体会了】????? 编译器是从高地址开始使用堆栈。?????? 在多线程(任务)环境
您可能关注的文档
最近下载
- Multisim14.0简介说明介绍.docx VIP
- 中频炉熔炼操作工工艺操作规程.docx
- 食材配送项目投标方案.docx VIP
- Unit 1 Amazing landmarks第1课时 Part A Let’s talk&Interview and report (教学评教学设计) 英语人教PEP版六年级上册2026新.pdf VIP
- T∕CABEE 052-2023 墙面原位加固修复技术规程.docx
- 2023版物理中考复习00-第十四章 欧姆定律 电功率 教师专享.pptx VIP
- 2026年南京市中考化学试题(含答案及解析).docx
- 朗文3B1-4单元课堂笔记.pptx VIP
- 老年听力康复的家庭与社区支持.pptx VIP
- 2026年广东省学法考试年度考试考场三满分答案.doc VIP
原创力文档

文档评论(0)