標誌暫存器df 關於標誌暫存器的各個標誌

2021-10-19 06:33:33 字數 1736 閱讀 3217

運算結果標誌位

1、進製標誌cf(carry flag)

進製標誌cf主要用來反映運算是否產生進製或借位。如果運算結果的最高位產生了乙個進製或借位,那麼,其值為1,否則其值為0。

使用該標誌位的情況有:多字(位元組)數的加減運算,無符號數的大小比較運算,移位操作,字(位元組)之間移位,專門改變cf值的指令等。

2、奇偶標誌pf(parity flag)

奇偶標誌pf用於反映運算結果中「1」的個數的奇偶性。如果「1」的個數為偶數,則pf的值為1,否則其值為0。

利用pf可進行奇偶校驗檢查,或產生奇偶校驗位。在資料傳送過程中,為了提供傳送的可靠性,如果採用奇偶校驗的方法,就可使用該標誌位。

3、輔助進製標誌af(auxiliary carry flag)

在發生下列情況時,輔助進製標誌af的值被置為1,否則其值為0:

(1)、在字操作時,發生低位元組向高位元組進製或借位時; (2)、在位元組操作時,發生低4位向高4位進製或借位時。

對以上6個運算結果標誌位,在一般程式設計情況下,標誌位cf、zf、sf和of的使用頻率較高,而標誌位pf和af的使用頻率較低。

4、零標誌zf(zero flag)

零標誌zf用來反映運算結果是否為0。如果運算結果為0,則其值為1,否則其值為0。在判斷運算結果是否為0時,可使用此標誌位。

5、符號標誌sf(sign flag)

符號標誌sf用來反映運算結果的符號位,它與運算結果的最高位相同。在微機系統中,有符號數採用補碼表示法,所以,sf也就反映運算結果的正負號。運算結果為正數時,sf的值為0,否則其值為1。

6、溢位標誌of(overflow flag)

溢位標誌of用於反映有符號數加減運算所得結果是否溢位。如果運算結果超過當前運算位數所能表示的範圍,則稱為溢位,of的值被置為1,否則,of的值被清為0。

「溢位」和「進製」是兩個不同含義的概念,不要混淆。如果不太清楚的話,請查閱《計算機組成原理》課程中的有關章節。

標誌暫存器的各個標誌

二、狀態控制標誌位

狀態控制標誌位是用來控制cpu操作的,它們要通過專門的指令才能使之發生改變。

1、追蹤標誌tf(trap flag)

當追蹤標誌tf被置為1時,cpu進入單步執行方式,即每執行一條指令,產生乙個單步中斷請求。這種方式主要用於程式的除錯。

指令系統中沒有專門的指令來改變標誌位tf的值,但程式設計師可用其它辦法來改變其值。

2、中斷允許標誌if(interrupt-enable flag)

中斷允許標誌if是用來決定cpu是否響應cpu外部的可遮蔽中斷發出的中斷請求。但不管該標誌為何值,cpu都必須響應cpu外部的不可遮蔽中斷所發出的中斷請求,以及cpu內部產生的中斷請求。具體規定如下:

(1)、當if=1時,cpu可以響應cpu外部的可遮蔽中斷發出的中斷請求;

(2)、當if=0時,cpu不響應cpu外部的可遮蔽中斷發出的中斷請求。

cpu的指令系統中也有專門的指令來改變標誌位if的值。

3、方向標誌df(direction flag)

方向標誌df用來決定在串操作指令執行時有關指標暫存器發生調整的方向。具體規定在第5.2.11節——字串操作指令——中給出。在微機的指令系統中,還提供了專門的指令來改變標誌位df的值。

跳轉指令

標誌暫存器df 標誌暫存器

cpu內部的暫存器中,有一種特殊的暫存器具有以下三種作用。用來儲存相關指令的某些執行結果 用來為cpu執行相關指令提供行為依據 用來控制cpu的相關工作方式 這種特殊的暫存器在8086cpu種,被稱為標誌暫存器 flag 8086cpu的標誌暫存器有16位,其中儲存的資訊通常被稱為程式狀態字 psw...

暫存器,標誌暫存器

涉及硬體傳輸資料的,往往包含以下內容 1.資料傳輸引腳 資料放 2.控制引腳 怎麼控制 3.狀態引腳 結果如何 暫存器相當於cpu內部的儲存單元,可能是連續排列,相當於 c語言中的陣列。一 8個通用暫存器 16 bit accumulate axah alr0 count cxch clr1 dat...

標誌暫存器

標誌暫存器 標誌暫存器 flags register,fr 又稱程式狀態字 program status word,psw 這是乙個存放條件標誌 控制標誌暫存器,主要用於反映處理器的狀態和運算結果的某些特徵及控制指令的執行 各標誌在標誌暫存器中的位置 條件標誌 cf carry flag 進製標誌 ...