keil报内存不够的原因,Code,RO_data,RW_data,ZI_data
链接:https://blog.csdn.net/ylzmm/article/details/79233560
1
GD32F130F6P6
Program Size: Code=6100 RO-data=492 RW-data=152 ZI-data=3944
3944+152=4096
2
- Code:代码段,存放程序的代码部分;
- RO-data:只读数据段,存放程序中定义的常量,如const类型的数据(Read_only);
- RW-data:读写数据段,存放初始化为非 0 值的全局变量(Read_Write);
- ZI-data:0 数据段,存放未初始化的全局变量及初始化为 0 的变量(Zero Initialize); (ZI-data不会被算做代码里因为不会被初始化,编译器会默认把没有赋值的变量自动赋值为0)
3下面对几个数值的关系进行说明
ROM size: 也就是下载到单片机FLASH中的数据为 Code +RO-data +RW-data 和的大小。
为什么不把ZI-data 也下载进去呢? 其实是没有必要的,这是浪费空间,只要程序一上电运
行就会把ZI-data 自动清0。
RAM size: 程序运行时,芯片内部RAM所需要的空间大小为 RW-data+ ZI-data