資料介紹
從數(shù)據(jù)存儲類型來說,8051系列有片內(nèi)、片外程序存儲器,片內(nèi)、片外數(shù)據(jù)存儲器,片內(nèi)程序存儲器還分直接尋址區(qū)和間接尋址類型,分別對應(yīng)code、data、xdata、idata以及根據(jù)51系列特點而設(shè)定的pdata類型,使用不同的存儲器,將使程序執(zhí)行效率不同,在編寫C51程序時,最好指定變量的存儲類型,這樣將有利于提高程序執(zhí)行效率(此問題將在后面專門講述)。與ANSI-C稍有不同,它只分SAMLL、COMPACT、LARGE模式,各種不同的模式對應(yīng)不同的實際硬件系統(tǒng),也將有不同的編譯結(jié)果。
在51系列中data,idata,xdata,pdata的區(qū)別:
data:固定指前面0x00-0x7f的128個RAM,可以用acc直接讀寫的,速度最快,生成的代碼也最小。 idata:固定指前面0x00-0xff的256個RAM,其中前128和data的128完全相同,只是因為訪問的方式不同。idata是用類似C中的指針方式訪問的。匯編中的語句為:mox ACC,@Rx.(不重要的補充:c中idata做指針式的訪問效果很好) xdata:外部擴展RAM,一般指外部0x0000-0xffff空間,用DPTR訪問。 pdata:外部擴展RAM的低256個字節(jié),地址出現(xiàn)在A0-A7的上時讀寫,用movx ACC,@Rx讀寫。這個比較特殊,而且C51好象有對此BUG,建議少用。但也有他的優(yōu)點,具體用法屬于中級問題,這里不提。單片機C語言unsigned char code table[] code 是什么作用? code的作用是告訴單片機,我定義的數(shù)據(jù)要放在ROM(程序存儲區(qū))里面,寫入后就不能再更改,其實是相當與匯編里面的尋址MOVX(好像是),因為C語言中沒辦法詳細描述存入的是ROM還是RAM(寄存器),所以在軟件中添加了這一個語句起到代替匯編指令的作用,對應(yīng)的還有data是存入RAM的意思。程序可以簡單的分為code(程序)區(qū),和data (數(shù)據(jù))區(qū),code區(qū)在運行的時候是不可以更改的,data區(qū)放全局變量和臨時變量,是要不斷的改變的,cpu從code區(qū)讀取指令,對data區(qū)的數(shù)據(jù)進行運算處理,因此code區(qū)存儲在什么介質(zhì)上并不重要,象以前的計算機程序存儲在卡片上,code區(qū)也可以放在rom里面,也可以放在ram 里面,也可以放在flash里面(但是運行速度要慢很多,主要讀flash比讀ram要費時間),因此一般的做法是要將程序放到flash里面,然后load到ram里面運行的;DATA區(qū)就沒有什么選擇了,肯定要放在RAM里面,放到rom 里面改動不了。
- 單片機keil C中的data、bdata、idata、xdata
- keil中data,xdata,code指的是什么,存放在哪里,大小是否符合單片機參數(shù)規(guī)格
- 關(guān)于單片機存儲“Program Size: data=56.4 xdata=0 code=1067”對應(yīng) flash 和RAM ROM
- keil中C51關(guān)鍵字code用法
- keil與vs code開發(fā)C51單片機
- 我使用vs code編程單片機方法
- 單片機C編程中的關(guān)鍵字sfr和sbit的簡介
- 單片機C51編程的警告提示說明
- 面向51單片機的Keil uVision4基本數(shù)據(jù)類型的詳細資料簡介
- 51單片機的unsigned char code代碼定義詳細說明
- C51中的關(guān)鍵詞bdata使用教程詳細說明
- 單片機基礎(chǔ)教程之單片機簡介和微機基礎(chǔ)知識的詳細資料說明 0次下載
- Keil C和Proteus結(jié)合使用的設(shè)計及開發(fā)實例詳細資料說明 13次下載
- 單片機開發(fā)軟件Keil C51使用步驟詳細介紹 7次下載
- 單片機C語言code與data的作用 1次下載
- 單片機編程和plc編程有什么區(qū)別 1800次閱讀
- 什么是C語言?單片機有什么特點?為什么要用C語言編程? 1264次閱讀
- 單片機Keil開發(fā)環(huán)境的搭建 1423次閱讀
- 如何創(chuàng)建51單片機KEIL工程步驟 2568次閱讀
- IAR單片機編程軟件建立stm32工程的方法解析 2372次閱讀
- 基于Keil 5版本單片機編程軟件中MDK的應(yīng)用技巧解析 5068次閱讀
- Keil C51單片機中變量的使用方法解析 5036次閱讀
- 如何對IAR單片機編程軟件進行編譯優(yōu)化 9208次閱讀
- 如何正確的設(shè)置IAR單片機編程軟件 4993次閱讀
- 單片機編程器是什么_單片機編程器應(yīng)用 1.6w次閱讀
- IAR單片機新建軟件工程的詳細步驟解析 5886次閱讀
- 51單片機編程環(huán)境的搭建及代碼編寫的方法 2.2w次閱讀
- 單片機C語言編程中定時器初值計算的兩種方法 1w次閱讀
- Keil C51單片機變量的使用方法詳細介紹 4528次閱讀
- C52單片機的應(yīng)用(連接、編程、測試) 1.2w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 651單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 751單片機大棚環(huán)境控制器仿真程序
- 1.10 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多