程序状态字(Program Status Word, PSW)是计算机中的一个重要组成部分,用于反映程序执行时的机器所处的现行状态。它主要包括以下内容:
程序当前应执行的指令:
指示下一条需要执行的指令的地址或指针。
当前指令执行的情况:
包括指令执行的结果和状态。
处理机所处的状态:
如运行、停止、等待等。
程序在执行时应屏蔽的中断:
指示哪些中断当前被屏蔽。
寻址方法、编址、保护键:
用于控制指令的寻址方式和内存保护。
响应中断的内容:
包括中断服务例程的入口地址等。
在微机中,程序状态字主要由 指令计数器PC和 处理机状态寄存器PS组成。PC用于存储下一条要执行的指令的地址,而PS则包含了上述的各种状态信息。
具体来说,程序状态字包括的状态位有:
进位标志位(CF)
结果为零标志位(ZF)
符号标志位(SF)
溢出标志位(OF)
陷阱标志位(TF)
中断使能(中断屏蔽)标志位(IF)
虚拟中断标志位(VIF)
虚拟中断待决标志位(VIP)
I0特权级别(IOPL)
这些状态位用于指示处理器的运行状态、指令执行结果以及中断处理情况,从而控制操作系统的调度和程序的执行。通过查看程序状态字,可以了解当前程序的执行状况,包括是否处于中断处理状态、是否允许中断等。