针对iar和keil编译器输出内存的分配做说明8 f, c+ |/ m4 t' z+ i* x
IAR, e! ?# H% H4 N
ox5cbniuui364010482930.png
; P4 B8 p9 q3 R( ~# k' @. \
keil% d1 r8 A+ I) h* ^
01xoswzgpra64010483030.png
1 q, j: E8 u" H+ c8 q先说IAR
( a: w1 V& s( T7 D: U' j" mreadonly code memory 是存储在flash中的4 k7 q/ g$ s" x# Q/ K! E: @% X% t
readonly data memory 是存储在flash中的(只读常量,如const型)# S8 D3 P% q; ]" t( ?! R3 c0 t" L
readwrite data memory 是存储在RAM中的
& i. n1 T2 ~8 J4 j4 V; w& f( L8 b/ M: k7 F( M3 ^
再说keil& m6 Q- ^3 K: @6 j7 ?
Code: 存储到flash中的程序代码。
3 o) Z; z& F6 S2 M1 IRO-data:(Read Only)只读常量的大小,如const型。
' y# M4 W; u8 _+ I/ K! ~' qRW-data:(Read Write) 初始化了可读写变量的大小。即已初始化为非零的全局变量。7 h' W2 n4 e6 P) R9 {- W. g: N
ZI-data:(Zero Initialize) 没有初始化或初始化为0的可读写的变量的大小 |