2个数的最大公约数
.text
.global _start
_start:
mov r0,#9
mov r1,#15
loop:
cmp r0,r1
beq stop @r0 = r1
bgt r0r1 @r0 > r1
blt r1r0 @r0 < r1
r0r1:
sub r0,r0,r1 @r0-=r1
b loop
r1r0:
sub r1,r1,r0 @r1-=r0
b loop
stop:
b stop
.end
for循环1加到100
.global _start
_start:
mov r0,#1 @定义i
mov r1,#0 @和
loop:
add r1,r0,r1 @ r1+=r0
cmp r0,#100 @ r1<= 100
beq stop @break
blt add1 @if r0<100
add1:
add r0,r0,#1 @r0++
b loop
stop:
b stop
.end
str:
.text @文本段
.global _start @声明一个—_start全局函数
_start: @_start 函数入口
ldr r0,=0x40000800
ldr r1,=0x11111111
ldr r2,=0x22222222
ldr r3,=0x33333333
@ 将 R1 中的数据存储到地址为 0x40000800+4 的内存中,存储地址不变
str r1,[r0,#4]
@ 将 R2 中的数据存储到地址为 0x40000800 的内存中,同时将存储地址加上 4
str r2,[r0],#4
@ 存储地址加上 4,将 R3 中的数据存储到地址为 0x40000800+4+4 的内存中
str r3,[r0,#4]!
stop: @stop函数入口
b stop @b跳转指令
.end @结束标志