您的位置:首页 > 编程语言

ARM 体系结构与编程 笔记1

2012-07-19 22:35 225 查看
条件执行

int gcd(int a,int b)

{

while(a!=b)

{

if(a > b)

a = a-b;

else

b = b-a;

}

return a;

}

对应到ARM代码段。代码执行前 R0中存放a,R1中存放b;代码执行后R0中存放a和b的最大公约数。

gcd

CMP R0,R1

SUBGT R0,R0,R1

SUBLT R1,R1,R0

BNE gcd

MOV PC,LR

条件判断语句

1 if(a == 0 || b==1)

2 c = d+e;

3

4 对应的ARM代码段。代码执行前R0中存放a,R1中存放b。代码执行后R2中存放d和e> 的总和。

5 CMP R0,#0 ; 判断R0是否等于0

6 CMPNE R1,#1 ; 如果R0不等于0,判断R1是否等于1

7 ADDEQ R2,R3,R4 ; R0 = 0货R1=1时,R2=R3+R4

~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: