微机个人笔记-中断
中斷
中斷(異常和隨機性)
?
中斷來源
1.內部中斷(CPU內部的中斷)
a)?異常中斷
b)?軟件中斷
2.外部中斷
a)?可屏蔽中斷(INTR中斷) 高電頻有效
b)?非屏蔽中斷(NMI中斷) 上升沿有效信息
?
主要講解外部中斷
?
外部可屏蔽中斷響應的一般過程
1.中斷請求
a)?外部可屏蔽中斷請求信號:INTR
b)?中斷請求信號應保持到中斷被處理為止
2.中斷源識別及中斷優(yōu)化
a)?軟件查詢法
b)?中斷矢量法
i.?由中斷源提供中斷型號,CPU更具類型確定中斷源
C) 中斷判優(yōu)
i. 低優(yōu)先級的中斷程序允許高優(yōu)先級的中斷源所中斷
ii. 如果優(yōu)先級一樣用排隊法,先來先服務
iii. 中斷控制器(8259A)接入INTR----負責連入外部中斷源管理中斷源誰的優(yōu)先級高,誰的優(yōu)先級低,輸出端連接CPU的INTR。
3.中斷響應
a)?外部可屏蔽中斷響應信號:#INTA
i.?向中斷源發(fā)出#INTA中斷響應信號;
ii.?關中斷->不允許響應其他中斷
iii.?保護硬件現場->將FLAGS壓入堆棧
iv.?保護中斷->將CS、IP壓入堆棧
v.?獲取中斷服務程序入口地址
vi.?都由硬件系統(tǒng)完成
4.中斷處理(服務)
a)?執(zhí)行中斷服務子程序
i.?保護軟件現場(參數)->PUSH完成
ii.?開中斷->可以響應級別更高的中斷請求
iii.?中斷處理
iv.?關中斷
v.?恢復現場
vi.?中斷返回
b)?中斷服務子程序的特點:
i.?為”遠過程”
ii.?用IRET指令返回
5.中斷返回
?
中斷向量表
1.存放各類中斷的中斷服務程序的入口地址;
2.位于內存的00000H~003FFH(一共1KB)
3.每個入口占4Bytes,低字為段內偏移,高字為段基地址
新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產品紅包拿不停!總結
- 上一篇: C/C++ OpenCV之Canny边缘
- 下一篇: 二分法c语言代码(递归、迭代)