arm 汇编基础指令

实现1-100求和

cs 复制代码
.text
.globl _start
 
_start:
	mov r0, #1         @ i,i=1
	mov r1, #100       @ 条件变量i<=100
	mov r2, #0         @ sum
	
Loop:                  @ 循环
	cmp r0,r1          @ 比较r0和r1的大小
	bhi stop           @ 当r0>r1时,跳到stop标签
	add r2,r2,r0       @ r2 = r2 + r0  ---> sum=sum+i
	add r0,#(0x1 << 0) @ i++
	b Loop             @ 跳转到Loop标签下的第一条指令,达到循环效果
	
stop:
	b stop	

exit:
    mov r7, #1      @ 设置exit系统调用号为1
    mov r0, r2      @ 设置退出码为求和结果
    swi 0           @ 调用系统调用	

运行结果

r2=0x13BA=5050

相关推荐
Dillon Dong38 分钟前
从C到Simulink: ARM Compiler 5 (RVDS) 为什么simulink 不能使用arm编译
c语言·arm开发·simulink
硅农深芯1 小时前
ARM Cortex-M系列的内核型号有什么区别,该怎么选择
arm开发·单片机·芯片
黎雁·泠崖1 小时前
Java底层探秘进阶:JIT汇编逐行拆解!Java方法栈帧与C语言深度对标
java·c语言·汇编
小初生ZLD6 小时前
CSDN年度技术趋势预
汇编
小程同学>o<9 小时前
Linux 应用层开发入门(一)| ARM平台交叉编译入门:打造你的第一个Linux应用
linux·arm开发·linux应用层
切糕师学AI1 天前
ARM 汇编指令:STM
汇编·arm开发·stm
大聪明-PLUS1 天前
关于 systemd 和桌面应用程序自动启动
linux·嵌入式·arm·smarc
qq13267029401 天前
ARM版统信UOS桌面安装JDK
java·jdk·arm·统信uos·毕昇jdk 11
大聪明-PLUS1 天前
了解 Linux 系统中用于流量管理的 libnl 库
linux·嵌入式·arm·smarc
黎雁·泠崖1 天前
Java 方法栈帧深度解析:从 JIT 汇编视角,打通 C 与 Java 底层逻辑
java·c语言·汇编