重庆工商大学c语言实验一答案,重庆工商大学嵌入式实验考试题目答案 - 副本.doc...
您所在位置:網站首頁 > 海量文檔
 > 計算機 > 嵌入式開發
重慶工商大學嵌入式實驗考試題目答案 - 副本.doc22頁
本文檔一共被下載:次,您可全文免費在線閱讀后下載本文檔。
下載提示
1.本站不保證該用戶上傳的文檔完整性,不預覽、不比對內容而直接下載產生的反悔問題本站不予受理。
2.該文檔所得收入(下載+內容+預覽三)歸上傳者、原創者。
3.登錄后可充值,立即自動返金幣,充值渠道很便利
匯編指令實驗一:
(實驗1~3無法調試結果 但是基本上是正確的)
(1)使用LDR 指令讀取0的數據,將數據加 ,若結果小于 0則使用 STR 指令把結果寫回原地址,若結果大于等于 0,則把0 寫回原地址。然后再次讀取 0的數據,將數據加 ,判斷結果Fun
LDRR0,# 0ADDR0,#2
CMP R0,#20
MOVGER0,#0
STRLTR0,# 0BFun
匯編指令實驗二:
(1 )使用MOV和MVN指令訪問ARM通用寄存器。
(2 )使用ADD、SUB 、AND、ORR、CMP、TST 等指令完成數據加減運算及邏輯運算。
(1)、(2)這個很簡單 就按照 相應的操作 (如:MOV和MVN) 的語法格式就行
匯編指令實驗三:(任選兩題作答)
(1 )使用ARM匯編指令實現 if 條件執行, for 循環結構, while循環結構和while循環結構。
If條件執行:
MOV R0 , 0 #R0初始化為0
CMP R0 , 0 #比較R0與0的大小
MOVEQ R0 , 1 #如果R0等于0 則修改R0為1
For循環結構:
MOV R5 , 10 MOV R1 , #0#求和 MOV R2 , #1#循環變量 FOR
CMP R5 , R2 #進入for循環先判斷 BEQ END ADD R1 , R1 ,R2 ADD R2 , R2 ,#1 B FOR END
Do……while循環結構
MOV R5 , 10 MOV R1 , #0#求和 MOV R2 , #1#循環變量 DOWHILE ADD R1 , R1 ,R2 ADD R2 , R2 ,#1 CMP R5 , R2#do_while循環先執行后判斷 BEQ END B DOWHILE END
While循環結構
MOV R5 , 10 MOV R1 , #0#求和 MOV R2 , #1#循環變量 WHILE
CMP R5 , R2 #進入while循環的時候先判斷 BEQ END ADD R1 , R1 ,R2 ADD R2 , R2 ,#1 B WHILE END
四、c語言程序實驗:
C 程序使用加法運算來計算1+2+3+...+(99-1)+100的值。
(實驗4太簡單 不用寫了)
c語言調用匯編程序實驗:
在C 程序調用匯編子程序,實現兩個整數的減法法運算。匯編子程序的原型為: uint32 Add(uint32 x, uint32 y),其中uint32 已定義為 unsigned int 。
; 初始化C程序的運行環境
IMPORT|Image$$RO$$Limit|
IMPORT|Image$$RW$$Base|
IMPORT|Image$$ZI$$Base|
IMPORT|Image$$ZI$$Limit|
IMPORTMain ; 聲明C程序中的Main()函數
AREAStart,CODE,READONLY; 聲明代碼段Start
ENTRY; 標識程序入口
CODE32; 聲明32位ARM指令
ResetLDRSP,=0x40003F00 ; 初始化C程序的運行環境
LDR R0,=|Image$$RO$$Limit|
LDR R1,=|Image$$RW$$Base|
LDR R3,=|Image$$ZI$$Base|
CMP R0,R1
BEQ LOOP1;loop0拷貝數據
LOOP0CMP R1,R3 ;初始化第(2)情況
LDRCC R2,[R0],#4 ;CC為小于條件
STRCC R2,[R1],#4
BCC LOOP0
;loop1, loop2完成初始化
LOOP1
LDRR1,=|
發表評論
請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
用戶名:
驗證碼:
匿名?
發表評論
總結
以上是生活随笔為你收集整理的重庆工商大学c语言实验一答案,重庆工商大学嵌入式实验考试题目答案 - 副本.doc...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 生源地贷款的钱是打到支付宝吗
- 下一篇: 新概念C语言能力教程练习3答案,新概念C