单片机的内存分配(变量的存储位置)详解

对于初学者而言,对单片机的内存分配每每最让人头疼,不少人学了单片机几年 都不知道单片机内部的内存使用状况是如何分配的。要了解 ROM、RAM启动,首先 须要对 连接器 Linker 如何分配内存有必定的了解。html

一般,对于栈生长方向向下的单片机,其内存通常模型是: 在这里插入图片描述
在这里插入图片描述
一个进程运行时,所占用的内存,能够分为以下几个部分:
一、栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等。
二、堆区(heap):通常由程序员分配释放,若程序员不释放,程序结束时可能由OS释放。
三、全局变量、静态变量:初始化的全局变量和静态变量放在一块区域,未初始化的全局变量和和未初始化的静态变量在相邻的的另外一块区域。程序结束后由系统自动释放。
四、文字常量:常量字符串就是存放在这里的,程序结束后由系统释放。
五、程序代码:存放函数体的二进制代码。程序员

原文出处http://blog.chinaunix.net/uid-15473693-id-388637.html函数

 

---------------------
做者:Z小旋
CSDN原文:https://blog.csdn.net/as480133937/article/details/87608816ui

相关文章
相关标签/搜索