嵌入式試探題_第1頁
嵌入式試探題_第2頁
嵌入式試探題_第3頁
嵌入式試探題_第4頁
嵌入式試探題_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

32位嵌入式微處置器ARM(1)試探題(一)1) 寫出ARM能夠運行的不同模式。用戶模式2.快速中斷模式3.中斷模式4.治理模式5.系統(tǒng)模式6.數據訪問終止模式7.未概念指令終止模式2) ARM核有多少個寄放器?37個3) 哪個寄放器用來存儲程序指針,鏈接寄放器和堆棧指針?R134) 哪一種模式能訪問的寄放器是最少的?用戶模式和系統(tǒng)模式5) 哪些寄放器在Thumb態(tài)時是在低端一組的?R0,R1,R2,R3,R4,R5,R6,R76) CPSR的哪一名反映了當前處置器的狀態(tài)?T位。T=0:處置器處于ARM態(tài);T=1:處置器處于Thumb態(tài)7) 所有的Thumb指令必需對齊的邊界是多少?半字對齊8) 寫出ARM不同的異樣類型。未概念指令、預取中止、數據中止、中斷、快中斷、復位、軟中斷指令SWI9) 處置器核復位后別離處于哪一種模式和哪個狀態(tài)?ARM狀態(tài),治理模式10) Thumb指令對照ARM指令,有哪兩個要緊優(yōu)勢?對C代碼的緊密度做了優(yōu)化(大約是ARM代碼大小的65%);對窄內存的性能進行了提高試探題(二)ARM7TDMI的流水線有多少級?3級寫出ARM9TDMI流水線各時期的名字.取指令,指令譯碼,執(zhí)行,內存訪問,回寫寄放器堆馮諾依曼體系和哈佛體系有什么不同?馮諾依曼結構數據空間和地址空間不分開;哈佛結構數據空間和地址空間是分開的ARM9核在什么情形下會致使讀?。玫幕ユi?緊接著LDR指令后用相同寄放器的數據操作會引發(fā)流水線互鎖Cortex家族實現的是ARM的哪個架構版本?ARMV7架構32位嵌入式微處置器ARM(2)試探題(一)用一條ARM指令分別實現下面的語句:r0=16MOVr0,#0x10r0=r1/16(signednumbers)MOVr0,r1ASR4r1=r2*3ADDr1,r2,r2LSL1r0=-r0MVNr0,r0BIC指令的作用?BIC{cond}{S}Rd,Rn,operand2BIC指令將Rn的值與操作數operand2的反碼按位邏輯”與”,結果寄存到目的寄放器Rd中.哪些數據處置指令老是設置條件標志位?算數邏輯運算指令不但將運算結果保留到目的寄放器中,同時更新CPSR中的相應條件標志位;比較運算:CMPCMNTSTTEQ比較指令僅僅設置了條件標志位試探題(二)哪些指令可用于子程序挪用的返回?BL指令實現子程序挪用,從頭加載鏈接寄放器的內容至PC寄放器即可實現返回:LDR,STR,DCD,CMP,BLT,LDM,STM要打開或屏蔽IRQ中斷該利用哪些指令?MSRBIC3?為了克服ARM分支指令只有土32MB范圍的局限,應該利用哪些指令?BLLDRpc,=label試探題(三)CLZ指令的用途是什么?前導0計數:返回寄放器內容中第一個1之前的二進制0的個數以下指令的結果是什么?r1=0x7FFFFF00 r2=0x00001000QADDr0,r1,r2r0=0x80000F00以下的指令有效嗎?LDRDr7,[r2,0x100]無效,因為LDRD指令加載的是兩個字中內存較小的地址-較高地址由該地址+4產生,該指令中r2地址不明白以下指令的成效是什么?SMULBTr0,r1,r2將r1和r2中各選擇一半的16位帶符號整數相乘,將32位結果放入r0中。若是r1=0x12406700,那么在執(zhí)行這條語句后r0的值是什么:REVr0,r1r0=00674012以下指令的意義是什么SUB16r1,r2,r0Thumb狀態(tài)下r1=r2-r0試探題(四)下面這條Thumb指令的成效是什么?ADDr1,r2r1=r1+r2這是一條有效的Thumb指令嗎?MSRCPSR_S,r0有效Thumb中BL指令的跳轉范圍是多少?范圍在+/-4MB(被編碼為一對指令)32位嵌入式微處置器ARM(4)1、請將C語言中的IF語言用ARM指令系統(tǒng)來表示,并具體寫出程序。例如c語言代碼如下:if(a<b){x=5;y=c+d;}elsex=c-d;用ARM指令實現代碼如下:ADRr4,a;讀取變量a的地址LDRr0,[r4];讀變量a的內容到r0ADRr4,b;讀取變量b的地址LDRr1,[r4];讀變量b的內容到r1CMPr0,r1;BGEfblock;若是a>=b,跳轉到fblockADRr4,x;MOVr0,#5;STRr0,[r4];令x=5ADRr4,c;讀取變量c的地址LDRr0,[r4];讀變量c的內容到r0ADRr4,d;讀取變量d的地址LDRr1,[r4];讀變量d的內容到r1ADDr0,r0,r1;ADRr4,y;讀取變量y的地址STRr0,[r4];Bafter;fblock:ADRr4,c;讀取變量c的地址LDRr0,[r4];讀c的內容到r0ADRr4,d;讀取變量d的地址到r4LDRrl,[r4];讀變量d的內容到r1SUBr0,r0,rl;計算a-b結果保留在r0ADRr4,x;讀取變量x的地址STRr0,[r4]2、請將C語言中的數組用ARM匯編語句表示,并具體寫出訪問數組的語句。例如C語言語句:for(i=0;i<=10;i++){a[i]=b[i]+c;}假設R0,R1分別存放了a[i],b[i]的基地址,c的值在R2中,R3中存著0x0a則匯編代碼如下:MOVR3,#0xA;iANextRSBR5,R3,#0xA

溫馨提示

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

評論

0/150

提交評論