|

楼主 |
发表于 2010-6-8 15:38:52
|
显示全部楼层
程序状态字PSW:
当单片机进行各种算术或逻辑运算时,为反映运行结果的状态,将相应的标志位置位或复位。这些标志位的状态,可以用专用的指令来测试,也可以通过指令来读出。为程序的流程提供方向和依据。
P:奇偶标志位。
该位始终跟踪累加器A中二进制数据的奇偶性,如果A中有奇数个“1”,则将P置位(=1);当A有偶数个“1”时,则将P复位(=0)。
F1:用户标志位。由用户置位或复位
OV:溢出标志位。
有符号数运算时,如果发生溢出,则OV置位(=1);无溢出时,OV复位(=0)。
对于1B的有符号数,如果用最高位表示正、负号,则只有7位有效位,能表示-128~+127之间的数。如果运算超出了该范围,就会发生溢出,此时,OV置位(=1);如果运算没有溢出,则OV复位(=0)。
在乘法运算中,OV=1(置位)表示乘积超过255,即乘法溢出;在除法运算中,OV=1表示除数为0。
RS0、RS1:工作寄存器组选择位
此二位用来选择当前的工作寄存器组。可以由用户编程,来切换当前的工作寄存器组。
单片机复位后,默认当前的工作寄存器组为第0组(寄存器的地址为00h~07h)。
在实际应用中,可以根据需要来改变此二位的状态,进而选择当前的工作寄存器组。这样的设置为程序中快速保护现场提供了方便。
F0:用户标志位。由用户置位或复位。
AC:半进位标志。当进行加法(减法)运算时,如果低半字节(d3位)向高半字节(d4位)有进位或借位,则AC置位(=1);否则AC复位(=0)。
AC也可以用于BCD码调整时的判别位。
CY(C):进位标志/位累加器。
在进行加法/减法运算时,如果结果的最高位(d7)有进位,则CY置位(=1);否则CY复位(=0)。
在进行位操作时,CY是位操作累加器“C”,是位操作处理中心。
————主要参考书目《单片机应用系统设计技术》 张齐 杜群贵 编著
 |
|