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

相关推荐
振南的单片机世界3 小时前
地址总线定门牌号,数据总线搬货量:CPU的“寻址”与“搬运”
arm开发·stm32·单片机·嵌入式硬件
2401_8541515518 小时前
ARM Cortex-M 体系结构深度解析——寄存器模型、处理器模式、AAPCS 与异常模型
arm开发·stm32·单片机·嵌入式硬件
zlinear数据采集卡2 天前
从0到1硬核拆解:工业级数据采集卡的隔离设计与Modbus通信实战
arm开发·单片机·嵌入式硬件·fpga开发·开源
toradexsh2 天前
基于 NXP i.MX8M Plus 测试 Zephyr RTOS
arm·rtos·nxp·imx8mp·zephyr
想你依然心痛2 天前
自定义RTOS内核:从零实现上下文切换与任务调度——汇编、PendSV
java·开发语言·汇编·pendsv
hai3152475432 天前
九章空间几何对照直译法:通用芯片 / 定制专用芯片 编译适配规则
linux·汇编·bash
Quincy_Freak2 天前
银河麒麟 SQLite 实操:Excel 导入与 SQL 语法编辑功能详解摘要
数据库·arm·数据库管理·大数据分析·银河麒麟·aarch64·sqlitego
JAVA面经实录9174 天前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
Quincy_Freak4 天前
信创内网数据规范实践:银河麒麟下SQLite本地数据安全管理方案
数据库·sqlite·arm·数据库管理·大数据分析·银河麒麟·aarch64
凉、介4 天前
ARMv8 架构下的刷 Cache 操作
c语言·笔记·学习·架构·嵌入式·arm