版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第9章
輸入輸出與中斷9.1輸入輸出的基本概念輸入輸出是一個完整應(yīng)用程序的重要組成部分,也是交互式應(yīng)用程序不可缺少的組成部分。任何一種輸入/輸出設(shè)備都要通過一個硬件接口或控制器與CPU相連。例如,軟磁盤通過軟盤控制器與CPU相連,終端顯示器通過數(shù)據(jù)接口與CPU相連。這些接口和控制器都能支持輸入/輸出指令與外部設(shè)備交換信息。這些信息包括控制、狀態(tài)和數(shù)據(jù)3種不同性質(zhì)的信息,它們必須按不同的端口地址分別傳送,如圖所示。9.1輸入輸出的基本概念9.1.1I/O端口地址和I/O指令1.I/O端口地址I/O端口(PORT)是CPU與I/O設(shè)備交換數(shù)據(jù)的場所。通過I/O端口,處理機可以接受從輸入設(shè)備輸入的信息,也可向輸出設(shè)備發(fā)送信息。在計算機系統(tǒng)中,用不同的數(shù)字給各類I/O端口進行編號,這種I/O端口的編號就稱為I/O端口地址。2.I/O指令I(lǐng)/O指令應(yīng)屬于數(shù)據(jù)傳送指令。(1)輸入指令I(lǐng)N格式:IN累加器,端口地址9.1輸入輸出的基本概念9.1.1I/O端口地址和I/O指令(2)輸出指令OUT格式:OUT端口地址,累加器功能:把寄存器AL或AX的內(nèi)容輸出到指定端口。如果某輸出設(shè)備的端口地址在0~255范圍之內(nèi),那么可在指令OUT中直接給出;否則,要把端口地址先存入寄存器DX中,然后在指令中由DX來給出其端口地址。因此,輸出指令OUT也有如下4種格式:OUTPORT,AL ;(AL)→PORTOUTPORT,AX ;(AX)→PORT+1,PORT9.1輸入輸出的基本概念9.1.1I/O端口地址和I/O指令OUTDX,AL ;(AL)→DXOUTDX,AX ;(AX)→DX+1,DX這些指令只能起到傳送數(shù)據(jù)的作用。如果要對狀態(tài)寄存器進行測試、設(shè)置等操作,還要取回I/O狀態(tài)數(shù)據(jù)到AL或AX,然后對AL或AX進行測試、設(shè)置等操作,結(jié)果再寫入I/O狀態(tài)寄存器。對I/O端口的操作除了可以利用AL/AX輸入/輸出一個字節(jié)或字外,在32位的系統(tǒng)中還支持通過EAX的雙字?jǐn)?shù)據(jù)操作。9.1輸入輸出的基本概念9.1.2數(shù)據(jù)傳送方式數(shù)據(jù)傳送方式一般分為無條件傳送、程序查詢傳送、中斷傳送、DMA傳送和數(shù)據(jù)通道傳送等5種方式。1.無條件傳送方式無條件傳送方式適用于CPU與外設(shè)同步的情況。這種方式不需要查詢外設(shè)的狀態(tài),而直接用IN或OUT指令實現(xiàn)CPU與指定的外設(shè)寄存器之間的數(shù)據(jù)傳送。采用這種方式時,必須確保外設(shè)與CPU在傳輸數(shù)據(jù)的過程中,具有相同的速度,否則不能準(zhǔn)確地傳送信息。9.1輸入輸出的基本概念9.1.2數(shù)據(jù)傳送方式3.中斷傳送方式在中斷傳送方式中,某一外設(shè)的數(shù)據(jù)準(zhǔn)備就緒后,它“主動”向CPU發(fā)請求中斷的信號,請求CPU暫時中斷目前的工作而進行數(shù)據(jù)交換。當(dāng)CPU響應(yīng)這個中斷時,便暫停運行主程序,并自動轉(zhuǎn)移到該設(shè)備的中斷服務(wù)程序。當(dāng)中斷服務(wù)程序結(jié)束以后,CPU又回到原來的主程序。其原理和調(diào)用子程序相仿,不過,這里要求轉(zhuǎn)移到中斷服務(wù)子程序的請求是由外部設(shè)備發(fā)出的。中斷傳送方式是CPU和外部設(shè)備進行輸入輸出的有效方法。它可以避免因反復(fù)查詢外部設(shè)備的狀態(tài)而浪費時間,從而提高CPU的效率。9.1輸入輸出的基本概念9.1.2數(shù)據(jù)傳送方式4.DMA方式DMA方式即直接存儲器存?。―irectMemoryAccess)方式,也稱為成組數(shù)據(jù)傳送方式。DMA方式主要用于一些高速的I/O設(shè)備,如磁帶、磁盤、模數(shù)轉(zhuǎn)換器(ADC)等設(shè)備。對這類高速I/O設(shè)備,用執(zhí)行輸入/輸出指令的方法或完成一次次中斷序列的方法來傳輸字節(jié),將會造成數(shù)據(jù)的丟失,而DMA方式I/O設(shè)備直接和存儲器進行成批數(shù)據(jù)的快速傳送,傳送數(shù)據(jù)時不需要CPU干預(yù)。在DMA方式下,外設(shè)通過DMA的一種專門接口電路——DMA控制器(DMAC),向CPU提出接管總線控制權(quán)的總線9.1輸入輸出的基本概念9.1.2數(shù)據(jù)傳送方式請求,CPU在當(dāng)前的總線周期結(jié)束后,響應(yīng)DMA請求,把對總線的控制權(quán)交給DMA控制器。5.通道控制傳送方式通道進一步提高了CPU的效率,這是因為通道是一個具有特殊功能的處理器,它有自己的指令和程序?qū)iT負(fù)責(zé)數(shù)據(jù)輸入輸出的傳輸控制,而CPU將“傳輸控制”的功能下放給通道后只負(fù)責(zé)“數(shù)據(jù)處理”功能。這樣,通道與CPU分時使用內(nèi)存,實現(xiàn)了CPU內(nèi)部運算與I/O設(shè)備的并行工作。通道的基本功能是執(zhí)行通道指令、組織外部設(shè)備和內(nèi)存進行數(shù)據(jù)傳輸,按I/O指令要求啟動外部設(shè)備,向CPU報告中斷等。9.2中斷9.2.1中斷的基本概念(1)外部中斷外部中斷又稱為硬中斷,由外設(shè)控制器或協(xié)處理器引起,以完全隨機的方式中斷現(xiàn)行程序而轉(zhuǎn)向中斷處理程序。外部中斷有兩個來源:非屏蔽中斷NMI和可屏蔽中斷INTR。(2)內(nèi)部中斷內(nèi)部中斷又稱為軟中斷,中斷請求來自CPU內(nèi)部,不受中斷允許標(biāo)志控制,主要由以下幾種情況引起:由中斷指令I(lǐng)NT引起的中斷、除法錯中斷、溢出中斷、程序員為調(diào)試程序設(shè)置的中斷,以及單步中斷和斷點中斷。在上述內(nèi)部中斷中,除單步中斷及斷點中斷外,均為非屏蔽中斷。9.2中斷9.2.1中斷的基本概念3.中斷向量表每個中斷源都對應(yīng)著一個中斷處理程序,中斷處理程序的起始地址稱為中斷入口地址,系統(tǒng)將各種中斷處理程序的入口地址放在一起形成一個地址表,稱為中斷向量表,如圖所示。在中斷向量表中,每4個單元的內(nèi)容構(gòu)成一個中斷處理程序的入口地址(中斷向量),其中,前兩個單元存放中斷處理程序的偏移地址IP的值,后兩個單元存放中斷處理程序的段地址CS值。9.2中斷9.2.1中斷的基本概念4.中斷系統(tǒng)的功能實現(xiàn)中斷過程的硬件和軟件稱為中斷系統(tǒng)。中斷系統(tǒng)應(yīng)具有以下功能:(1)實現(xiàn)中斷與返回(2)能實現(xiàn)優(yōu)先級排隊(3)能實現(xiàn)中斷嵌套9.2中斷9.2.1中斷的基本概念執(zhí)行操作:FLAGS送堆棧,清除IF、TF;CS送堆棧,(4×n+2)→CS;IP送堆棧,(4×n)→IP。中斷返回指令格式為:IRET執(zhí)行操作:當(dāng)前棧頂出棧送IP,SP+2→SP;當(dāng)前棧頂出棧送CS,SP+2→SP;當(dāng)前棧頂出棧送FLAGS,SP+2→SP。9.2中斷9.2.1中斷的基本概念7.中斷和子程序調(diào)用的比較中斷和子程序調(diào)用兩者有相似和不同之處。它們的工作過程非常相似,即暫停當(dāng)前程序的執(zhí)行,轉(zhuǎn)而執(zhí)行另一程序段,該程序段執(zhí)行完時,CPU都自動恢復(fù)原程序的執(zhí)行。中斷和子程序調(diào)用在實現(xiàn)方面的主要差異如下:子程序調(diào)用一定是程序員在編寫源程序時事先安排好的,是可知的,而中斷是由中斷源根據(jù)自身的需要產(chǎn)生的,是不可預(yù)見的(用指令I(lǐng)NT引起的中斷除外)。子程序調(diào)用是用CALL指令來實現(xiàn)的,而中斷是由中斷請求產(chǎn)生的。子程序的返回指令是RET,而中斷服務(wù)程序的返回指令是IRET。 9.2中斷9.2.2BIOS中斷調(diào)用1.BIOS概述BIOS(BasicInput/OutputSystem)是系統(tǒng)提供的基本輸入輸出例行程序,它們一般以中斷處理程序的形式存在。BIOS例行程序一般裝載在從地址0FE000H開始的8KBROM中。駐留在ROM中的BIOS提供了系統(tǒng)加電自檢、引導(dǎo)裝入、主要I/O設(shè)備的處理程序以及接口控制等功能模塊來處理所有的系統(tǒng)中斷。下列情況下可考慮使用BIOS中斷:有些功能DOS沒有提供,但BIOS提供了;有些場合無法使用DOS功能調(diào)用;其他原因。9.2中斷9.2.2BIOS中斷調(diào)用(2)打印機I/O中斷調(diào)用(17H中斷調(diào)用)17H中斷調(diào)用有3個功能,功能號為0~2。(3)時鐘中斷調(diào)用(1AH中斷調(diào)用)1AH中斷調(diào)用有兩個功能,功能號為0和1。4.顯示器I/O中斷調(diào)用(1)設(shè)置顯示方式(功能號0)入口參數(shù):(AH)=0,AL為方式編碼。出口參數(shù):無。9.2中斷9.2.2BIOS中斷調(diào)用(2)設(shè)置光標(biāo)大?。üδ芴?)入口參數(shù):(AH)=1,CH為光標(biāo)頂值,取值范圍為0~11,CL為光標(biāo)底值,取值范圍為1~12。出口參數(shù):無。正規(guī)的光標(biāo)符號類似于下劃線,根據(jù)需要,用戶可在規(guī)定范圍內(nèi)調(diào)整光標(biāo)的大小。(3)設(shè)置光標(biāo)位置(功能號2)入口參數(shù):(AH)=2,BH為頁號,DH為行號,DL為列號。出口參數(shù):無。9.2中斷9.2.2BIOS中斷調(diào)用(4)上滾當(dāng)前頁(功能號6)入口參數(shù):(AH)=6,AL為上滾行數(shù)(如果AL=0,則清屏),CH和CL分別為滾動區(qū)左上角的行號和列號,DH和DL分別為滾動區(qū)右下角的行號和列號,BH為從底部進入滾動區(qū)的空白行屬性。出口參數(shù):無。(5)下滾當(dāng)前頁(功能號7)入口參數(shù):(AH)=7,AL為下滾行數(shù)(如果AL=0,則清屏),CH和CL分別為滾動區(qū)左上角的行號和列號,DH和DL分別為滾動區(qū)右下角的行號和列號,BH為從底部進入滾動區(qū)的空白行屬性。出口參數(shù):無。9.2中斷9.2.2BIOS中斷調(diào)用(8)設(shè)置彩色組或背景色(功能號11)入口參數(shù):(AH)=11,BH=0表示設(shè)置背景顏色,BH=1表示設(shè)置彩色組,BL為背景色(0~15)或彩色組(0~1)。其中,彩色組0顏色為綠(1)/紅(2)/棕(3),彩色組1顏色為青(1)/品紅(2)/白(3)。出口參數(shù):無。(9)寫點(功能號12)寫點必須在圖形方式下。入口參數(shù):(AH)=12,DX和CX分別為行號和列號,AL為點的顏色。出口參數(shù):無。9.2中斷9.2.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026廣東佛山順德區(qū)杏壇光輝幼兒園招聘備考題庫及答案詳解(基礎(chǔ)+提升)
- 2026山東發(fā)展智慧園區(qū)投資有限公司派遣制財務(wù)出納崗招聘的1人備考題庫含答案詳解(研優(yōu)卷)
- 2026年河南省事業(yè)單位公開招聘聯(lián)考備考題庫及答案詳解(真題匯編)
- 2026年安徽省合肥市廬江縣沿湖治理建設(shè)管理中心公開選調(diào)工作人員1名備考題庫含答案詳解(黃金題型)
- 2026上半年安徽事業(yè)單位聯(lián)考黃山市休寧縣招聘30人備考題庫含答案詳解(鞏固)
- 上海市理工大附中2026屆高一數(shù)學(xué)第一學(xué)期期末聯(lián)考模擬試題含解析
- 玻璃制品鍍膜工崗前品牌建設(shè)考核試卷含答案
- 纖維碳化裝置操作工安全防護競賽考核試卷含答案
- 丙烯腈裝置操作工風(fēng)險評估與管理知識考核試卷含答案
- 測井繪解工安全操作水平考核試卷含答案
- 2026年山東省威海市單招職業(yè)傾向性測試題庫附答案解析
- 2026新疆伊犁州新源縣總工會面向社會招聘工會社會工作者3人考試備考試題及答案解析
- 2026年《必背60題》抖音本地生活BD經(jīng)理高頻面試題包含詳細(xì)解答
- 駱駝祥子劇本殺課件
- (本科)大學(xué)生勞動教育理論與實踐教程全書電子教案完整版
- 黑龍江省中藥飲片炮制規(guī)范及標(biāo)準(zhǔn)
- 盤口暗語及盤口數(shù)字語言
- QC-提高衛(wèi)生間防水一次驗收合格率
- 彈藥庫防火防爆消防演示
- 大地測量控制點坐標(biāo)轉(zhuǎn)換技術(shù)規(guī)程
- 食材配送服務(wù)方投標(biāo)方案(技術(shù)標(biāo))
評論
0/150
提交評論