对于初学者而言,对单片机的内存分配往往最让人头疼,很多人学了单片机几年 都不知道单片机内部的内存使用情况是如何分配的。要了解 ROM、RAM启动,首先 需要对 链接器 Linker 如何分配内存有一定的了解。
通常,对于栈生长方向向下的单片机,其内存一般模型是:
一个进程运行时,所占用的内存,可以分为如下几个部分:
1、栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量的值等。
2、堆区(heap):一般由程序员分配释放,若程序员不释放,程序结束时可能由OS释放。
3、全局变量、静态变量:初始化的全局变量和静态变量放在一块区域,未初始化的全局变量和和未初始化的静态变量在相邻的的另一块区域。程序结束后由系统自动释放。
4、文字常量:常量字符串就是存放在这里的,程序结束后由系统释放。
5、程序代码:存放函数体的二进制代码。
文章来源于:电子工程世界 原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关文章
单片机不配叫嵌入式吗?嵌入式和单片机有啥关系?(2023-04-06)
机,出于成本的考虑,有时候只能继续沿用51单片机的技术进行升级。
而且,很多老一辈的工程师,都精通51单片机开发技术。
所以,51单片机的生命力得以不断延续。
02
什么是嵌入式?
嵌入式系统是一种专用的计算机系统......
基于LabView的频率稳定度测量原理和应用设计(2023-06-09)
,因此它属于虚拟仪器的范畴。虚拟仪器系统是基于计算机的数字化测量测试仪器,它由计算机、应用软件和仪器硬件三部分组成。虚拟仪器可使用相同的硬件系统,通过......
基于CY7C68013与GPIF模式的USB2.0数据传输系统的设计(2024-02-27)
基于CY7C68013与GPIF模式的USB2.0数据传输系统的设计;1 引 言
USB支持主计算机与许多可同时访问的外设之间进行数据交换,使外设的连接具有单一化、即插即用、热插拔等特点,已成为个人笔记本电脑和台式机的......
基于Linux的S3C2410串行通信设计(2023-01-05)
控制箱在通过$3C24lO的存储器中读取这些数据,并发出命令使电动位移平台按需要的改变量进行移动,这样就是实现了一个简单的嵌入式系统。计算机(宿主机)、目标机(S3C2410)还有控制箱之间连接的硬件......
嵌入式设备逐渐成为每个人日常生活的重要组成部分(2023-01-03)
是用于控制、监督或者辅助操作机器和设备的装置,是一种专用的计算机系统;国内普遍认同的嵌入式系统定义是以应用为中心,以计算机技术为根底,软硬件可裁剪,适应应用系统对功能、可靠性、老本、体积、功耗等严格要求的专用计算机系统......
在linux环境下搭建嵌入式开发平台(2024-07-26)
以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。一般的嵌入式系统......
硬件工程师和软件工程师哪个更有前途?(2024-10-27 23:00:17)
结构和算法等基础知识,以及编程语言、数据库和操作系统等技能。而硬件工程师则是负责设计、开发和维护硬件系统的专业人员。他们需要掌握电子技术、机械设计和计算机硬件知识,以及编程语言和硬件......
电动助力转向系统(EPS)数据采集的实现方法(2024-08-19)
设计和软件设计两个方面。
(一)硬件设计
EPS数据采集的硬件系统主要由计算机、A/D转换板、数字量信号输入/输出板、传感器以及信号处理装置等组成。这些硬件设备协同工作,完成数据的采集、转换和处理。
传感器:传感......
为什么说嵌入式开发比单片机难?说的太对了(2023-01-13)
,其实仔细想想也能明白,都已经跑系统了,当然有软件也有bsp硬件啦。也就是说嵌入式系统是软硬件结合体,国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统......
嵌入式硬件工程师的职业发展状态(2024-10-06 11:55:33)
能搭上将近一周时间才能把电路调试好。这么下来,做一个小系统甚至用上大半个月的时间。在这种环境下,硬件工程师的价值在于他们的信息积累,充足调试经验能帮助系统定义......