【干货来袭】arm程序汇编指令总结,让你更高效的学习!

大家好,今天给大家介绍【干货来袭】arm程序汇编指令总结,让你更高效的学习!,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!可进群免费领取。

ARM汇编指令是嵌入式和移动开发中的重要组成部分。以下是一些常用的ARM汇编指令的总结,帮助你更高效地学习:

数据处理指令

  1. MOV:数据传送指令,将一个值复制到寄存器中。

assembly
MOV R0, #10 ; 将立即数10传送到R0寄存器

ADD:加法指令,将两个操作数相加,并将结果存放到目的寄存器中。

assembly复制代码
ADD R0, R1, R2 ; 将R1和R2的内容相加,结果存放在R0中
  1. SUB:减法指令,从第一个操作数中减去第二个操作数,并将结果存放到目的寄存器中。

assembly复制代码
SUB R0, R1, R2 ; 从R1中减去R2的内容,结果存放在R0中
  1. ANDORXOR:位逻辑运算指令,分别执行与、或、异或操作。

assembly复制代码
AND R0, R1, R2 ; R0 = R1 AND R2
OR R0, R1, R2 ; R0 = R1 OR R2
XOR R0, R1, R2 ; R0 = R1 XOR R2
  1. LSLLSRASR:移位指令,分别执行逻辑左移、逻辑右移和算术右移操作。

assembly复制代码
LSL R0, R1, #2 ; R0 = R1 << 2
LSR R0, R1, #2 ; R0 = R1 >> 2 (逻辑右移)
ASR R0, R1, #2 ; R0 = R1 >> 2 (算术右移)
  1. MUL:乘法指令,将两个寄存器的内容相乘,并将结果存放到目的寄存器中。

assembly复制代码
MUL R0, R1, R2 ; R0 = R1 * R2
  1. CMP:比较指令,用于设置条件标志,以便后续的条件分支指令使用。

assembly复制代码
CMP R0, R1 ; 比较R0和R1的值,并设置条件标志

分支指令

  1. B:无条件分支指令,跳转到指定的地址执行。

assembly复制代码
B Label ; 无条件跳转到Label标签处执行
  1. BL:带链接的无条件分支指令,在跳转到指定地址执行前,将返回地址保存到链接寄存器LR中。
  2. BEQBNEBCSBCCBMIBPLBVSBVCBHIBLSBGEBLTBGTBLE:条件分支指令,根据条件标志的状态决定是否跳转。
  3. CBZ 和 CBNZ:比较并分支指令,如果寄存器为零(或非零),则跳转到指定地址。
  4. TBB 和 TBH:表格分支指令,根据寄存器中的值作为偏移量来计算跳转地址。

加载和存储指令

  1. LDR:从内存中加载数据到寄存器中。
  2. STR:将寄存器中的数据存储到内存中。
  3. LDMIA 和 STMIA:多寄存器加载和存储指令,用于批量加载或存储多个寄存器的内容。
  4. LDRBLDRHLDRSBLDRSH:按字节或半字加载数据,并可选择进行符号扩展。
  5. STRB 和 STRH:按字节或半字存储数据。
  6. LDM 和 STM:多寄存器加载和多寄存器存储指令的另一种形式。
  7. PUSH 和 POP:用于模拟堆栈操作的伪指令,实际上是LDMIA和STMIA的特例。

协处理器指令

用于与协处理器进行交互的指令集,如浮点运算单元(FPU)等。这些指令通常与具体的硬件实现相关。

其他指令和伪指令

  1. NOP:无操作指令,不执行任何操作。通常用于插入延时或占位。
  2. SWI 或 SVC:软件中断指令,用于调用操作系统服务或执行特定的系统调用。
  3. .global.section.ascii 等:汇编器伪指令,用于控制汇编过程或定义数据段等。
  4. MACRO 和 MEND:宏定义

嵌入式物联网需要学的东西真的非常多,千万不要学错了路线和内容,导致工资要不上去!

分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!

点击找小助理免费领取资料

扫码进群领资料icon-default.png?t=N7T8https://ad.pdb2.com/l/16QijNiGb32IFIn

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值