



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
何為尋址方式?80C51單片機(jī)有哪些尋址方式?答:80C51單片機(jī)共有7種尋址方式:寄存器尋址寄存器間接尋址直接尋址立即尋址基址寄存器+變址寄存器的間接尋址相對(duì)尋址位尋址什么是源操作數(shù)?什么是目的操作數(shù)?通常在指令中如何加以區(qū)分?答:在雙操作數(shù)的指令中,指令執(zhí)行后的結(jié)果放在其中的一個(gè)操作數(shù)中,這個(gè)操作數(shù)是目的操作數(shù),另外一個(gè)是源操作數(shù)。80C51指令系統(tǒng)中,不靠近指令操作碼的是源操作數(shù),源操作數(shù)可以是立即數(shù)。80C51指令系統(tǒng)中,緊跟在指令操作碼之后是目的操作數(shù),算術(shù)運(yùn)算和人多數(shù)邏輯運(yùn)算其目的操作數(shù)必須是累加器A,目的操作數(shù)不允許使用立即數(shù)尋址方式。查表指令是在什么空間上的尋址操作?答:由于對(duì)程序存儲(chǔ)器只能讀而不能寫,因此其數(shù)據(jù)傳送是單向的,即從程序存儲(chǔ)器讀取數(shù)據(jù),且只能向累加器A傳送。這類指令共有兩條,其功能是對(duì)存放于程序存儲(chǔ)器中的數(shù)據(jù)表格進(jìn)行查找傳送,所以又稱查表指令。movca,@a+dptrmovca,@a+pc這兩條指令都為變址尋址方式。前一條指令以DPTR作為基址寄存器進(jìn)行查表,使用前可先給DPTR賦予任何地址,因此查表范I制可達(dá)整個(gè)程序存儲(chǔ)器的64KB空間。后一條指令以PC作為基址寄存器,雖然也提供16位基址,但其值是固定的。由于A的內(nèi)容為8位無符號(hào)數(shù),所以這種查表指令只能查找所在地址以后256B范圍內(nèi)的常數(shù)或代碼。對(duì)80C51片內(nèi)RAM的128?255字節(jié)區(qū)的地址空間尋址時(shí),應(yīng)注意些什么?對(duì)特殊功能寄存器,應(yīng)采用何種尋址方式進(jìn)行訪問?答:此空間有2類不同的物理存儲(chǔ)空間,一個(gè)是特殊功能寄存器區(qū),一個(gè)是RAM區(qū)。直接尋址訪問特殊功能寄存器,間接尋址訪問RAM區(qū)。寫出完成下列要求的C語(yǔ)言程序。(1)將地址為4000H的片外數(shù)據(jù)存儲(chǔ)單元內(nèi)容,送入地址為30H的片內(nèi)數(shù)據(jù)存儲(chǔ)單元中。答:可使用絕對(duì)地址訪問函數(shù)實(shí)現(xiàn)DBYTE[0x30]=XBYTE[0x4000];(2)將地址為4000H的片外數(shù)據(jù)存儲(chǔ)單元內(nèi)容,送入地址為3000H的片外數(shù)據(jù)存儲(chǔ)單元中。答:町使用絕對(duì)地址訪問函數(shù)實(shí)現(xiàn)XBYTE[0x3000]=XBYTE[0x4000];(3)將地址為0800H的程序存儲(chǔ)單元內(nèi)容,送入地址為30H的片內(nèi)數(shù)據(jù)存儲(chǔ)單元中。
答:可使用絕對(duì)地址訪問函數(shù)實(shí)現(xiàn)DBYTE[0x30]=CBYTE[0x0800];(4)將片內(nèi)數(shù)據(jù)存儲(chǔ)器中地址為30H與40H的單元內(nèi)容交換。答:unsignedchartemp;temp=DBYTE[0x40];DBYTE[0x40]=DBYTE[0x30];DBYTE[0x30]=temp;(5)將片內(nèi)數(shù)據(jù)存儲(chǔ)器中地址為30H單元的低4位與高4位交換。答:使用C51提供的本征函數(shù)_cror_實(shí)現(xiàn);#iiiclucle<iiitrms.h>_ctoi_(DEYTE[0x30],4);10?編寫程序,用30H單元內(nèi)容除以40H單元內(nèi)容,商送入50H單元,余數(shù)送入51H單元。答:涉及直接地址,用匯編實(shí)現(xiàn):ORG0000HMOVSP#49HMOVA,30H;被除數(shù)MOVB?40H;除數(shù)DIVAB;ABMOV50H.A;商存50H單元MOV51H.B;余存51H單元SJMP$;程序在此死循環(huán)END17.答:(C)=0(RS1)=0(C)=0(RS1)=0(RSO)=0CLRRS1;答:位操作指令CLRRS0:答:位操作指令MOVA#38H;答:字節(jié)操作指令A(yù)=38HMOVRO,A;答:字節(jié)操作指令R0=(A)=38HMOV29H.R0:答:字節(jié)操作指令(29H)=(R0尸38HSETBRSO:答:位操作指令(RS0)=1MOVRLA:答:字節(jié)操作指令R1=(A尸38HMOV26H,A:答:字節(jié)操作指令(26H)=(A)=38HMOV28H.C:答:位操作指令(28H)=(C)=0如fosc=12MHz,這段程序的執(zhí)行時(shí)MJ=llps在C51中為何要盡量采用無符號(hào)的字節(jié)變量或位變量?答:采用無符號(hào)的字節(jié)變量或位變量可提高代碼效率的方法就是減小變量的長(zhǎng)度,使用ANSIC編程時(shí),一般習(xí)慣于對(duì)變量使用mt類型,而對(duì)于像80C51這類8位的單片機(jī)來說這是一種極大的浪費(fèi)。80C51單片機(jī)機(jī)器指令只支持字節(jié)和位變量,所以應(yīng)該仔細(xì)考慮所聲明的變量值的可能的取值范I韋I,然后選擇合適的變屋類型。盡可能地選擇變量類型為char.unsignedchar或bit,它們只占用IE或1位。為了加快程序的運(yùn)行速度,C51中頻繁操作的變量應(yīng)定義在哪個(gè)存儲(chǔ)區(qū)?答:局部變量和全局變屋可以被定義在任何一個(gè)存儲(chǔ)區(qū)中,根據(jù)前面的討論,把經(jīng)常使用的變量放在內(nèi)部RAM中時(shí),可使程序的速度得到提高。除此之外,還縮短了程序代碼,因?yàn)橥獠看鎯?chǔ)區(qū)尋址的指令,相對(duì)要麻煩一些??紤]到存取速度,推薦讀者按dataTidata—pdataTxdata的順序使用存儲(chǔ)器,當(dāng)然要記得在uhta空間中留出足夠的堆??臻g。為何在C51中避免使用float浮點(diǎn)型變量?答:在80C51單片機(jī)系統(tǒng)上使用32位浮點(diǎn)數(shù)是得不償失的,這樣做會(huì)浪費(fèi)單片機(jī)犬量的存儲(chǔ)器資源和程序執(zhí)行時(shí)間。一定要在系統(tǒng)中使用浮點(diǎn)數(shù)的時(shí)候,町以通過提高數(shù)值數(shù)量級(jí)或使用整型運(yùn)算代替浮點(diǎn)運(yùn)算。在運(yùn)算時(shí),可以進(jìn)行定點(diǎn)運(yùn)算的盡屋進(jìn)行定點(diǎn)運(yùn)算,避免進(jìn)行浮點(diǎn)運(yùn)算。盡量減少乘除法運(yùn)算,如*2n或/2n,可以使用移位操作代替乘除法運(yùn)算,這樣不僅可以減少代碼量,同時(shí)還能人人提高程序執(zhí)行效率。處理mts和longs比處理doubles和floats要方便得多,代碼執(zhí)行起來會(huì)更快,C51編譯器也不用連接處理浮點(diǎn)運(yùn)算的模塊。如何定義C51的中斷函數(shù)?答:80C51的中斷系統(tǒng)十分重要,C51編譯器允許在C語(yǔ)言源程序中聲明中斷和編寫中斷服務(wù)程序,從而減輕了采用匯編程序編寫中斷服務(wù)程序的煩瑣程度。通過使用intenupt關(guān)鍵字來實(shí)現(xiàn)。定義中斷服務(wù)程序的一般格式如下:關(guān)鍵字internipt后面的n是中斷號(hào),n的取值范圍為0?31。編譯程序從8n+3處產(chǎn)生中斷向量,即在程序存儲(chǔ)器8ii+3地址處形成一條長(zhǎng)跳轉(zhuǎn)指令,轉(zhuǎn)向中斷號(hào)n的中斷服務(wù)程序。中斷號(hào)對(duì)應(yīng)著IE寄存器中的使能位,換句話說IE寄存器中的0位對(duì)應(yīng)著外部中斷0,相應(yīng)的外部中斷0的中斷號(hào)是0。usmgin指明該中斷服務(wù)程序所對(duì)應(yīng)的工作寄存器組,取值范闈為0?3。指定工作寄存器組的缺點(diǎn)是所有被中斷調(diào)用的過
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)習(xí)古代文學(xué)史的試題及答案
- 湖北省武漢市東西湖區(qū)2023-2024學(xué)年八年級(jí)下學(xué)期期中考試英語(yǔ)試題(含答案)
- 藥理學(xué)考試常見復(fù)習(xí)誤區(qū)試題及答案
- 統(tǒng)計(jì)學(xué)考試過程與結(jié)果評(píng)估試題及答案
- 2024年汽車維修工行業(yè)交流技巧試題及答案
- 食品檢測(cè)技術(shù)的發(fā)展趨勢(shì)試題及答案
- 2024年汽車維修工考試技巧提升
- 古代文學(xué)史作品分析試題及答案
- 庫(kù)房管理工作
- 時(shí)間管理大師65
- 消費(fèi)行為影響機(jī)制-深度研究
- 健康咨詢與服務(wù)推廣協(xié)議
- 護(hù)士N1晉級(jí)N2述職報(bào)告
- 中國(guó)糖尿病防治指南(2024版)解讀
- 食堂食材配送采購(gòu)?fù)稑?biāo)方案(技術(shù)標(biāo))
- 山東省汶上縣市級(jí)名校2025屆中考生物全真模擬試卷含解析
- 2025年度智能硬件產(chǎn)品全國(guó)區(qū)域獨(dú)家代理合同3篇
- 辦公室安全知識(shí)培訓(xùn)課件
- 2025年四川省成都市青白江區(qū)招聘50人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年浙江嘉興市眾業(yè)供電服務(wù)限公司招聘38人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 中國(guó)技能大賽-第45屆世界技能大賽全國(guó)選拔賽“水處理技術(shù)”項(xiàng)目技術(shù)工作文件
評(píng)論
0/150
提交評(píng)論