STM32八股【3】------RAM和片上FLASH

1、RAM和FLASH构成

1.RAM

┌──────────────────────────┐  
│       栈区 (Stack)        │ ← 从RAM顶端向下扩展(存储局部变量、函数调用信息)
│--------------------------│  
│       堆区 (Heap)         │ ← 从.bss段底部向上扩展(动态分配的内存,如malloc)
│--------------------------│  
│      .bss 未初始化数据区   │ ← 未初始化的全局变量、静态变量(启动时清零)
│--------------------------│  
│      .data 已初始化数据区  │ ← 已初始化的全局变量、静态变量(从Flash加载初始值)
│--------------------------│  
│      .rodata 常量区       │ ← **可能不存在**(通常.rodata保留在Flash,除非优化需要)
│--------------------------│  
│      .text 代码区         │ ← **仅当代码需加速时存在**(如从Flash复制到RAM执行)
└──────────────────────────┘

2.FLASH

┌──────────────────────────┐  
│        中断向量表          │ ← 系统启动代码(如复位向量)
│--------------------------│  
│      .text 代码区         │ ← 程序代码(函数、指令)
│--------------------------│  
│      .rodata 常量区       │ ← 只读数据(常量、字符串)
│--------------------------│  
│      .data 初始值         │ ← 已初始化变量的初始值(运行时复制到RAM的.data区)
│--------------------------│  
│      .bss 信息            │ ← **不占空间**,仅记录.bss段大小(用于启动时清零RAM)
│--------------------------│  
│      其他自定义只读数据     │ ← 配置参数、字体、固件资源等
└──────────────────────────┘
=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值