mov: 将某一寄存器的值复制到另一寄存器(只能用于寄存器与寄存器或者寄存器
与常量之间传值,不能用于内存地址),如:
mov x1, x0 将寄存器 x0 的值复制到寄存器 x1 中
add: 将某一寄存器的值和另一寄存器的值 相加 并将结果保存在另一寄存器中,
如:

sub: 将某一寄存器的值和另一寄存器的值 相减 并将结果保存在另一寄存器中:

and: 将某一寄存器的值和另一寄存器的值 按位与 并将结果保存到另一寄存器中,
如:

orr: 将某一寄存器的值和另一寄存器的值 按位或 并将结果保存到另一寄存器中,
如:

str : 将寄存器中的值写入到内存中,如:

ldr: 将内存中的值读取到寄存器中,如:

cbz: 和 0 比较,如果结果为零就转移(只能跳到后面的指令)
cbnz: 和非 0 比较,如果结果非零就转移(只能跳到后面的指令)
cmp: 比较指令
b: (branch)跳转到某地址(无返回)
bl: 跳转到某地址(有返回)
ret: 子程序(函数调用)返回指令,返回地址已默认保存在寄存器 lr (x30) 中
学习笔记!
打个广告:

本文详细介绍了ARM汇编语言中的基本指令集,包括mov、add、sub等数据处理指令,str与ldr内存访问指令,cbz、cbnz条件分支指令,ncmp比较指令,b与bl无条件跳转指令及ret返回指令。这些指令是理解ARM架构下程序执行流程的基础。




被折叠的 条评论
为什么被折叠?



