轉自 http://www.info.swust.edu.cn/wjyl/answer/wd/wd8.htm
8.1 8088/8086中斷向量表的作用是什麼?
【答】中斷向量是中斷服務程序的入口地址。將所有中斷向量集中放在一起,形成中斷向量表。8086系統有256個類型的中斷源。每個類型對應一箇中斷向量,一箇中斷向量由四個字節組成:2個高地址字節:存放中斷服務程序的代碼段的段值;2個低地址字節:存放中斷服務程序的偏移地址。中斷向量表放在內存的地段地址0單元開始的單元:00000H~03FFFH。
8.2 什麼叫中斷向量?它放在哪裏?對應於1CH的中斷向量在哪裏?如1CH中斷程序從5110H:2030H開始,則中斷向量應怎樣存放?
【答】中斷向量是中斷處理子程序的入口地址,它放在中斷向量表中,由1ch*4=70h知中斷向量存放在0000:0070處。由於中斷處理入口地址爲5110:2030所以0070H,0071H,0072H,0073H這四個單元的值分別爲30H,20H,10H,51H。
8.4 敘述可屏蔽中斷的響應過程,一個可屏蔽中斷或者非屏蔽中斷響應後,堆棧頂部四個單元中是什麼內容?
【答】當CPU在INTR引腳上接受一個高電平的中斷請求信號並且當前的中斷允許標誌爲1,CPU就會在當前指令執行完後開始響應外部的中斷請求,具體如下:
1、 從數據總線上讀取外設送來的中斷類型碼,將其存入內部暫存器中;
2、 將標誌寄存器的值推入堆棧;
3、 將標誌寄存器中IF和TF清零;
4、 將斷點保護到堆棧中;
5、 根據中斷類型獲取中斷向量轉入中斷處理子程序;
6、 處理完後恢復現場。
響應後堆棧的頂部4個單元是IP,CS。
8.5 從8086/8088的中斷向量表中可以看到,如果一個用戶想定義某個中斷,應該選擇在什麼範圍?
【答】從8086/8088的中斷向量表中可以看出,由於系統佔用了部分中斷類型碼,主要包括:
(1) 專用中斷:0~4,佔中斷向量表000~013H。
(2) 系統備用中斷:5~31H
(3) 用戶使用中斷:32H~0FFH
如果一個用戶想定義一箇中斷,可以選擇中斷類型碼32H-FFH,其中斷向量在中斷向量表的0C8H-01BFH。