求真百科欢迎当事人提供第一手真实资料,洗刷冤屈,终结网路霸凌。

程序状态字寄存器查看源代码讨论查看历史

事实揭露 揭密真相
跳转至: 导航搜索
程序状态字寄存器

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

基本信息

中文名称 程序状态字寄存器 [2]

来源 运算器

作用 存放信息

标志 根据用户需要来确定

组成原件

51单片机的PSW是一个8位寄存器,用来存放指令执行后的一些的状态,通常由CPU来填写,但是用户也可以改变各状态位的值。各标志位定义如下所示:

Bit7 Cy

Bit6 AC

Bit5 F0

Bit4 RS1

Bit3 RS0

Bit2 OV

Bit1 -

Bit0 P

主要内容

1. CY(Carry):

CY表示加法运算中的进位和减法运算中的借位,加法运算中有进位或减法运算中有借位则CY位置1,否则为0。

2. AC(Auxiliary Carry):

与CY基本相同,不同的是AC表示的是低4位向高4位的进、借位。

3.F0:

该位是用户自己管理的标志位,用户可以根据自己的需要来设定。

4. RS1、RS0:

这两位用于选择当前工作寄存器区。8051有8个8位寄存器R0~R7,它们在RAM中的地址可以根据用户需要来确定。

RS1 RS0:R0~R7的地址

0 0: 00H~07H

0 1: 08H~0FH

1 0: 10H~17H

1 1: 18H~1FH

5.OV:

该位表示运算是否发生了溢出。若运算结果超过了8位有符号数所能表示的范围,即-128 ~ +127,则 OV = 1。

6.P:

P是奇偶标志位。若累加器A中1的个数为奇数,则P = 1;若累加器A中1的个数为偶数,则P = 0。

参考来源