• 1.摘要
  • 2.基本信息
  • 3.状态寄存器
  • 3.1.PSW标志位定义
  • 3.2.ARM中的程序状态寄存器
  • 3.3.PSW各标志位解释

状态寄存器

状态寄存器又名条件码寄存器,它是计算机系统的核心部件——运算器的一部分,状态寄存器用来存放两类信息:一类是体现当前指令执行结果的各种状态信息(条件码),如有无进位(CF位)、有无溢出(OV位)、结果正负(SF位)、结果是否为零(ZF位)、奇偶标志位(P位)等;另一类是存放控制信息(PSW:程序状态字寄存器),如允许中断(IF位)、跟踪标志(TF位)等。有些机器中将PSW称为标志寄存器FR(Flag Register)。

基本信息

  • 中文名

    状态寄存器

  • 性质

    寄存器

  • 有些机器中

    将PSW称为标志寄存器

  • 又名

    条件码寄存器

状态寄存器

PSW标志位定义

PSW是一个8位二进制寄存器,用来存放指令招待后的有关CPU的状态,通常由CPU来填写,但是用户也可以改变各状态位的值。各标志位定义如下所示:

Bit7 Cy

Bit6 AC

Bit5 F0

Bit4 RS1

Bit3 RS0

Bit2 OV

Bit1 -

Bit0 P

ARM中的程序状态寄存器

在ARM中有6个状态寄存器,ARM7TDMI内核包含1个CPSR和5个供异常处理程序使用的SPSR。CPSR反映了当前处理器的状态,其包含:

4个条件代码标志(负(N)、零(Z)、进位(C)和溢出(V) );

2个中断禁止位,分别控制一种类型的中断;

5个对当前处理器模式进行编码的位;

1个用于指示当前执行指令(ARM还是Thumb)的位。

PSW各标志位解释

1. CY(Carry): 用于表示加法进算中的进位和减法运算中的借位,加法运算中有进位或减法运算中有借位则CY位置为1,否则为0