ARM寄存器简介

[10-10 20:46:00]   来源:http://www.88dzw.com  其它硬件   阅读:8237

文章摘要:在加法指令中(包括比较指令CMN),结果产生进位了,则C=1,表示无符号数运算发生上溢出,其他情况下C=0 在减法指令中(包括比较指令CMP),结果产生借位了,则C=0,表示无符号数运算发生下溢出,其他情况下C=1 对于包含移位操作的非加/减法运算指令,C中包含最后一次被溢出的位的数值,对于其他非加/减法运算指令,C位的值通常不受影响 V 对于加/减法运算指令,当操作数和运算结果为

ARM寄存器简介,标签:其它硬件维修,http://www.88dzw.com
在加法指令中(包括比较指令CMN),结果产生进位了,则C=1,表示无符号数运算发生上溢出,其他情况下C=0

在减法指令中(包括比较指令CMP),结果产生借位了,则C=0,表示无符号数运算发生下溢出,其他情况下C=1

对于包含移位操作的非加/减法运算指令,C中包含最后一次被溢出的位的数值,对于其他非加/减法运算指令,C位的值通常不受影响

V

对于加/减法运算指令,当操作数和运算结果为二进制的补码表示的带符号数时,V=1表示符号位溢出

其他的指令通常不影响V位

 

 

2)Q标志位

在ARM v5的E系列处理器中,CPSR的bit[27]称为Q标志位,主要用于指示增强的DSP指令是否发生了溢出,同样的,SPSR的bit[27]也称为Q标志位,用于在异常中断发生时保存和恢复CPSR中的Q标志位。

3)CPSR中的控制位

CPSR的低8位I、F、T及M[4:0]统称为控制位,当异常中断发生时这些位发生变化。在特权级的处理器模式下,软件可以修改这些控制位。

① I中断禁止位

当I=1时禁止IRQ中断。

当F=1时禁止FIQ中断。

通常一旦进入中断服务程序可以通过置位I和F来禁止中断,但是在本中断服务程序退出前必须恢复原来I、F位的值。

② T控制位,用来控制指令执行的状态,即说明本指令是ARM指令还是Thumb指令。对于不同版本的ARM处理器,T控制位的含义是有些不同的。

对于ARM v3及更低的版本和ARM v4的非T系列版本的处理器,没有ARM和Thumb指令的切换,所以T始终为0。

对于ARM v4及更高版本的T系列处理器,T控制位含义如下。

当T=0,表示执行ARM指令。

当T=1,表示执行Thumb指令。

对于ARM v5及更高的版本的非T系列处理器,T控制位的含义如下。

当T=0表示执行ARM指令。

当T=1表示强制下一条执行的指令产生为定义指令中断。

③ M 控制位

控制位M[4:0]称为处理器模式标识位,具体说明如表1-5所示。

表1?5 CPSR 处理器模式位

M[4:0]

处理器模式

可访问的寄存器

0b10000

User

PC,R14~R0,CPSR

0b10001

FIQ

PC,R14_fiq~R8_fiq,R7~R0,CPSR,SPSR_fiq

0b10010

IRQ

PC,R14_irq~R13_irq,R12~R0,CPSR,SPSR_irq

0b10011

Supervisor

PC,R14_svc~R13_svc,R12~R0,CPSR,SPSR_svc

上一页  [1] [2] [3] [4] [5] [6] [7] [8]  下一页


Tag:其它硬件其它硬件维修电脑技术 - 硬件维修 - 其它硬件

《ARM寄存器简介》相关文章