- 1
- 2
- 3
- 4
- 5
固件常量变量内存分配.docx
资料介绍
固件里的"常量"和"变量":编译器怎么分配它们
一、常量和变量占不同的内存
固件里"常量"(不变的值)和"变量"(会变的值),编译器分配的位置不同:常量通常放Flash(只读区),变量放RAM(可读写区)。理解编译器怎么分配,才能合理规划内存(RAM紧张时把常量放Flash省RAM)。
很多人没想过常量和变量放哪的区别,结果大常量数组占了RAM(本可以放Flash),RAM不够用。
二、常量的分配
1. 字面量(写死的值):编译时编进代码,放Flash(不占RAM)
2. const变量:编译器通常放Flash只读区(不占RAM),但某些情况(取地址、编译器选择)可能放RAM
3. const数组/表:放Flash只读区(不占RAM)
所以常量默认放Flash(不占RAM),除非编译器优化选择或你强制。
三、变量的分配
1. 全局/静态变量:放RAM的静态区(一直占RAM)
2. 局部变量:放栈(RAM)或寄存器(速度快但数量有限)
3. 动态内存(malloc):放堆(RAM)
所以变量占RAM(全局一直占、局部占栈)。
部分文件列表
| 文件名 | 大小 |
| 固件常量变量内存分配.docx | 37K |
最新上传
-
yahuang001 打赏3.00元 3天前
-
yahuang001 打赏1.00元 3天前
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前




全部评论(0)