Keil-MDK編譯完成后代碼大小


 

Code 代表執行的代碼,程序中所有的函數都位於此處。

RO-data 代表只讀數據,程序中所定義的全局常量數據和字符串都位於此處。

RW-data 代表已初始化的讀寫數據,程序中定義並且初始化的全局變量和靜態變量位於此處。

ZI-data 代表未初始化的讀寫數據,程序中定義了但沒有初始化的全局變量和靜態變量位於此處。

KEIL RVMDK編譯后的信息

Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116

這些參數的單位是Byte,幾個參數分別代表含義如下: 

1KB=1024B;1MB=1024KB=1024×1024B。其中1024=2^10。
1B(byte,字節)= 8 bit(見下文);
1KiB(Kibibyte,千字節)=1024B= 2^10 B;
1MiB(Mebibyte,兆字節,百萬字節,簡稱“兆”)=1024KB= 2^20 B;

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

 

文章參考:https://blog.csdn.net/fxh296249331/article/details/50721896


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM