Program Size 查看代码量、RAM使用情况--RO-data、RW-data、ZI-data的解释

本文介绍了在Keil环境下编译STM32程序时,Build Output显示的Code、RO-data、RW-data和ZI-data的含义。Code代表代码占用的FLASH空间,RO-data为只读常量,RW-data是已初始化的可读写变量,而ZI-data是未初始化的可读写变量,不计入代码大小,运行时占用RAM。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、现象

刚在写STM32的程序,在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息:


Build target 'TEST'
compiling gpio.c...
..\..\User\Sourse\gpio.c(44): warning:  #1-D: last line of file ends without a newline
linking...
Program Size: Code=21120 RO-data=476 RW-data=2744 ZI-data=2232  
FromELF: creating hex file...

"..\Obj\TEST.axf" - 0 Error(s), 1 Warning(s).

二、解释

Code是代码占用的空间,RO-data是 Read Only 只读常量的大小,如const型,RW-data是(Read Write) 初始化了的可读写变量的大小,ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化。
 
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code+RO Data+RW Data
程序运行的时候,芯片内部RAM使用的空间为: RW Data + ZI Data

三、代表的意思

Code
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值