### **6個狀態標志位的功能分別敘述如下:**
**CF(Carry Flag)——進位標志位。**
~~~
當執行一個加法(或減法)運算,使最高位產生進位(或借位)時
CF為1,則為0。
~~~
**PF(Parity Flag)——奇偶標志位。**
~~~
該標志位反映運算結果中1的個數是偶數還是奇數。
當指令執行結果的低8位中含有偶數個1時
PF=1;否則PF=0。
~~~
**AF(Auxiliary carry Flag)——輔助進位標志位。**
~~~
當執行一個加法(或減法)運算,使結果的低4位向高4位有進位(或借位)時,
AF=1;否則AF=0。
~~~
**ZF(Zero Flag)——零標志位。**
若當前的運算結果為零,ZF=1;否則ZF=0。
**SF(Sign Flag)——符號標志位。**
它和運算結果的最高位相同。
**OF(Overflow Flag)——溢出標志位。**
當補碼運算有溢出時,OF=1;否則OF=0。
* * * * *
**3個控制標志位用來控制CPU的操作,由指令進行置位和復位。**
**DF(Direction Flag)——方向標志位。**
~~~
它用以指定字符串處理時的方向,
當該位置“1”時,字符串以遞減順序處理,即地址以從高到低順序遞減。
反之,則以遞增順序處理。
~~~
**IF(Interrupt enable Flag)——中斷允許標志位。**
~~~
它用來控制8086是否允許接收外部中斷請求。
若IF=1,8086能響應外部中斷,反之則不響應外部中斷。
注意:IF的狀態不影響非屏蔽中斷請求(NMI)和CPU內部中斷請求
~~~
**TF(Trap Flag)——跟蹤標志位。**
~~~
它是為調試程序而設定的陷阱控制位。
當該位置“1”時,8086 CPU處于單步狀態,
此時CPU每執行完一條指令就自動產生一次內部中斷。
當該位復位后,CPU恢復正常工作。
~~~