標誌寄存器的作用

用來判斷CPU的狀態。標誌寄存器又稱程序狀態字(外語縮寫:PSW、外語全稱:Program Status Word)。這是一個16位的存放條件標誌、控制標誌寄存器,主要用於反映處理器的狀態和ALU運算結果的某些特徵及控制指令的執行。

標誌寄存器的作用

進位標誌:用於反映運算是否產生進位或借位。如果運算結果的最高位產生一個進位或借位,則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。