Code:程序代码,存储在rom中; RO-data:只读数据,存储在rom中; RW-data:可读可写数据,既存储在ram中,也存储在rom中(RW-data已初始化的数据会存储在rom中,上电会从rom搬移至ram中); ZI-data:Zero Initialize,未初始化的数据,上电后在ram中划分一个区域统一存储,MDK会给默认赋值为0。 2、Code、RO-data、RW...
ZI-data:可读写数据区域,一定是未初始化或初始化为“0值”的可读写数据,应用程序同样可以修改其内容,这些数据被存储在RAM区ZI-data区典型:例1、C语言中定义的数组,只定义了数组的大小,并没有给每个成员赋非0值。 以下数据节选于程序的.map文件结尾。 Code (inc. data) RO Data RW Data ZI Data Debug 26...
RW-data是可读写数据区域。这部分数据一定是初始化为非0值的可读写数据,程序可以修改其内容。例如,C语言中定义的全局变量且初始化为非0值,或者静态变量也属于此类。ZI-data同样为可读写数据区域,但数据一定是未初始化或初始化为0值。同样,程序可以修改其内容。如C语言中定义的数组,只定义了数组的...
ZI-data是(Zero Initialize) 没有初始化的可读写变量的大小。ZI-data不会被算做代码里因为不会被初始化; 简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code + RO Data + RW Data 程序运行的时候,芯片内部RAM使用的空间为: RW Data + ZI Data ARM程序(指在ARM系统中正在执行的程序,而非保存在ROM...
简单的说就是在烧写的时候是FLASH中的被占用的空间为:Code +RO Data +RW Data 程序运行的时候,芯片内部RAM使用的空间为:RW Data +ZI Data 、、、 源:ARM编译中的RO、RW和ZI DATA区段 ARM程序(指在ARM系统中正在执行的程序,而非保存在ROM中的bin文件)的组成 一个ARM程序包含3部分:RO段,RW段...
程序执行时的可读写区域(RW)(SRAM) :RW data + ZI data 首先来解释哈各表示什么含义 Code:即代码域,它指的是编译器生成的机器指令,这些内容被存储到ROM 区(也就是STM32 的内部 Flash 中) RO-data:Read Only data,即只读数据域,它指程序中用到的只读数...
Total RO Size (Code + RO Data) Total RW Size (RW Data + ZI Data) Total ROM Size (Code + RO Data + RW Data) 堆栈的认知 1. STM32中的堆栈。 单片机是一种集成电路芯片,集成CPU、RAM、ROM、多种I/O口和中断系统、定时器/计数器等功能。CPU中包括了各种总线电路,计算电路,逻辑电路,还有各种寄...
Code, RO-data,RW-data,ZI-data Code为程序代码部分 RO-data 表⽰程序定义的常量const temp;RW-data 表⽰已初始化的全局变量 ZI-data 表⽰未初始化的全局变量 Program Size: Code="18248" RO-data=320 RW-data=260 ZI-data=3952 Code, RO-data,RW-data ...flash RW-data, ZIdata...RAM 三详...
Code代表执行的代码,程序中所有的函数都位于此处。RO-data代表只读数据,程序中所定义的全局常量数据和字符串都位于此处。RW-data代表已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。ZI-data 代表未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处。
Total RW Size(RW Data + ZI Data) 96 ( 0.09kB) Total ROM Size(Code + RO Data + RW Data) 1008 ( 0.98kB) === Prog2编译出来后的信息如下: === Code RO Data RW Data ZI Data Debug 948 61 0 96 0 Grand