[計算機硬件技術基礎][機械工業(yè)出版社]第8章_中斷技術習題答案
《[計算機硬件技術基礎][機械工業(yè)出版社]第8章_中斷技術習題答案》由會員分享,可在線閱讀,更多相關《[計算機硬件技術基礎][機械工業(yè)出版社]第8章_中斷技術習題答案(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 第八章習題參考答案 8.1 什么是中斷? 采用中斷技術有哪些好處? 答:中斷是指由CPU內(nèi)/外部事件引起或由程序的預先安排,使CPU中斷正在運行的正常程序(主程序),而轉(zhuǎn)到為該內(nèi)部/外部事件或預先安排的事件服務程序,待服務完畢,再返回被暫時中斷的正常程序處繼續(xù)執(zhí)行正常程序的過程。 采用中斷技術,可以使計算機方便地實現(xiàn)如下一些操作: (1)分時操作。有了中斷系統(tǒng),CPU可以命令多個外部設備同時工作,CPU分時控制這些外設,大大提高了CPU的吞吐率。 (2)實現(xiàn)實時處理。當計算機用于實時控制,系統(tǒng)要求計算機為它服務的時間是隨機的,而中斷系統(tǒng)中這種請求--響應模式正好
2、迎合了實時系統(tǒng)的需求。 (3)故障處理。計算機在運行過程中,往往會出現(xiàn)一些故障,如電源掉電、存儲出錯、運算溢出等。有了中斷系統(tǒng),當出現(xiàn)上述情況時,CPU可以隨時轉(zhuǎn)去執(zhí)行故障處理程序,自行處理故障而不必停機。 隨著微型計算機的發(fā)展,中斷系統(tǒng)不斷增加新的功能,中斷系統(tǒng)甚至可以實現(xiàn)計算機系統(tǒng)中軟硬件資源的自動管理。 8.2 什么叫中斷系統(tǒng)?它具備哪些功能? 答:把能夠?qū)崿F(xiàn)中斷全部功能的軟件、硬件的總稱稱為中斷系統(tǒng)。 不同計算機的中斷系統(tǒng),其具體實現(xiàn)可能不盡一樣,但中斷系統(tǒng)的基本功能是相同的。中斷系統(tǒng)的基本功能如下: 1.能實現(xiàn)中斷響應、中斷處理(服務)、中斷返回和中
3、斷屏蔽。這是中斷系統(tǒng)最基本的功能。 2.能實現(xiàn)中斷優(yōu)先級排隊(管理)。即當有多個中斷源同時申請中斷時,CPU如何能夠優(yōu)先響應最緊急的中斷申請。 3.能實現(xiàn)中斷嵌套。即當CPU正在為優(yōu)先級較低的中斷源服務時,具有較高優(yōu)先級的中斷源提出中斷申請,此時中斷系統(tǒng)應當允許較高優(yōu)先級的中斷源中斷較低優(yōu)先級的中斷源,待較高優(yōu)先級的中斷處理完成后,再接著處理較低優(yōu)先級的中斷,這種中斷服務程序再被中斷的過程稱為中斷嵌套。 8.3 何謂非屏蔽中斷和可屏蔽中斷? 答:非屏蔽中斷是指用戶不能用軟件屏蔽的中斷。它是通過8086的NMI引腳進入。非屏蔽中斷不受中斷允許標志IF的影響,當NMI線上一旦有請求
4、時,CPU便在執(zhí)行完當前指令后,立即予以響應。所以,這種中斷通常用來處理系統(tǒng)的緊急事件和重大故障,如系統(tǒng)的掉電處理、內(nèi)存或I/O總線的奇偶錯誤等。 可屏蔽中斷是指用戶可以用指令禁止和允許的中斷。它是來自CPU的INTR端的中斷。當CPU收到可屏蔽中斷請求信號時,是否予以響應取決于中斷允許標志IF的狀態(tài)。若IF=1,則CPU在執(zhí)行完當前指令后,響應中斷請求;若IF=0,則禁止可屏蔽中斷。 可屏蔽中斷通常用于各種外部設備的中斷。微型計算機配置的外部設備一般有硬盤、軟盤、鍵盤、顯示器和打印機等。這些外部設備通過8259A可編程中斷控制器與CPU相連,8259A接收來自外設的中斷請求,由8259A
5、向CPU發(fā)出中斷請求。 8.4 CPU在什么情況下才響應中斷(可屏蔽)? 答:一個可屏蔽中斷若想得到CPU的響應,必須同時滿足以下所有條件: 首先,CPU應收到一個可靠的中斷請求信號,且該中斷請求信號應一直保持到它被響應為止。 其次,在中斷請求的同時,沒有更高級的請求信號發(fā)生。即這個中斷請求應該是當前申請中斷的、且沒有被屏蔽的、優(yōu)先級最高的中斷源。 第三,CPU內(nèi)部應處在開中斷(允許中斷)狀態(tài)。對8086CPU,應設置IF=1。 第四,CPU至少要在當前指令執(zhí)行完成時才可能響應中斷。事實上,CPU只在特定的時刻(當前指令周期最后一個總線周期的最后一個時鐘周期)才采樣有無中斷
6、申請。 第五,如果遇到CPU正在執(zhí)行中斷返回指令(IRET),或CPU正在對中斷資源進行操作(如執(zhí)行STI指令),則要在現(xiàn)行指令執(zhí)行完后接著再執(zhí)行一條其他指令,此后才能響應新的中斷。這么做的目的是為了隔離兩個中斷。 8.5 什么叫中斷優(yōu)先權(級)?有哪些解決中斷優(yōu)先權(級)的辦法? 答:大多數(shù)的處理機系統(tǒng)都是多中斷源—單申請線的系統(tǒng),即多個中斷源共用同一條中斷申請線向CPU申請中斷。因此首先要解決系統(tǒng)中有兩個或兩個以上中斷源同時申請中斷時CPU優(yōu)先響應哪個中斷源的中斷申請問題,即讓哪個中斷源的中斷申請優(yōu)先通過唯一的中斷申請線向CPU申請中斷。為此,提出了中斷優(yōu)先級的概念。CPU總
7、是首先響應當前申請中斷的、最高優(yōu)先權的請求。 軟件查詢中斷源及優(yōu)先級排隊方法。該方法的主要思想是:多個中斷源的中斷申請通過一個“或”邏輯后由同一引腳向CPU申請中斷,同時在中斷接口電路中設置一個中斷請求鎖存器,以保存各個中斷源的中斷申請。CPU中斷響應,在關閉中斷、保護斷點和標志寄存器內(nèi)容后,轉(zhuǎn)入系統(tǒng)唯一的、為所有中斷源所共用的中斷服務程序入口執(zhí)行中斷服務程序,在中斷服務程序中用軟件查詢的辦法查找中斷源,從而將程序轉(zhuǎn)向相應的中斷服務程序。顯然,按照先查到的先服務的思想,軟件查詢的順序就是中斷優(yōu)先級的順序。實現(xiàn)這種軟件查詢中斷源及優(yōu)先級排隊方法所需的硬件接口邏輯非常簡單,改變各中斷源的優(yōu)先級次
8、序也非常方便,但缺點是軟件查詢所需的時間較長。因此這種方法主要用于系統(tǒng)規(guī)模較小、對響應時間要求不太高的場合。 鏈式優(yōu)先權排隊邏輯。多個中斷源的中斷申請通過一個“或”邏輯后由同一引腳向CPU申請中斷,同時設置中斷請求觸發(fā)器以保存各個中斷源的中斷申請。各中斷源還需準備一個唯一標識該中斷源的的標識碼—中斷矢量,已備CPU在響應中斷時根據(jù)此標識碼來判斷中斷的來源以及將要轉(zhuǎn)入的中斷服務程序入口。來自CPU的中斷響應信號通過多個與門逐次向后傳送,形成一個傳送信號的鏈條,稱為菊花鏈。每個中斷源的中斷優(yōu)先級由它們在鏈條中的位置來決定。處于鏈首的中斷源具有最高的優(yōu)先級,鏈尾中斷源的優(yōu)先級最低。在當前申請中斷的
9、中斷源中,只有收到有效信號的中斷源,才有資格打開三態(tài)緩沖器向數(shù)據(jù)總線釋放其中斷矢量。處在鏈條前端的中斷源,可以中斷處于鏈條后端正在進行服務的中斷源。鏈式優(yōu)先權排隊邏輯電路比較簡單,中斷響應速度快(只取決于門電路的延遲時間),但隨著中斷源個數(shù)的增加鏈條的長度也隨之增加,中斷源個數(shù)過多時也影響中斷響應速度并且電路也顯龐大,此外,調(diào)整中斷源的優(yōu)先級次序也比較麻煩。 編碼器和比較器優(yōu)先級排隊邏輯。具有中斷請求寄存、中斷屏蔽、中斷嵌套、自動對中斷源進行編碼并輸出中斷矢量等功能。編碼器和比較器優(yōu)先級排隊邏輯功能齊全、中斷響應速度較快,但硬件比較復雜。 8.6 中斷處理過程一般包括哪些步驟? 中
10、斷處理過程主要包括中斷申請、中斷響應、中斷源識別、中斷服務和中斷返回等幾個階段。圖8-3示出了中斷處理的一般過程。 8.7 什么是中斷類型號?簡述其作用。 答:中斷類型號(碼)是系統(tǒng)為每個中斷源分配的、唯一標識該中斷源的編碼。 當一個中斷被CPU所響應時,中斷邏輯應將該中斷的中斷類型碼(中斷向量)自動送給CPU,CPU根據(jù)該中斷類型號根據(jù)一定方法找到相應的該中斷源的中斷服務程序的入口地址,并將程序轉(zhuǎn)向中斷服務程序。 8.8 什么是中斷響應周期?簡述在中斷響應周期中CPU和8259A一般需要完成的工作。 答:CPU只有在響應外部可屏蔽中斷時,才執(zhí)行2個連續(xù)的中斷響應周期
11、,其目的是:第1個中斷響應周期,外部中斷邏輯準備中斷類型碼,此時CPU使數(shù)據(jù)總線AD0-AD7浮空,第2個響應周期,CPU通過數(shù)據(jù)總線AD0-AD7接收中斷類型號,得到中斷向量表地址。 8.9 8259A的主要功能是什么?內(nèi)部主要的有哪些寄存器?分別完成什么功能? 答:Intel8259A是一片可編程中斷控制器集成電路芯片??删幊淌侵赣脩艨梢杂密浖幊痰霓k法來設定芯片的工作環(huán)境和工作方式,使之芯片適應于各種應用需求。一片8259A可以管理8級中斷,多片8259A級聯(lián)可使中斷最大擴展至64級,每一級中斷都可以屏蔽或允許,8259A在中斷響應周期,可提供相應的中斷類型號,從而迅速轉(zhuǎn)至中斷
12、服務程序,8259A設計有多種工作方式,可以通過編程來選擇,以適應不同的應用場合。 內(nèi)部寄存器:中斷清求寄存器IRR IRR(Interrupt Request Register)是與外部接口的中斷請求線相連的寄存器,請求中斷處理的外部中斷源通過IR0-IR7向8259A申請中斷,并把中斷請求信號鎖存在中斷請求寄存器中。 中斷屏蔽寄存器IMR IMR(Interrupt Mask Register)是一個8位寄存器,用來設置中斷請求的屏蔽信息。當IMR中第i位被屏蔽時(即IMRi=1),禁止IRi發(fā)出的中斷請求信號。 中斷服務寄存器 ISR(Interrupt Service Re
13、gister)用于存放當前正在進行處理的中斷源。ISR的置位是在中斷響應周期,由優(yōu)先權電路(PR)根據(jù)IRR中各申請中斷位的優(yōu)先級別和IMR中屏蔽字的狀態(tài),選取允許中斷的最高優(yōu)先級請求位,選通到ISR中。當中斷處理完畢,ISR的復位由中斷結(jié)束方式?jīng)Q定。 初始化命令字(ICW1-ICW4)寄存器和操作命令字OCW1-OCW3寄存器。 8.10 簡述8086CPU的中斷結(jié)構(gòu)及中斷處理過程。 答:8086具有強有力的中斷系統(tǒng),可以處理256種不同的中斷。如果將這些中斷進行分類,則可以分為兩大類:外部中斷和內(nèi)部中斷。外部中斷是由外部硬件的請求產(chǎn)生的中斷,所以又稱為硬件中斷。內(nèi)部中斷是由指令
14、的執(zhí)行或者軟件對標志寄存器中某個標志的設置產(chǎn)生的中斷,所以又稱為軟件中斷。 8086CPU響應中斷的處理過程如圖8-25所示。 從圖中可以看出,對于類別不同的中斷,CPU的響應次序是不同的。CPU首先響應內(nèi)部中斷,其次是非屏蔽中斷和可屏蔽中斷,最后才響應單步中斷。CPU只有在響應外部可屏蔽中斷時,才執(zhí)行2個連續(xù)的中斷響應周期,其目的是:第1個中斷響應周期,外部中斷邏輯準備中斷類型碼,此時使數(shù)據(jù)總線AD0-AD7浮空,第2個響應周期,CPU通過數(shù)據(jù)總線AD0-AD7接收中斷類型號,得到中斷向量表地址。對于其他類別的中斷,由于其類型號是固定的或由指令的操作數(shù)指定,故不經(jīng)過這一步驟。以下步驟和操
15、作是各類中斷共有的: 1.執(zhí)行—個總線寫周期,將標志寄存器的內(nèi)容壓入堆棧。 2.保存單步標志。將標志寄存器中IF標志和TF標志置0,從而禁止在中斷響應過程中其他可屏蔽中斷進入,禁止單步中斷。 3.執(zhí)行2個總線寫周期。在這2個寫周期內(nèi),分別將CS和IP的內(nèi)容壓入堆棧。 4.執(zhí)行一個總線讀周期。在這個周期中,從向量地址的前兩個字節(jié)中讀取中斷處理程序入口地址的偏移量送IP寄存器。 5.執(zhí)行一個總線讀周期。在這個周期中,從向量地址的后兩個字節(jié)中讀中斷處理程序段基址送CS寄存器。 6.以CS:IP的內(nèi)容所決定的地址為入口地址,轉(zhuǎn)向中斷服務程序。 8.11 8086的中斷源分哪幾類
16、?其優(yōu)先順序如何? 答:8086具有強有力的中斷系統(tǒng),可以處理256種不同的中斷。如果將這些中斷進行分類,則可以分為兩大類:外部中斷和內(nèi)部中斷。外部中斷是由外部硬件的請求產(chǎn)生的中斷,所以又稱為硬件中斷。內(nèi)部中斷是由指令的執(zhí)行或者軟件對標志寄存器中某個標志的設置產(chǎn)生的中斷,所以又稱為軟件中斷。 各類中斷的優(yōu)先級別:內(nèi)部中斷的優(yōu)先級別最高(單步中斷除外),其次是非屏蔽中斷(NMI),單步中斷的優(yōu)先級別最低。 8.12 中斷人口地址表的功能是什么?已知中斷類型碼分別為84H和0FAH,它們的中斷人口在中斷入口地址表的什么位置上? CPU響應任何類型的中斷,都將獲得一個唯
17、一標識該中斷源的中斷類型碼(中斷向量),CPU將根據(jù)該類型碼找到相應的中斷服務程序的入口地址,轉(zhuǎn)向中斷服務程序。我們將中斷類型碼和中斷服務程序入口地址的對應關系稱為中斷向量表。 8086CPU中斷向量表的組織方式是:在內(nèi)存的最前端為256種類型的中斷源建立中斷向量表,依次存放256個中斷源中斷服務程序的入口地址。每個中斷服務程序的入口地址占4個字節(jié),其中2個字節(jié)為其段基地址,另外2個字節(jié)為其段內(nèi)偏移地址。顯然,該中斷向量表占據(jù)內(nèi)存前端00000H-003FFH共1KB的地址空間,如圖8-23所示。值得關注的是,存儲類型i中斷源中斷服務程序入口地址的雙字地址正好是該類型號i乘以4,正是這種對應
18、關系,才使得CPU可以根據(jù)中斷類型號得到中斷服務程序入口地址,從而轉(zhuǎn)入中斷服務程序執(zhí)行中斷處理。 8.13 某一8086CPU系統(tǒng)中,采用一個8259A進行中斷管理。設定8259A工作在普通全嵌套方式.發(fā)送EOI命令結(jié)束中斷,采用邊沿觸發(fā)方式請求中斷,IR0對應的中斷向量號為90H。另外,8259A在系統(tǒng)中的I/O地址是0FFDCH(A0=0)和0FFDEH(Ao=1)。請編寫8259A的初始化程序段。 答:MOV AL , 13H MOV DX , 0FFDCH OUT DX , AL INC DX MOV AL , 90H
19、 OUT DX , AL MOV AL , 01H OUT DX , AL 8.14 下段程序讀出的是8259A的哪個寄存器? MOV AL,0BH OUT 20H,AL NOP IN AL,20H 答:讀出的是ISR的內(nèi)容。 8.15 若在一個系統(tǒng)中有5個中斷源,它們的優(yōu)先排序為:1,2,3,4,5。它們的中斷服務程序人口地址分別為LOOP1、LOOP2、LOOP3、LOOP4、LOOP5。試編寫一中斷服務程序,當有中斷請求CPU響應時,能用軟件查詢辦法轉(zhuǎn)到優(yōu)先權最高的中斷源。 答:5個中斷源共用一個統(tǒng)一的中斷
20、入口,進入中斷服務程序后,先保護現(xiàn)場,查詢中斷狀態(tài),并按1,2,3,4,5的順序依次分別查詢中斷,按先查到先服務,服務完成后,恢復現(xiàn)場,開中斷,返回。 程序略 8.16 某系統(tǒng)中有5個中斷源,它們從中斷控制器8259A的IR3-IR7中以脈沖方式引進系統(tǒng),它們的中斷類型碼分別為4BH,4CH,4DH,4EH和4FH,中斷人口分別為3000:3500H,4000:4080H,5000:4505H,6000:5540H和7000:6000H。允許它們以完全嵌套方式工作,請編寫相應的初始化程序,使CPU響應任何一級中斷時,能正確地進入各自中斷服務程序入口。 答:CLI
21、 ;關中斷 CLD ;方向標置DF=0,串操作時,地址指針增量修改 MOV AX,0 MOV ES,AX ;給ES賦值0,指向0000H段。 MOV DI,4*4BH ;DI指向存儲4BH號中斷服務程序入口地址的雙字地址 MOV AX,3500H ;中斷服務程序偏移值送AX STOSW ;AX送ES:[DI][DI+1]中,DI+2,存入偏移地址 MOV AX,3000H ;中斷服務程序的段基址送Ax
22、 STOSW ;AX送ES:[DI][DI+1],DI+2,存入段基地址 MOV DI,4*4CH ;DI指向存儲4CH號中斷服務程序入口地址的雙字地址 MOV AX,4080H ;中斷服務程序偏移值送AX STOSW ;AX送ES:[DI][DI+1]中,DI+2,存入偏移地址 MOV AX,4000H ;中斷服務程序的段基址送Ax STOSW ;AX送ES:[DI][DI+1],DI+2,存入段基地址 MOV D
23、I,4*4DH ;DI指向存儲4DH號中斷服務程序入口地址的雙字地址 MOV AX,4505H ;中斷服務程序偏移值送AX STOSW ;AX送ES:[DI][DI+1]中,DI+2,存入偏移地址 MOV AX,5000H ;中斷服務程序的段基址送Ax STOSW ;AX送ES:[DI][DI+1],DI+2,存入段基地址 MOV DI,4*4EH ;DI指向存儲4EH號中斷服務程序入口地址的雙字地址 MOV AX,5540H ;中
24、斷服務程序偏移值送AX STOSW ;AX送ES:[DI][DI+1]中,DI+2,存入偏移地址 MOV AX,6000H ;中斷服務程序的段基址送Ax STOSW ;AX送ES:[DI][DI+1],DI+2,存入段基地址 MOV DI,4*4FH ;DI指向存儲4FH號中斷服務程序入口地址的雙字地址 MOV AX,6000H ;中斷服務程序偏移值送AX STOSW ;AX送ES:[DI][DI+1]中,DI+2,存入
25、偏移地址 MOV AX,7000H ;中斷服務程序的段基址送Ax STOSW ;AX送ES:[DI][DI+1],DI+2,存入段基地址 STI ;開中斷 8.17 試編寫出只有一片8259A的8086系統(tǒng)中8259A的初始化程序。8259A的地址為02C0H和02ClH,要求:(1)中斷請求采用電平觸發(fā)。(2)IRQ請求的中斷類型是16。(3)采用緩沖器方式。(4)采用普通的EOI命令。 答:與8.13類似,略 8.18 簡述保護模式下的中斷調(diào)用過程。 答:當CPU響應外部中斷請求或執(zhí)行某條指令產(chǎn)生異常時,根據(jù)中斷或異常的類型號n,從中斷描述符表IDT中找到相應的中斷門,由中斷描述符中的段選擇符指向全局描述符表GDT或局部描述符表LDT中的目標段描述符,此目標段描述符內(nèi)的段基址指向中斷服務程序代碼段的32位基地址,由該基地址與中斷描述符中的偏移量之和形成中斷服務程序的入口。
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年防凍教育安全教育班會全文PPT
- 2025年寒假安全教育班會全文PPT
- 初中2025年冬季防溺水安全教育全文PPT
- 初中臘八節(jié)2024年專題PPT
- 主播直播培訓提升人氣的方法正確的直播方式如何留住游客
- XX地區(qū)機關工委2024年度年終黨建工作總結(jié)述職匯報
- 心肺復蘇培訓(心臟驟停的臨床表現(xiàn)與診斷)
- 我的大學生活介紹
- XX單位2024年終專題組織生活會理論學習理論學習強黨性凝心聚力建新功
- 2024年XX單位個人述職述廉報告
- 一文解讀2025中央經(jīng)濟工作會議精神(使社會信心有效提振經(jīng)濟明顯回升)
- 2025職業(yè)生涯規(guī)劃報告自我評估職業(yè)探索目標設定發(fā)展策略
- 2024年度XX縣縣委書記個人述職報告及2025年工作計劃
- 寒假計劃中學生寒假計劃安排表(規(guī)劃好寒假的每個階段)
- 中央經(jīng)濟工作會議九大看點學思想強黨性重實踐建新功