跳转至内容

嵌入式系统/ARM 指令

来自维基教科书,开放的书籍,为了一个开放的世界
ARM 指令集格式
指令类型 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0
跳转和带链接跳转 Cond 1 0 1 L 24 位带符号字偏移量
跳转和带链接跳转以及交换 Cond 0 0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 L 1 Rm
1 1 1 1 1 0 1 H 24 位带符号字偏移量
软件中断 (SWI) Cond 1 1 1 1 24 位(解释)立即数
数据处理指令 Cond 0 0 I 操作码 S Rn Rd 操作数 2
乘法指令 Cond 0 0 0 0 mul S Rd/RdHi Rn/RdLo Rs 1 0 0 1 Rm
统计前导零 Cond 0 0 0 1 0 1 1 0 0 0 0 0 Rd 0 0 0 0 0 0 0 1 Rm
数据传输指令 Cond 0 1 I P U B W L Rn Rd 操作数 2
Cond 0 0 0 P U I W L Rn Rd offsetH 1 S H 1 offsetL
多寄存器传输指令 Cond 1 0 0 P U S W L Rn 寄存器列表
交换内存和寄存器指令 Cond 0 0 0 1 0 B 0 0 Rn Rd 0 0 0 0 1 0 0 1 Rm
状态寄存器 <=> 通用寄存器传输指令 Cond 0 0 0 1 0 R 0 0 1 1 1 1 Rd 0 0 0 0 0 0 0 0 0 0 0 0
Cond 0 0 I 1 0 R 1 0 字段 1 1 1 1 操作数
协处理器数据操作 Cond 1 1 1 0 Cop1 CRn CRd CP# Cop2 0 CRm
协处理器数据传输 Cond 1 1 0 P U N W L Rn CRd CP# 8 位偏移量
协处理器寄存器传输 Cond 1 1 1 0 Cop1 L CRn Rd CP# Cop2 1 CRm
断点指令 1 1 1 0 0 0 0 1 0 0 1 0 x x x x x x x x x x x x 0 1 1 1 x x x x

我们在 ARM 微处理器 中更详细地介绍了如何使用 ARM 指令。

华夏公益教科书