可禁止中斷標誌

可禁止中斷標誌

可禁止中斷標誌(interrupt flag,IF),當IF位為1時,允許CPU回響可禁止中斷請求,否則關閉中斷。在標誌位的符號表示中,IF=1時用EI表示,IF=0時用DI表示。IF暫存在FLAGS中。FLAGS為標誌位暫存器,又稱程式狀態暫存器(program status word ,PSW)。這是一個存放條件碼標誌、控制標誌和系統標誌的暫存器。

基本介紹

  • 中文名:可禁止中斷標誌
  • 外文名:Maskable interrupt flag
  • 符號:IF
  • 開中斷時:IF=1,使能全局中斷
  • 關中斷時:IF=0,禁止全局中斷
  • 歸屬技術:中斷技術
CPU回響中斷的兩個控制條件,中斷禁止技術,多重中斷的概念,實現多重中斷的條件,禁止技術,可禁止中斷處理過程中的標誌位的處理,

CPU回響中斷的兩個控制條件

從外設發出中斷請求到cpu回響中斷,有兩個控制條件是起決定性作用的,一是該外設的中斷請求是否禁止,另一個是CPU是否允許回響中斷。這兩個條件分別是由中斷禁止暫存器(IMR)和標誌暫存器(FLAGS)中的中斷允許位(IF)控制。
中斷禁止暫存器的I/O連線埠地址是21H,它的8位對應控制8個外部設備,通過設定這個暫存器的某位為0或者1來允許或禁止某外部設備的中斷。某位為0表示允許某種外設中斷請求,某位為1表示某種外設的中斷請求被禁止。在編寫中斷程式時,應在主程式的初始化部分設定好中斷禁止暫存器 ,以確定允許用中斷方式工作的外部設備。
外部設備向CPU發出中斷請求,CPU是否回響還與標誌暫存器中的中斷標誌位IF有關。如果IF等於0,cpu就禁止回響任何外設的中斷,也就是說,CPU將不會產生中斷來處理外設的請求。如果IF等於1,則允許CPU回響外設的中斷請求。

中斷禁止技術

中斷禁止技術主要用於多重中斷。

多重中斷的概念

當CPU正在執行某個中斷服務程式時,另一個中斷源又提出了新的中斷,而且此中斷的優先權比正在運行的服務程式高,CPU回響了這個新的請求,暫時停止正在運行的服務程式,轉去執行新的中斷服務程式,這稱為多重中斷,又稱中斷嵌套;如果新中斷服務程式的優先權比正在運行的服務程式低,CPU則不會回響這個新的請求。如果與優先度無關,CPU對所有新的請求都不予回響,待執行完當前的服務程式後再回響,即為單重中斷,中斷系統若要具有處理多重中斷的功能,必須具備各項條件。

實現多重中斷的條件

提前設定開中斷指令
CPU進入中斷周期後,由中斷隱指令自動將使能全局中斷標誌位置零,即關中斷,這就意味著CPU在執行中斷服務程式中禁止回響新的中斷請求。CPU若想再次回響中斷請求,必須開中斷,這一任務通常由中斷服務程式中的開中斷指令實現。
優先權別高的中斷源有權中斷優先權別低的中斷源
為了保證級別低的中斷源不干擾比其級別高的中斷源的中斷處理過程。可採用禁止技術

禁止技術

當中斷源被禁止(禁止觸發器mask=1),此時即使完成觸發器D=1,中斷查詢信號到來時刻只能將中斷請求觸發器INTR置“0”,CPU接收不到該中斷源的中斷請求,即它被禁止。若該中斷源未被禁止(mask=0),當設備工作已完成時(D=1),中斷查詢信號則將INTR置“1”,表示該中斷源向CPU發出中斷請求,該信號送至排隊器進行優先權判斷。

可禁止中斷處理過程中的標誌位的處理

微處理器獲得外部中斷源的中斷號後,把標誌暫存器FLAGS壓入堆疊,並置IF=0,關閉中斷;置陷阱標誌(當陷阱標誌被設定為1時,CPU進入單步模式,所謂單步模式就是CPU在每執行一步指令後都產生一個單步中斷。主要用於程式的調試)為0,防止單步執行。中斷服務程式執行完畢之後,要返回主程式,因此,要恢復斷點和標誌暫存器的內容。

相關詞條

熱門詞條

聯絡我們