微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版-chap9習(xí)題解答_第1頁
微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版-chap9習(xí)題解答_第2頁
微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版-chap9習(xí)題解答_第3頁
微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版-chap9習(xí)題解答_第4頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版——chap9習(xí)題解答微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版——chap9習(xí)題解答微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版——chap9習(xí)題解答資料僅供參考文件編號:2022年4月微處理器系統(tǒng)結(jié)構(gòu)與嵌入式系統(tǒng)設(shè)計第二版——chap9習(xí)題解答版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:第9章習(xí)題答案編寫一個程序段,當(dāng)寄存器r3中數(shù)據(jù)大于r2中的數(shù)據(jù)時,將r2中的數(shù)據(jù)加10存入寄存器r3;否則將r2中的數(shù)據(jù)加100存入寄存器r3,并把這個程序段定義成一個代碼段。AREAADDITION,CODE,READONLYENTRYLoop CMP R3,R2 BHI GREATER ADD R3,R2,#100 B STOPGREATER ADD R3,R2,#10STOP …END試編寫一個循環(huán)程序,實現(xiàn)從0開始10個偶數(shù)的累加。AREAFoud,CODE,READONLYENTRY MOV R0,#0 ;存放累加和 MOV R1,#0 ;存放加數(shù) MOV R2,#9 ;累加次數(shù)Loop ADD R1,R1,#2ADD R0,R0,R1SUB R2,R1,#1 ;調(diào)整累加次數(shù) BNE LoopStop ……END閱讀程序,說明如下程序完成的功能。llsearchCMPR0,#0LDRNEBR2,[R0]CMPNER1,R2LDRNER0,[R0,#4]BNEllsearchMOVPC,LR若R0≠0,則將R0指向的字節(jié)數(shù)據(jù)讀入R2;若R0≠0且R1≠R2,則將R0+4指向的雙字?jǐn)?shù)據(jù)存入R0中;循環(huán),直至R0=R2退出子程序。閱讀程序,說明如下程序完成的功能。strcmpLDRBR2,[R0],#1LDRBR3,[R1],#1CMPR2,#0CMPNER3,#0BEQreturnCMPR2,R3BEQstrcmpreturnSUBR0,R2,R3MOVPC,LRR0指向數(shù)據(jù)串S1(的前一個字節(jié)單元),R1指向數(shù)據(jù)串S2(的前一個字節(jié)單元);依次比較字符串S1、S2中的字符,直至任一字符串結(jié)束;將S1,S2第一個不同字符(或最后一個字符)的差存入R0并返回;閱讀程序,說明如下程序完成的功能。CMPR0,#maxindexLDRLOPC,[PC,R0,LSL#2]BIndexOutOfRangeDCDHandler0DCDHandler1DCDHandler2DCDHandler3…實現(xiàn)子程序散轉(zhuǎn):若R0在有效范圍內(nèi)(小于#maxindex)則跳轉(zhuǎn)到Hander0~3所指的子程序之一。閱讀程序,說明如下程序完成的功能。loopLDMIAR12!,(R0-R11)STMIAR13!,(R0-R11)CMPR12,R14BLOloop將R12開始向大地址方向所指的12個數(shù)據(jù)壓入向上生成的堆棧(R13開始向大地址方向所指的12個單元)中;比較R12和R14的值,若R12小于R14則循環(huán),否則退出程序;分別編寫一個主程序和子程序,實現(xiàn)主程序?qū)ψ映绦虻恼{(diào)用。要求子程序完成兩個數(shù)的加法運算功能;主程序完成對變量的初始化賦值后調(diào)用子程序,實現(xiàn)兩個數(shù)的加法運算。按照如下兩種方式來完成程序設(shè)計。(1)主程序采用C語言程序,子程序采用匯編語言程序設(shè)計;(2)主程序采用匯編語言程序,子程序采用C語言程序設(shè)計。(1)externintmyadd(inta,intb)intmain(){ inta=1,b=2,c;c=myadd(a,b);}AREAmyadd,CODE,READONLYEXPORTmyaddmyaddADDR0,R0,R1MOVPC,LREND(2)IMPROTmyaddAERAExample,CODE,READONLYENTRYM

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論