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
实验结果截图见链接
点击打开链接