




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、微機(jī)原理與接口技術(shù)微機(jī)原理與接口技術(shù)第第7 7章章 微機(jī)中斷系統(tǒng)微機(jī)中斷系統(tǒng)2中斷系統(tǒng)中斷系統(tǒng)n概述概述n中斷處理過(guò)程中斷處理過(guò)程n中斷優(yōu)先級(jí)和中斷嵌套中斷優(yōu)先級(jí)和中斷嵌套3概述概述中斷的提出中斷的提出中斷的概念中斷的概念中斷的分類中斷的分類4中斷的提出中斷的提出n中斷最初是作為處理器與外部設(shè)備交換中斷最初是作為處理器與外部設(shè)備交換信息的一種信息的一種控制方式控制方式提出的;提出的;n最初的中斷全部是對(duì)外部設(shè)備而言的,最初的中斷全部是對(duì)外部設(shè)備而言的,稱為稱為外部中斷或硬件中斷;外部中斷或硬件中斷;n隨著計(jì)算機(jī)技術(shù)的發(fā)展,為解決機(jī)器內(nèi)隨著計(jì)算機(jī)技術(shù)的發(fā)展,為解決機(jī)器內(nèi)部運(yùn)行時(shí)出現(xiàn)的部運(yùn)行時(shí)出現(xiàn)
2、的異常異常以及為以及為編程方便編程方便提提出了出了內(nèi)部軟件中斷內(nèi)部軟件中斷的概念。的概念。5中斷的概念中斷的概念n中斷:處理器中斷:處理器暫停暫停執(zhí)行當(dāng)前程序,轉(zhuǎn)而處理執(zhí)行當(dāng)前程序,轉(zhuǎn)而處理隨機(jī)隨機(jī)發(fā)生發(fā)生的事件,處理完畢后再的事件,處理完畢后再返回到斷點(diǎn)處返回到斷點(diǎn)處繼續(xù)執(zhí)繼續(xù)執(zhí)行原來(lái)程序的過(guò)程。行原來(lái)程序的過(guò)程。中斷源中斷源中斷中斷請(qǐng)求請(qǐng)求 當(dāng)當(dāng) 前前 程程 序序中斷中斷服務(wù)服務(wù)程序程序程序斷點(diǎn)程序斷點(diǎn)中斷返回中斷返回中斷響應(yīng)中斷響應(yīng)n中斷源中斷源 中斷響應(yīng)中斷響應(yīng) 中斷返回中斷返回 中斷向量表中斷向量表 中斷屏蔽中斷屏蔽 中斷優(yōu)先級(jí)中斷優(yōu)先級(jí) 中斷嵌套中斷嵌套6中斷的分類中斷的分類外部中
3、斷外部中斷(硬件中斷)(硬件中斷)內(nèi)部中斷內(nèi)部中斷(軟件中斷)(軟件中斷)由中斷指令引起的中斷由中斷指令引起的中斷:INT n:INT n由由CPUCPU的某些運(yùn)算錯(cuò)誤引起的中斷的某些運(yùn)算錯(cuò)誤引起的中斷:INTO(4:INTO(4) )或除法錯(cuò)或除法錯(cuò)(0(0) )中斷源中斷源由調(diào)試程序由調(diào)試程序debugdebug設(shè)置的中斷設(shè)置的中斷:TF:TF1 1單步中斷單步中斷(1#)(1#)或斷點(diǎn)中斷或斷點(diǎn)中斷(3(3) )可屏蔽中斷可屏蔽中斷INTRINTR實(shí)時(shí)處理實(shí)時(shí)處理 同步操作同步操作電源故障中斷電源故障中斷動(dòng)態(tài)動(dòng)態(tài)RAMRAM有奇偶校驗(yàn)錯(cuò)誤有奇偶校驗(yàn)錯(cuò)誤I/OI/O通道出現(xiàn)奇偶校驗(yàn)錯(cuò)誤通道
4、出現(xiàn)奇偶校驗(yàn)錯(cuò)誤協(xié)處理器協(xié)處理器80878087有中斷請(qǐng)求有中斷請(qǐng)求不可不可屏蔽中斷屏蔽中斷NMI(2#)NMI(2#)7中斷處理過(guò)程中斷處理過(guò)程nCPUCPU響應(yīng)中斷過(guò)程響應(yīng)中斷過(guò)程n中斷向量表中斷向量表n中斷服務(wù)程序返回中斷服務(wù)程序返回n中斷服務(wù)子程序中斷服務(wù)子程序8CPUCPU響應(yīng)中斷過(guò)程響應(yīng)中斷過(guò)程n中斷中斷請(qǐng)求請(qǐng)求n中斷中斷響應(yīng)響應(yīng)n保護(hù)保護(hù)現(xiàn)場(chǎng)現(xiàn)場(chǎng)狀態(tài)寄存器(狀態(tài)寄存器(PSWPSW)斷點(diǎn)(斷點(diǎn)(CSCS和和IPIP)中斷服務(wù)程序要用到的寄存器的內(nèi)容中斷服務(wù)程序要用到的寄存器的內(nèi)容n進(jìn)入進(jìn)入中斷服務(wù)程序中斷服務(wù)程序n恢復(fù)恢復(fù)現(xiàn)場(chǎng)現(xiàn)場(chǎng)n中斷中斷返回返回與中斷相關(guān)的指令及其執(zhí)行過(guò)程與中
5、斷相關(guān)的指令及其執(zhí)行過(guò)程nINT nn當(dāng)前PSW入棧n IF0;TF0 n斷點(diǎn)地址入棧(先CS,后IP)n取出中斷服務(wù)子程序的入口地址(也稱中斷向量)n 段地址 CSn 偏移地址IP 從而轉(zhuǎn)入中斷處理程序n 注意與子程序調(diào)用指令的區(qū)別9nIRETn斷點(diǎn)地址出棧(先IP,后CS)n標(biāo)志寄存器psw出棧nINTO n相當(dāng)于INT 4溢出中斷,(OF)=1,觸發(fā)nSTI-開(kāi)中斷開(kāi)中斷 ,IF=1n 用于控制可屏蔽中斷請(qǐng)求用于控制可屏蔽中斷請(qǐng)求 是否被響應(yīng)是否被響應(yīng)nCLI-關(guān)中斷關(guān)中斷, IF=01011CPUCPU響應(yīng)中斷過(guò)程響應(yīng)中斷過(guò)程nCPUCPU響應(yīng)外部中斷的條件響應(yīng)外部中斷的條件外設(shè)提出中
6、斷申請(qǐng)(有中斷請(qǐng)求信號(hào))外設(shè)提出中斷申請(qǐng)(有中斷請(qǐng)求信號(hào))本中斷未被屏蔽本中斷未被屏蔽本中斷優(yōu)先級(jí)最高本中斷優(yōu)先級(jí)最高CPUCPU允許中斷(允許中斷(IF=1IF=1)nCPUCPU響應(yīng)中斷要在完成當(dāng)前正在執(zhí)行的指令之后響應(yīng)中斷要在完成當(dāng)前正在執(zhí)行的指令之后n在等待指令或串操作指令時(shí),允許在指令執(zhí)行過(guò)程中進(jìn)在等待指令或串操作指令時(shí),允許在指令執(zhí)行過(guò)程中進(jìn)入中斷,但要在當(dāng)前一個(gè)基本操作完成之后入中斷,但要在當(dāng)前一個(gè)基本操作完成之后n下述情況要執(zhí)行完下一條指令才能響應(yīng)外部中斷下述情況要執(zhí)行完下一條指令才能響應(yīng)外部中斷CPUCPU正在執(zhí)行封鎖指令正在執(zhí)行封鎖指令正在執(zhí)行向段寄存器輸送數(shù)據(jù)的指令正在執(zhí)
7、行向段寄存器輸送數(shù)據(jù)的指令12中斷請(qǐng)求的查詢中斷請(qǐng)求的查詢是否有不可是否有不可屏蔽中斷屏蔽中斷是否有可是否有可屏蔽中斷屏蔽中斷是否有內(nèi)是否有內(nèi)部中斷部中斷是否有單步是否有單步執(zhí)行中斷執(zhí)行中斷是否允許外部中斷是否允許外部中斷13保護(hù)現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)PSW入棧入棧保護(hù)程序保護(hù)程序斷點(diǎn)地址斷點(diǎn)地址允許允許CPU繼續(xù)繼續(xù)響應(yīng)其他中斷響應(yīng)其他中斷檢查是否有不檢查是否有不可屏蔽中斷可屏蔽中斷檢查是否有單檢查是否有單步執(zhí)行中斷步執(zhí)行中斷恢復(fù)現(xiàn)場(chǎng)恢復(fù)現(xiàn)場(chǎng)TF14中斷向量表中斷向量表中斷服務(wù)程序進(jìn)入中斷服務(wù)程序進(jìn)入n問(wèn)題:?jiǎn)栴}:確定是哪個(gè)中斷源發(fā)出的中斷請(qǐng)求信號(hào)確定是哪個(gè)中斷源發(fā)出的中斷請(qǐng)求信號(hào)得到對(duì)應(yīng)的得到對(duì)應(yīng)的
8、中斷服務(wù)程序入口地址中斷服務(wù)程序入口地址-中斷向中斷向量量n解決:解決:中斷類型號(hào):每一個(gè)中斷源分配唯一的中斷中斷類型號(hào):每一個(gè)中斷源分配唯一的中斷類型號(hào)與其對(duì)應(yīng)類型號(hào)與其對(duì)應(yīng)中斷向量表:用來(lái)存放與中斷類型號(hào)對(duì)應(yīng)的中斷向量表:用來(lái)存放與中斷類型號(hào)對(duì)應(yīng)的中斷源的中斷服務(wù)程序的入口地址中斷源的中斷服務(wù)程序的入口地址15中斷向量表中斷向量表n中斷類型號(hào):中斷類型號(hào):8086/80888086/8088系統(tǒng)有系統(tǒng)有256256種類型的中斷,對(duì)應(yīng)類種類型的中斷,對(duì)應(yīng)類型號(hào)型號(hào)0 0FFHFFH(P501P501)。)。00除法出錯(cuò)除法出錯(cuò) 11單步中斷單步中斷22不可屏蔽中斷不可屏蔽中斷 33斷點(diǎn)中斷斷
9、點(diǎn)中斷44溢出中斷溢出中斷 55打印屏幕打印屏幕8 80FH8259A0FH8259A中斷中斷 10H10H1FHBIOS1FHBIOS中斷中斷20H20H3FHDOS3FHDOS中斷調(diào)用中斷調(diào)用n中斷向量表中斷向量表:80868086、80888088中斷系統(tǒng)按中斷類型號(hào)由小到大中斷系統(tǒng)按中斷類型號(hào)由小到大的順序把它們對(duì)應(yīng)的中斷處理程序的入口地址放在一張表的順序把它們對(duì)應(yīng)的中斷處理程序的入口地址放在一張表中,并將它安置在中,并將它安置在內(nèi)存中內(nèi)存中00000H00000H003FFH003FFH的的1K1K空間內(nèi),這空間內(nèi),這張表就稱為中斷向量表(也稱中斷矢量表)張表就稱為中斷向量表(也稱中
10、斷矢量表)每個(gè)中斷向量占每個(gè)中斷向量占4 4個(gè)字節(jié),高個(gè)字節(jié),高2 2個(gè)字節(jié)放中斷入口地址個(gè)字節(jié)放中斷入口地址的的段地址(段地址(CSCS),低,低2 2字節(jié)放字節(jié)放偏移地址(偏移地址(IPIP)中斷向量地址中斷類型號(hào)中斷向量地址中斷類型號(hào)4 416中斷向量表中斷向量表17中斷向量表中斷向量表n供用戶使用的供用戶使用的中斷類型號(hào)中斷類型號(hào)n可由用戶定義為可由用戶定義為軟中斷軟中斷,由,由INT nINT n指令引用指令引用n可通過(guò)可通過(guò)INTRINTR端直接接入可屏蔽中斷端直接接入可屏蔽中斷n可通過(guò)中斷控制器可通過(guò)中斷控制器8259A8259A引入可屏蔽中斷引入可屏蔽中斷n用戶使用中斷類型號(hào)進(jìn)
11、行某種中斷處理用戶使用中斷類型號(hào)進(jìn)行某種中斷處理時(shí),要處理的問(wèn)題時(shí),要處理的問(wèn)題n1、編好所需要的中斷服務(wù)子程序、編好所需要的中斷服務(wù)子程序n2、用戶需要自己將中斷服務(wù)程序用戶需要自己將中斷服務(wù)程序入口地址寫(xiě)入口地址寫(xiě)入中斷向量表,入中斷向量表,中斷向量的裝填方法有兩種中斷向量的裝填方法有兩種指令指令DOSDOS功能調(diào)用功能調(diào)用1819中斷向量表的裝填中斷向量表的裝填指令裝填指令裝填MOV AX,0MOV AX,0;主程序中設(shè)置;主程序中設(shè)置 MOV ES,AXMOV ES,AX MOV BX,NMOV BX,N* *4 4;中斷類型號(hào);中斷類型號(hào)N N MOV AX,OFFSET INTRA
12、DMOV AX,OFFSET INTRAD;置偏移地址;置偏移地址 MOV ES:WORD PTRBX,AXMOV ES:WORD PTRBX,AX MOV AX,SEG INTRADMOV AX,SEG INTRAD;置斷地址;置斷地址 MOV ES:WORD PTRBX+2,AXMOV ES:WORD PTRBX+2,AX STISTI . . . . . . INTRAD: INTRAD: PUSH AXPUSH AX;中斷服務(wù)子程序;中斷服務(wù)子程序 STISTI . . . . . . POP POP AXAX IRETIRET20中斷向量表的裝填中斷向量表的裝填DOSDOS中斷調(diào)用中
13、斷調(diào)用n設(shè)置中斷向量設(shè)置中斷向量把把ALAL中指定的中斷類型號(hào)的中斷向量中指定的中斷類型號(hào)的中斷向量DSDS:DXDX放置在中斷矢量表中放置在中斷矢量表中n預(yù)置預(yù)置AL=AL=中斷類型號(hào)中斷類型號(hào) DS:DX=DS:DX=中斷服務(wù)程序入口地址中斷服務(wù)程序入口地址 AH=25HAH=25Hn執(zhí)行執(zhí)行 INT 21HINT 21Hn取中斷向量取中斷向量把由把由ALAL指定中斷類型號(hào)的中斷向量從中指定中斷類型號(hào)的中斷向量從中斷矢量表中取到斷矢量表中取到ESES:BXBX中中n預(yù)置預(yù)置AL=AL=中斷類型號(hào)中斷類型號(hào) AH=35HAH=35Hn執(zhí)行執(zhí)行 INT 21HINT 21Hn返回:返回:ES:
14、BX=ES:BX=中斷服務(wù)程序入口地址中斷服務(wù)程序入口地址21中斷向量表的設(shè)置中斷向量表的設(shè)置DOSDOS中斷調(diào)用中斷調(diào)用MOV AL,MOV AL,N NMOV AH, MOV AH, 35H35HINT 21HINT 21HPUSH ESPUSH ESPUSH BXPUSH BXPUSH DSPUSH DSMOV AX, MOV AX, SEG INTRADSEG INTRADMOV DS, MOV DS, AXAXMOV DX, MOV DX, OFFSET INTRADOFFSET INTRADMOV AL, MOV AL, N NMOV AH, MOV AH, 25H25HINT 2
15、1HINT 21HPOP DSPOP DSPOP DXPOP DXPOP DSPOP DSMOV AL, MOV AL, N N MOV AH, MOV AH, 25H25HINT 21HINT 21HRETRETIRETIRETINTRAD:INTRAD:恢復(fù)原恢復(fù)原中斷向量中斷向量設(shè)置中斷向量設(shè)置中斷向量取中斷向量取中斷向量到到ES:BXES:BX存原中斷向量存原中斷向量中斷服務(wù)程序中斷服務(wù)程序22中斷向量表中斷向量表中斷類型號(hào)的獲取中斷類型號(hào)的獲取n對(duì)于對(duì)于除法出錯(cuò)、單步中斷、不可屏蔽中斷、斷點(diǎn)中斷、除法出錯(cuò)、單步中斷、不可屏蔽中斷、斷點(diǎn)中斷、溢出中斷溢出中斷,CPUCPU自動(dòng)提供自動(dòng)提
16、供中斷類型號(hào)中斷類型號(hào)0 04 4n用戶自己確定的軟件中斷用戶自己確定的軟件中斷INT nINT n,類型號(hào)由,類型號(hào)由n n決定決定n對(duì)外部可屏蔽中斷對(duì)外部可屏蔽中斷INTRINTR,可用硬件電路設(shè)計(jì)產(chǎn)生中斷,可用硬件電路設(shè)計(jì)產(chǎn)生中斷類型號(hào)類型號(hào)n對(duì)外部可屏蔽中斷對(duì)外部可屏蔽中斷INTRINTR,可以用,可以用8259A8259A獲得中斷類型號(hào)獲得中斷類型號(hào)可屏蔽中斷的響應(yīng)過(guò)程23n INTR=1若IF=1,且無(wú)內(nèi)部中斷,無(wú)NMI,無(wú)總線請(qǐng)求,執(zhí)行完當(dāng)前指令,n發(fā)/INTA=0(通知外設(shè)準(zhǔn)備中斷類型號(hào))n發(fā)/INTA=0,讀取外設(shè)DATA低8位的中斷類型碼,轉(zhuǎn)入中斷處理24內(nèi)部中斷處理過(guò)程及
17、其特點(diǎn):內(nèi)部中斷處理過(guò)程及其特點(diǎn):nb1)程序狀態(tài)字壓入堆棧)程序狀態(tài)字壓入堆棧n (SP)(SP)-2n (SP)+1,(SP) PSWn b2)IF=0,TF=0,以便禁止可屏蔽中斷和單,以便禁止可屏蔽中斷和單步中斷步中斷n b3) 斷點(diǎn)地址壓入堆棧斷點(diǎn)地址壓入堆棧n (SP)(SP)-2n (SP)+1,(SP)(CS)n (SP)(SP)-2n (SP)+1,(SP) (IP)25nb4)取中斷向量)取中斷向量n (IP)=(4*n)n (CS)=(4*n+2)nb5)執(zhí)行中斷服務(wù)程序)執(zhí)行中斷服務(wù)程序nb6)執(zhí)行中斷返回指令)執(zhí)行中斷返回指令I(lǐng)RET,n (IP)(SP)+1,(SP
18、)n (SP)(SP)+2n (CS)(SP)+1,(SP)n (SP)(SP)+2n (PSW)(SP)+1,(SP)n (SP)(SP)+22627中斷服務(wù)程序返回中斷服務(wù)程序返回n通過(guò)通過(guò)中斷返回指令中斷返回指令nIRETIRETn自動(dòng)彈出斷點(diǎn)處指令地址和程序狀態(tài)字自動(dòng)彈出斷點(diǎn)處指令地址和程序狀態(tài)字n使使CPUCPU返回原程序斷點(diǎn)處繼續(xù)執(zhí)行返回原程序斷點(diǎn)處繼續(xù)執(zhí)行28中斷服務(wù)子程序中斷服務(wù)子程序n保護(hù)現(xiàn)場(chǎng),涉及的寄存器入棧;保護(hù)現(xiàn)場(chǎng),涉及的寄存器入棧;n若允許中斷嵌套,用若允許中斷嵌套,用STISTI開(kāi)中斷,使開(kāi)中斷,使IF=1IF=1;n執(zhí)行中斷處理程序;執(zhí)行中斷處理程序;n用用CLI
19、CLI關(guān)中斷,使關(guān)中斷,使IF=0IF=0;n給中斷命令寄存器送中斷結(jié)束命令給中斷命令寄存器送中斷結(jié)束命令EOIEOI,使當(dāng),使當(dāng)前處理的中斷請(qǐng)求標(biāo)志位清零;前處理的中斷請(qǐng)求標(biāo)志位清零;n恢復(fù)現(xiàn)場(chǎng),保護(hù)的寄存器值出棧;恢復(fù)現(xiàn)場(chǎng),保護(hù)的寄存器值出棧;n用用IRETIRET返回主程序。返回主程序。29中斷優(yōu)先級(jí)和中斷嵌套中斷優(yōu)先級(jí)和中斷嵌套n多個(gè)中斷源同時(shí)向多個(gè)中斷源同時(shí)向CPUCPU請(qǐng)求中斷時(shí)請(qǐng)求中斷時(shí),按中斷源的輕重,按中斷源的輕重緩急程度確定的優(yōu)先級(jí)別稱為緩急程度確定的優(yōu)先級(jí)別稱為中斷優(yōu)先級(jí);中斷優(yōu)先級(jí);nCPUCPU先響應(yīng)優(yōu)先級(jí)高先響應(yīng)優(yōu)先級(jí)高的中斷,的中斷,掛起優(yōu)先級(jí)低的掛起優(yōu)先級(jí)低的中斷
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 毛坯店面出租合同協(xié)議書(shū)
- 團(tuán)隊(duì)拓展訓(xùn)練合同協(xié)議書(shū)
- 水果店轉(zhuǎn)讓合同協(xié)議書(shū)
- 友誼合同協(xié)議書(shū)怎么寫(xiě)的
- 美容美發(fā)商業(yè)計(jì)劃書(shū)概述
- ai教育項(xiàng)目計(jì)劃書(shū)
- 廣告投放合同協(xié)議書(shū)樣本
- 中國(guó)注射液用鹵化丁基橡膠塞行業(yè)市場(chǎng)占有率及投資前景預(yù)測(cè)分析報(bào)告
- 親子研學(xué)商業(yè)計(jì)劃書(shū)
- 菜鳥(niǎo)驛站合同協(xié)議書(shū)范本
- 生活中的金融學(xué)智慧樹(shù)知到期末考試答案章節(jié)答案2024年山東理工大學(xué)
- 探索心理學(xué)的奧秘智慧樹(shù)知到期末考試答案章節(jié)答案2024年北京大學(xué)
- 醫(yī)療廢物管理培訓(xùn)課
- 2020年《科學(xué)通史》期末復(fù)習(xí)完整考試題庫(kù)208題(含答案)
- MOOC 國(guó)情分析與商業(yè)設(shè)計(jì)-暨南大學(xué) 中國(guó)大學(xué)慕課答案
- 外科手術(shù)護(hù)士術(shù)前準(zhǔn)備
- (完整版)保證藥品信息來(lái)源合法、真實(shí)、安全的管理措施、情況說(shuō)明及相關(guān)證明
- TBNCY002-2023 西雙版納紅茶 曬紅茶
- 2017-2022年近六年浙江高考英語(yǔ)普通高等學(xué)校招生全國(guó)統(tǒng)一考試(浙江卷)
- 護(hù)理健康教育的重要性
- 管理理論論文(5篇)
評(píng)論
0/150
提交評(píng)論