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
~
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
~
相关文章推荐
- ARM体系结构与编程学习(十三)
- ARM体系结构与编程学习(五)
- ARM体系结构与编程学习(六)
- ARM学习笔记之一:ARM体系结构
- ARM的体系结构与编程系列博客——ARM的历史与应用范围
- ARM体系结构与编程学习(八)
- arm体系结构学习笔记 part1--处理器模式与寄存器
- ARM体系结构与编程学习(九)
- ARM的体系结构与编程系列博客——ARM的历史与应用范围
- ARM体系结构与编程学习(二)
- ARM体系结构与编程学习(十)
- ARM体系结构与编程学习(十一)
- ARM体系结构与编程学习(十一)
- ARM底层学习笔记-中断体系结构
- arm体系结构学习笔记 part2 -- 中断相关
- arm体系结构学习笔记 part3 -- 异常处理机制
- arm体系结构学习笔记 part4 -- 异常处理的返回
- ARM体系结构与编程学习(九)
- 一份好的ARM体系结构学习笔记
- ARM的体系结构与编程系列博客——ARM体系变种