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

相关推荐
小尧嵌入式34 分钟前
STM32启动汇编文件详解及启动逻辑
汇编·arm开发·stm32·单片机
花阴偷移2 小时前
逆向基础--汇编基础(CS与IP) (05)
网络·汇编·网络协议·tcp/ip
大聪明-PLUS4 小时前
io_uring:Linux 上的高性能异步 I/O
linux·嵌入式·arm·smarc
普中科技5 小时前
【普中STM32F1xx开发攻略--标准库版】-- 第 12 章 STM32 时钟系统
stm32·单片机·嵌入式硬件·arm·时钟树·普中科技
wanhengidc18 小时前
云手机搬砖 尤弥尔传奇自动化操作
运维·服务器·arm开发·安全·智能手机·自动化
花姐夫Jun18 小时前
在 Ubuntu ARM 架构系统中安装并使用花生壳实现内网穿透
arm开发·ubuntu·架构
大聪明-PLUS1 天前
从 C 到 C++20 协程编写方法的演变。第一部分:函数 + 宏 = 协程
linux·嵌入式·arm·smarc
森G1 天前
四、Linux设备驱动介绍
linux·arm开发·ubuntu
GilgameshJSS1 天前
STM32H743-ARM例程36-DNS
c语言·arm开发·stm32·单片机·嵌入式硬件
大聪明-PLUS1 天前
3 个诊断 Linux 服务器的脚本
linux·嵌入式·arm·smarc