当前位置: 首页 > article >正文

Linux基础 -- ARM 32位常用机器码(指令)整理

ARM 32位常用机器码(指令)整理

1. 数据处理指令(运算、逻辑、比较)

指令含义示例备注
MOV赋值(寄存器传输)MOV R0, R1直接将 R1 复制到 R0
MVN取反MVN R0, R1R0 = ~R1
ADD加法ADD R0, R1, R2R0 = R1 + R2
ADC带进位加法ADC R0, R1, R2R0 = R1 + R2 + C(进位)
SUB减法SUB R0, R1, R2R0 = R1 - R2
SBC带借位减法SBC R0, R1, R2R0 = R1 - R2 - !C
RSB逆向减法RSB R0, R1, #0R0 = 0 - R1
AND按位与AND R0, R1, R2R0 = R1 & R2
ORR按位或ORR R0, R1, R2`R0 = R1
EOR按位异或EOR R0, R1, R2R0 = R1 ^ R2
BIC按位清除BIC R0, R1, R2R0 = R1 & ~R2
CMP比较CMP R0, R1计算 R0 - R1 并设置标志
TST按位测试TST R0, R1计算 R0 & R1 并设置标志

2. 乘法和除法指令

指令含义示例备注
MUL无符号乘法MUL R0, R1, R2R0 = R1 * R2
MLA乘法累加MLA R0, R1, R2, R3R0 = (R1 * R2) + R3
MLS乘法减法MLS R0, R1, R2, R3R0 = R3 - (R1 * R2)
UMULL无符号长乘法UMULL R0, R1, R2, R3R1:R0 = R2 * R3
SMULL有符号长乘法SMULL R0, R1, R2, R3R1:R0 = R2 * R3
UDIV无符号除法UDIV R0, R1, R2R0 = R1 / R2(ARMv7 以上)
SDIV有符号除法SDIV R0, R1, R2R0 = R1 / R2(ARMv7 以上)

3. 数据传输指令(加载/存储)

指令含义示例备注
LDR加载数据LDR R0, [R1]R0 = *(R1) 读取 R1 指向的内存
STR存储数据STR R0, [R1]*(R1) = R0
LDM批量加载LDMIA R0!, {R1-R3}读取多个寄存器
STM批量存储STMDB R0!, {R1-R3}存储多个寄存器
PUSH入栈PUSH {R0, R1}ARM 栈向低地址增长
POP出栈POP {R0, R1}

4. 分支与跳转指令

指令含义示例备注
B无条件跳转B label
BL过程调用BL function进入子程序,返回地址存 LR
BX返回或跳转BX LR过程返回(ARM/Thumb 切换)
BLX远程跳转BLX R0可能涉及 Thumb 模式

5. 系统控制指令

指令含义示例备注
NOP空指令NOP什么都不做
SVC软中断SVC #0系统调用
MRS读 CPSRMRS R0, CPSR读取状态寄存器
MSR写 CPSRMSR CPSR, R0修改状态寄存器
WFI进入低功耗WFI等待中断

总结

ARM 32 位指令集中,最常用的指令包括:

  • 数据处理MOVADDSUBCMPAND
  • 加载/存储LDRSTRPUSHPOP
  • 分支BBLBX
  • 系统控制NOPSVCMRSMSR

http://www.kler.cn/a/571189.html

相关文章:

  • Deepseek的底层架构思维构成
  • 面试-----每日一题
  • android13打基础: 接收自定义广播并在接收到广播时触发设备震动
  • 3月4日C高级
  • 通往 AI 之路:Python 机器学习入门-线性代数
  • ffmpeg 添加字幕subtitles绝对路径
  • Servlet理论和tomcat(2)http
  • 制服小程序的“滑手”:禁用页面左右滑动全攻略
  • leetcode112-路径总和
  • 练习题:66
  • Python 矩阵对角线操作函数介绍
  • 音频3A测试--AEC(回声消除)测试
  • 什么是线性代数
  • 2025机械考研复试面试问题汇总篇(含13门科目),考研机械复试专业面试常见重点问题总结!考研机械复试专业面试准备看这一篇就够了!
  • 爬虫Incapsula reese84加密案例:Etihad航空
  • 【科研绘图系列】R语言绘制数值的美国地图(USA map)
  • 华为hcia——Datacom实验指南——配置手工模式以太网链路聚合
  • 477页pdf深度剖析!张潼教授的《机器学习算法数学分析》
  • Zookeeper 及 基于ZooKeeper实现的分布式锁
  • 【每日学点HarmonyOS Next知识】网页获取高度、行为菜单底部布局、动画问题、Web跨域加载图片、不随系统深色变化