找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4781|回復: 2
收起左側

keil MDK編譯完成后,Program Size: Code,RO-data,RW-data,ZI-data的意義

[復制鏈接]
ID:105323 發(fā)表于 2016-2-24 17:54 | 顯示全部樓層 |閱讀模式
Program Size: Code=344 RO-data=252 RW-data=100 ZI-data=1024
看了多遍,總是忘,這次還是把它分析透了吧,若有不對的地方還請各位看官指正補充
固定不變的代碼存在ROM或flash里;這個固定不變的代碼有兩種,一種是指令,一種是指令的操作數(shù),比如查表量,const常量,變量的初始化數(shù)值等等,在哈佛結構中即是,指令總線與數(shù)據(jù)總線分別對以上兩種代碼進行操作;
變化的量,即在程序運行過程中經常需要改“寫”的量存放在RAM中。
好了,現(xiàn)在開始解釋上面的各種代碼所表示的意義:​
code=344  這個是存在ROM(flash)里的指令,這是在程序運行過程中不變的量,是指令,在哈佛結構中由(I-bus)指令總線讀;
RO-data    (read only data)只讀數(shù)據(jù),是指令的操作數(shù), 在哈佛結構中由數(shù)據(jù)總線(D-bus)讀。

​​​​RW-data  表示初始化了的可讀寫變量的大小,這個存在兩個地方,初始化量存在ROM/FLASH中,由于還要對其進行“寫”操作所以RAM中也要占用相應的空間
​ZI-data   即zero-initialize 未被初始化的變量,這個顯然也是存在RAM中
所以該工程對ROM的需求為​code+RO-data+RW-data;
                RAM最大需求為RW-data+ZI-data ;
也即ROM=前三加  RAM等于后二加 前三后二是也。​

回復

使用道具 舉報

ID:20672 發(fā)表于 2018-10-23 12:48 | 顯示全部樓層
謝謝分享~~~
回復

使用道具 舉報

ID:516865 發(fā)表于 2020-5-15 10:36 | 顯示全部樓層
nice!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表