【實驗】 ARM彙編程式設計

chen_yilong發表於2013-01-12
1.掌握ARM偽指令和偽操作
2.掌握結構化程式的設計

3.掌握各種除錯方法  



1.練習教材P334 7.6的實驗。(此操作可以不寫在實驗報告中)
2.已知有32位數X存放在儲存器的地址0x90010中,要求實現:若X大於0,則Y=1;若X=0,則Y=0;否則,Y=-1.其中Y的值存放在0X90014中。
3.編寫一個彙編程式,要求求兩個陣列DATA1和DATA2對應的資料之和,並把和儲存在新陣列SUM中,即實現SUM[i]=DATA1[i]+DATA2[i].  



(1)開啟軟體MDK,建立檔名實驗5,建立彙編程式名5-1,5-2
(2)選擇CPU
(3)分別編寫彙編程式,檢查無誤後除錯
(4)單步除錯,檢視暫存器變化
(5)觀察結果,並截圖。整理資料,填寫實驗報告冊






//5.1
	 AREA TEST,CODE,READONLY
			 ENTRY
			 CODE32
START        LDR R1,=0x90010
		     LDR R2,[R1],#4
			 CMP R2,#0
			 BEQ ZERO
			 BGT PLUS
			 MOV R0,#-1
			 B FINISH
PLUS		 MOV R0,#1
		     B FINISH
ZERO		 MOV R0,#0
FINISH		 STR R0,[R1]
			 B START
			 END


//5.2


AREA TEST,CODE,READONLY
			   ENTRY
			   CODE32
START		   LDR R1,=DATA1
			   LDR R2,=DATA2
			   LDR R3,=SUM
			   MOV R0,#0
LOOP		   LDR R4,[R1],#04
			   LDR R5,[R2],#04
			   ADDS R4,R4,R5
			   ADD R0,R0,#1
			   STR R4,[R3],#04
			   BNE LOOP
			   B START
			   AREA BLockData,DATA,READWRITE
DATA1		   DCD 2,5,0,3,-4,5,0,10,9
DATA2		   DCD 3,5,4,-2,0,8,3,-10,5
SUM			   DCD 0,0,0,0,0,0,0,0,0
			   END

除錯過程及

實驗結果截圖見連結

點選開啟連結

相關文章