2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、變量keil存儲器類型2009072016:24所提到變量就是一種在程序執(zhí)行過程中其值能不斷變化的量。要在程序中使用變量必須先用標(biāo)識符作為變量名,并指出所用的數(shù)據(jù)類型和存儲模式,這樣編譯系統(tǒng)才能為變量分配相應(yīng)的存儲空間。定義一個變量的格式如下:[存儲種類]數(shù)據(jù)類型[存儲器類型]變量名表在定義格式中除了數(shù)據(jù)類型和變量名表是必要的,其它都是可選項。存儲種類有四種:自動(auto)外部(extern)靜態(tài)(static)和寄存器(regist

2、er),缺省類型為自動(auto)。這些存儲種類的具體含義和使用方法,將在第七課《變量的存儲》中進(jìn)一步進(jìn)行學(xué)習(xí)。而這里的數(shù)據(jù)類型則是和我們在第四課中學(xué)習(xí)到的名種數(shù)據(jù)類型的定義是一樣的。說明了一個變量的數(shù)據(jù)類型后,還可選擇說明該變量的存儲器類型。存儲器類型的說明就是指定該變量在單片機(jī)c語言硬件系統(tǒng)中所使用的存儲區(qū)域,并在編譯時準(zhǔn)確的定位。表6-1中是KEILuVision2所能認(rèn)別的存儲器類型。注意的是在AT89c51芯片中RAM只有低1

3、28位,位于80H到FFH的高128位則在52芯片中才有用,并和特殊寄存器地址重疊。特殊寄存器(SFR)的地址表請看附錄二AT89c51特殊功能寄存器列表表6-1存儲器類型存儲器類型說明data直接訪問內(nèi)部數(shù)據(jù)存儲器(128字節(jié))訪問速度最快bdata可位尋址內(nèi)部數(shù)據(jù)存儲器(16字節(jié)),允許位與字節(jié)混合訪問idata間接訪問內(nèi)部數(shù)據(jù)存儲器(256字節(jié)),允許訪問全部內(nèi)部地址pdata分頁訪問外部數(shù)據(jù)存儲器(256字節(jié)),用MOVX@Ri

4、指令訪問xdata外部數(shù)據(jù)存儲器(64KB),用MOVX@DPTR指令訪問code程序存儲器(64KB)用MOVC@ADPTR指令訪問如果省略存儲器類型,系統(tǒng)則會按編譯模式SMALLCOMPACT或LARGE所規(guī)定的默認(rèn)存儲器類型去指定變量的存儲區(qū)域。無論什么存儲模式都能聲明變量在任何的8051存儲區(qū)范圍,然而把最常用的命令如循環(huán)計數(shù)器和隊列索引放在內(nèi)部數(shù)據(jù)區(qū)能顯著的提高系統(tǒng)性能。還有要指出的就是變量的存儲種類與存儲器類型是完全無關(guān)的。

5、.數(shù)據(jù)存儲模式存儲模式?jīng)Q定了沒有明確指定存儲類型的變量,函數(shù)參數(shù)等的缺省存儲區(qū)域,共三種:1.1.Small模式所有缺省變量參數(shù)均裝入內(nèi)部RAM,優(yōu)點是訪問速度快,缺點是空間有限,只適用于小程序。2.2.Compact模式所有缺省變量均位于外部RAM區(qū)的一頁(256Bytes),具體哪一頁可由P2口指定,在STARTUP.A51文件中說明,也可用pdata指定,優(yōu)點是空間較Small為寬裕速度較Small慢,較large要快,是一種中間

6、狀態(tài)。3.3.large模式所有缺省變量可放在多達(dá)64KB的外部RAM區(qū),優(yōu)點是空間大,可存變量多,缺點是速度較慢。提示:存儲模式在單片機(jī)c語言編譯器選項中選擇。dof(a=0a50000a)P1_0=0點亮P1_0f(a=0a50000a)P1_7=0點亮P1_7f(b=0b255b)f(a=0a10000a)P1=b用b的值來做跑馬燈的花樣P1=255熄滅P1上的LEDf(b=0b255b)f(a=0a10000a)P1_1閃爍P1

7、_1=0f(a=0a10000a)P1_1=1while(1).Keilc51指針變量單片機(jī)c語言支持一般指針(GenericPointer)和存儲器指針(Memy_SpecificPointer).1.1.一般指針一般指針的聲明和使用均與標(biāo)準(zhǔn)C相同,不過同時還能說明指針的存儲類型,例如:longstate為一個指向long型整數(shù)的指針,而state本身則依存儲模式存放。xdataptr;ptr為一個指向數(shù)據(jù)的指針,而ptr本身放于外部

8、RAM區(qū),以上的long等指針指向的數(shù)據(jù)可存放于任何存儲器中。一般指針本身用3個字節(jié)存放,分別為存儲器類型,高位偏移,低位偏移量。2.2.存儲器指針基于存儲器的指針說明時即指定了存貯類型,例如:datastrstr指向data區(qū)中型數(shù)據(jù)intxdatapowpow指向外部RAM的int型整數(shù)。這種指針存放時,只需一個字節(jié)或2個字節(jié)就夠了,因為只需存放偏移量。3.3.指針轉(zhuǎn)換即指針在上兩種類型之間轉(zhuǎn)化:l當(dāng)基于存儲器的指針作為一個實參傳遞

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論