MDK for ARM (keil) 编译后的信息
文章转自http://blog.csdn.net/gasbi/article/details/6186312
当我们使用Keil对我们的代码进行编译之后,下方Build Output窗口会出现:
Program Size: Code=49220 RO-data=7060 RW-data=264 ZI-data=4584
Code :是代码占用的空间大小
RO-data :是 Read Only ,只读常量的大小(如const型)
RW-data:是 Read Write ,已初始化了的或者初始化的值为非0的可读写变量的大小
ZI-data :是 Zero Initialize ,没有初始化的或者初始化值为0的可读写变量的大小
如果一个变量被初始化为0,则该变量的处理方法与未初始化华变量一样放在ZI区域。
并且ARM C程序中,所有的未初始化变量都会被自动初始化为0。
总之,在烧写代码的时候:
FLASH: Code + RO-data + RW-data
在运行的时候:
RAM: RW-data + ZI-data
(这里没有包含堆栈空间~)