ARM条件执行指令
时间:11-21
来源:互联网
点击:
1. 画出下面程序的流程图。并利用条件执行指令,简化程序:
CMP R0, #10
BEQ ROUTINE
ADD R1,R1,R0
SUB R1,R1,R2
ROUTINE
...
2. 用ARM汇编实现C语言中的语句
(1)
If((R0= =R1)&&(R2= =R3))
R4++;
2. CMP R0,R1
CMPEQ R2,R3
ADDEQ R4,R4,#1
3.
答案一
GDC
CMP R0,R1
BEQ END
BLT LESS
SUB R0,R0,R1
B GDC
LESS
SUB R1,R1,R0
B GDC
END 。。。
答案二
GDC
CMP R0,R1
BEQ END
SUBLT R1,R1,R0
SUBGE R0,R0,R1
B GDC
END 。。。
4.
答案一
SUBS R2,R2,#0x1
MULNE R0,R1,R2
MOVNE R1,R0
答案二
SUBS R2,R2,#0x1
MUL R0,R1,R2
MOV R1,R0
CMP R2,#1
BNE LOOP
ROUTINE
2.
(1)
If((R0= =R1)&&(R2= =R3))
R4++;
(2)
int gcd(int a, int b)
{
while(a!=b)
{
if(a>b)
a=a-b;
else
b=b-a;
}
return a;
}
(3)利用条件执行的思想计算n! (exp7.4.s)
START
LOOP
STOP
1.
ADDNE
SUBNE
|
2.
CMPEQ R2,R3
ADDEQ R4,R4,#1
3.
答案一
GDC
LESS
END
答案二
GDC
SUBGE R0,R0,R1
END
4.
答案一
SUBS R2,R2,#0x1
MULNE R0,R1,R2
MOVNE R1,R0
答案二
SUBS R2,R2,#0x1
MUL R0,R1,R2
MOV R1,R0
CMP R2,#1
BNE LOOP
ARM条件执行指 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)