標誌暫存器又稱程式狀態字(外語縮寫:PSW、外語全稱:Program Status Word)。
這是一個16位的存放條件標誌、控制標誌暫存器,主要用於反映處理器的狀態和ALU運算結果的某些特徵及控制指令的執行。
基本介紹
- 中文名:標誌暫存器
- 外文名:Flags Register
- 外語縮寫:FR
符號含義
標誌位(外語縮寫) | 標誌位名稱及外語全稱 | =1 | =0 |
CF | 進位標誌/Carry Flag | CY/Carry/進位 | NC/No Carry/無進位 |
PF | 奇偶標誌/Parity Flag | PE/Parity Even/偶 | PO/Parity Odd/奇 |
AF | 輔助進位標誌/Auxiliary Carry Flag | AC/Auxiliary Carry/進位 | NA/No Auxiliary Carry/無進位 |
ZF | 零標誌/Zero Flag | ZR/Zero/等於零 | NZ/Not Zero/不等於零 |
SF | 符號標誌/Sign Flag | NG/Negative/負 | PL/Positive/非負 |
TF | 跟蹤標誌/Trace Flag | ||
IF | 中斷標誌/Interrupt Flag | EI/Enable Interrupt/允許 | DI/Disable Interrupt/禁止 |
DF | 方向標誌/Direction Flag | DN/Down/減少 | UP/增加 |
OF | 溢出標誌/Overflow Flag | OV/Overflow/溢出 | NV/Not Overflow/未溢出 |
標誌位置
條件標誌:
- 進位標誌:用於反映運算是否產生進位或借位。如果運算結果的最高位產生一個進位或借位,則CF置1,否則置0。運算結果的最高位包括字操作的第15位和位元組操作的第7位。移位指令也會將運算元的最高位或最低位移入CF。
- 奇偶標誌:用於反映運算結果低8位中“1”的個數。“1”的個數為偶數,則PF置1,否則置0。
- 輔助進位標誌:算數操作結果的第三位(從0開始計數)如果產生了進位或者借位則將其置為1,否則置為0,常在BCD(binary-codedecimal)算術運算中被使用。
- 零標誌:用於判斷結果是否為0。運算結果0,ZF置1,否則置0。
- 符號標誌:用於反映運算結果的符號,運算結果為負,SF置1,否則置0。因為有符號數採用補碼的形式表示,所以SF與運算結果的最高位相同。
- 溢出標誌:反映有符號數加減運算是否溢出。如果運算結果超過了8位或者16位有符號數的表示範圍,則OF置1,否則置0。