1~100的累加,使用循环语句可以快速实现,但汇编中不存在现成的循环语句
所以我们需要使用跳转指令和比较指令及条件码实现类似于c语言中for语句的功能
代码实现
.text
.globl _start
_start:
mov r1,#0x1 @定义循环初始值
sum:
cmp r1,#0x64 @比较r1和#x64(100)两者大小
bhi stop
addls r0,r0,r1 @如果r1小于或等于100则累加入r0中
addls r1,r1,#0x1 @实现类似于r1++的效果
bls sum @保证循环至r1中的值大于r2
stop: @标签
b stop @跳转指令
.end