下载此文档

ARM指令系统.docx


文档分类:资格/认证考试 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
ARM指令系统分为六大类
数据传送
数据处理
跳转指令
程序状态寄存器访问指令
异常中断指令
协处理器指令
指令格式
SUBNES R2,R1,R0
SUB操作码,NE可选条件码,S可选更新条件标识码,R2目标寄存器,R1第一操作数,R0第二操作数。
程序状态寄存器CPSR和SPSR
31
30
29
28
27
26-8
7
6
5
4
3
2
1
0
N
Z
C
V
Q
DNM(RAZ)
I
F
T
M
M
M
M
M
标志位N, Z, C, V
N: Negative,如果结果是带符号二进制补码,结果为负时N=1;否则N=0。
Z: Zero,若指令结果为0,则Z=1,通常表示比较结果为“相等”,否则Z=0。
C:Carry,加法时,若产生进位,则C=1,否则Z=0;
减法时,若产生借位,则C=0,否则C=1;
对于结合移位操作的非加减法指令,C为移出值的最后1位。
其他指令C通常不变。
V:oVerflow,对于加减法指令,当发生带符号溢出时,V=1;认为操作数和结果是补码形式的带符号整数。
对于非加减法指令,V通常不变。
ARM条件码
操作码【31:28】
N Z C V
助记符后缀
标志
含义
0000
EQ
Z置位
相等
0001
NE
Z清零
不等
0010
CS/HS
C置位
大于或等于(无符号)
0011
CC/LO
C清零
小于(无符号)
0100
MI
N置位

0101
PL
N清零
正或零
0110
VS
V置位
溢出
0111
VC
V清零
未溢出
1000
HI
C置位且Z清零
大于(无符号)
1001
LS
C清零或Z置位
小于或等于(无符号)
1010
GE
N和V相同
大于等于(有符号)
1011
LT
N和V不同
小于(有符号)
1100
GT
Z清零且N和V相同
大于(有符号)
1101
LE
Z置位或N和V不同
小于等于(有符号)
1110
AL
任何
总是(通常省略)
操作码【31:28】
助记符后缀
标志
含义
0000
EQ
Z置位
相等
0001
NE
Z清零
不等
0010
CS/HS
C置位
大于或等于(无符号)
1000
HI
C置位且Z清零
大于(无符号)
0011
CC/LO
C清零
小于(无符号)
1001
LS
C清零或Z置位
小于或等于(无符号)
0100
MI
N置位

0101
PL
N清零
正或零
0110
VS
V置位
溢出
0111
VC
V清零
未溢出
1010
GE
N和V相同
大于等于(有符号)
1100
GT
Z清零且N和V相同
大于(有符号)
1011
LT
N和V不同
小于(有符号)
1101
LE
Z置位或N和V不同
小于等于(有符号)
1110
AL
任何
总是(通常省略)
ARM指令的寻址方式
立即数寻址
ADD R0,R0,#5 ;R0+5 àR0
0X或&表示16进制数,0b或2_表示二进制数

ARM指令系统 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人w447750
  • 文件大小203 KB
  • 时间2018-03-10