freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

ch6輸入輸出和中斷技術(編輯修改稿)

2024-11-04 22:42 本頁面
 

【文章內容簡介】 個設備產生中斷。識別中斷源有兩個方法: ? 軟件查詢。將中斷信號從數(shù)據總線讀入,用程序進行判別,如教材圖 。 ? 中斷矢量法。由中斷源提供中斷類型號, CPU根據類型確定中斷源。( 8086/8088即采用此種方法) )中斷判優(yōu) ? 多個中斷源產生中斷, CPU首先為誰服務? ——中斷優(yōu)先級排隊問題。 ? 中斷優(yōu)先級控制要處理兩種情況: ? 對同時產生的中斷:應首先處理優(yōu)先級別較高的中斷;若優(yōu)先級別相同,則按先來先服務的原則處理; ? 對非同時產生的中斷:低優(yōu)先級別的中斷處理程序允許被高優(yōu)先級別的中斷源所中斷 ——即允許中斷嵌套。 ? 中斷優(yōu)先級的控制方法 ? 硬件判優(yōu) ——鏈式判優(yōu)、并行判優(yōu)(中斷向量法) ? 軟件判優(yōu) ——順序查詢中斷請求,先查詢的先服務(即先查詢的優(yōu)先級別高) ? 通常將 中斷判優(yōu) 與 中斷源識別 合并在一起進行處理。 ? x86系統(tǒng)中,這項任務由 PIC和 CPU共同完成。 INTAin CPU INTA INTR 外設 1 外設 2 外設接口 1 菊花鏈 邏輯電路 外設接口 2 外設 3 外設接口 3 ≥1 菊花鏈 邏輯電路 菊花鏈 邏輯電路 ┇ IREQ IREQ IREQ 中斷確認 鏈式判優(yōu)電路原理圖(教材圖 ) INTAin INTAin 中斷確認 中斷確認 菊花鏈邏輯電路 INTAin IREQ INTR amp。 =1 ≥1 INTAout DB 三態(tài)門 中 斷 向 量 碼 E 外設接口 中斷確認 菊花鏈 邏輯電路 3)中斷響應 ? 在每條指令的最后一個時鐘周期, CPU檢測INTR或 NMI信號。若以下條件成立,則 CPU響應中斷: ? 當前指令執(zhí)行完。對 INTR, 還應滿足以下條件 ? 當前指令是 STI和 IRET,則下條指令也要執(zhí)行完 。 ? 當前指令帶有 LOCK、 REP等指令前綴時,則把它們看成一個整體,要求完整地執(zhí)行完; ? 對 INTR, CPU應處于開中斷狀態(tài),即 IF=1; ? 當前沒有復位 (RESET)和保持 (HOLD)信號。 ? 若 NMI和 INTR 同時發(fā)生,則首先響應 NMI。 3)中斷響應(續(xù)) ? CPU中斷響應時,要做下述三項工作: ? 向中斷源發(fā)出 INTA中斷響應信號; ? 斷點保護,包括 CS、 IP和 PSW( FLAGS)。這主要是保證中斷結束后能返回被中斷的程序。 ? 獲得中斷服務程序首地址(入口)。 如何得到中斷處理程序的首地址? ? 固定入口法 ? 中斷向量法 ——常用 4)中斷處理(中斷服務) ? 中斷服務子程序特點 ? 為 ”遠”過程(類型為 FAR) ? 要用 IRET指令返回 ? 中斷服務子程序要做的工作 ? 保護現(xiàn)場 (PUSH reg’s) ? 開中斷 (STI) ? 進行中斷處理 ? 恢復現(xiàn)場 (POP reg’s) ? 中斷返回 (IRET) 5)中斷返回 ? 執(zhí)行中斷返回指令 IRET ? IRET指令將使 CPU把堆棧內保存的斷點信息彈出到 IP、 CS和 FLAG中,保證被中斷的程序從斷點處能夠繼續(xù)往下執(zhí)行。 IPL IPH CSL CSH FLAGL FLAGH SP IPL IPH CSL CSH FLAGL FLAGH SP IP CS FLAG 進入中斷服務程序時 中斷返回后 8088的中斷系統(tǒng) ? 與中斷有關的控制線為: NMI、 INTR、 INTA ? 8088系統(tǒng)的中斷源 ? 內部中斷 ? 除法溢出:類型號 0,商大于目的操作數(shù)所能表達的范圍時產生。 ? 單步中斷:類型號 1, TF=1時產生(當前指令需執(zhí)行完) ? 斷點中斷:類型號 3,這是一個軟件中斷,即 INT 3指令。 ? 溢出中斷:類型號 4,這是一個軟件中斷,即 INTO指令。 ? 軟件中斷:即 INT n指令,類型號 n(0255)。 ? 外部中斷 ? 非屏蔽中斷 NMI:類型號 2,不可用軟件屏蔽, CPU必須響應它。 ? 可屏蔽中斷 INTR:類型號由 PIC提供。 IF=1時 CPU才能響應。 NMI INTR 中斷邏輯 軟件中斷指令 溢出中斷 除法錯 單步中斷 非屏蔽中斷請求 中斷控 制器 8259A PIC 8086/8088CPU內部邏輯 斷點中斷 8086/8088中斷源類型 可 屏 蔽 中 斷 請 求 n 4 3 0 1 2 中斷源的識別 ? 8088系統(tǒng)采用中斷類型碼來識別不同的中斷源, 每個中斷源都有一個與它相對應的中斷類型碼 。 ? 溢出、斷點、除法溢出、單步、非屏蔽中斷的類型碼為 固定值 ? 軟件中斷的類型碼 由指令給出 ? 可屏蔽中斷的類型碼 由 PIC給出 ? CPU響應 INTR中斷時,會產生兩個中斷響應總線周期 (教材圖 ),要求 PIC在第 2個中斷響應總線周期把中斷類型碼放到數(shù)據總線上,供 CPU讀入。 中斷向量表( IVT) ? 存放各類中斷的 中斷服務程序的入口地址(段和偏移) ——中斷向量 ? 表的地址位于內存的 00000H~ 003FFH,大小為 1KB,共 256個中斷向量 ? 每個中斷向量占用 4 Bytes,低字為段內偏移,高字為段基址 ? 根據中斷類型號 獲得中斷服務程序入口的方法 : (n為 中斷類型號 ) ? 中斷向量在 IVT中的存放地址= 4 n 中斷向量表的初始化 ? 初始化 ——將中斷服務程序的入口地址放入向量表 例:中斷類型碼為 48H的中斷處理子程序的名字為 int48h,編寫程序段將該中斷處理子程序的入口地址放入向量表。 中斷向量表的初始化 CLI MOV AX, 0 MOV DS, AX MOV SI, 48H*4 MOV AX, OFFSET int48h MOV [SI], AX MOV AX, SEG int48h MOV [SI+2], AX STI 8086/8088 CPU的中斷響應過程 ? 內部中斷響應過程 ? 無 INTA周期 ? 中斷類型碼固定或由指令給出 ? 響應過程主要步驟: ① PUSH FLAG ② IF=0 ③ PUSH CS ④ PUSH IP ⑤ 取中斷向量送入 IP和 CS 中斷響應過程(續(xù)) ? 外部中斷響應過程 ? 非屏蔽中斷,與內部中斷響應過程類似 ? 可屏蔽中斷 (時序見教材圖 ) ① INTA( 1) , PIC進行優(yōu)先級排隊判優(yōu)處理 ② INTA( 2) , PIC把中斷類型碼放到 DB上 , CPU讀入 ③ PUSH FLAG ④ IF=0 ⑤ PUSH CS ⑥ PUSH IP ⑦ 取中斷向量送入 IP和 CS 與內部中斷一樣 8088系統(tǒng)中各中斷的優(yōu)先級 ? 優(yōu)先級從高到低順序如下: ? 內部中斷 ? NMI ? INTR ? 單步中斷 N Y N Y N N N N N Y Y 執(zhí)行指令 執(zhí)行完 否 ? 取指令 IF=1? 內部中 斷 ? NMI ? INTR ? TF=1 ? 類型碼 =0~ 255 類型碼 =2 類型碼 =1 中斷響應, 讀回類型碼 FLAG入棧 TEMP←TF TF=TF=0 CS、 IP入棧 計算向量表地址 高字 →CS 低字 →IP 執(zhí)行中斷 服務程序 NMI? TEMP= 1? 轉入中斷服務程序 恢復 CS和 IP 恢復 FLAGS 返回被中斷 的程序 Y Y Y Y N IRET指令的操作 8086/8088的中斷處理流程 NMI、 INTR、單步和除法錯中斷同時產生時的中斷處理過程 DIV TF=1 IF=1 INTR NMI PUSH FLAGS、 CS、 IP CLEAR IF amp。 TF,中斷入口 →CS:IP 除法錯 NMI(IF、 TF = 0) PUSH FLAGS、 CS、 IP CLEAR IF amp。 TF,中斷入口 →CS:IP NMI中斷處理程序 除法錯中斷處理程序 (IF、 TF = 0) 返回 執(zhí)行下條指令 識別出 INTR (IF、 TF = 1) 返回 INTR仍然有效 繼續(xù)單步執(zhí)行程序 INTR中斷處理程序 INTR PUSH FLAGS、 CS、 IP CLEAR IF amp。 TF,中斷入口 →CS:IP 單步 (IF、 TF = 0) PUSH FLAGS、 CS、 IP CLEAR IF amp。 TF,中斷入口 →CS:IP 單步中斷處理程序 (IF、 TF = 0) 返回 (IF、 TF = 1) 返回 可編程中斷控制器 8259A ? PIC, Programmable Interrupt Controller ? 可對 8個中斷源實現(xiàn)優(yōu)先級控制 ? 可擴展至對 64個中斷源實現(xiàn)優(yōu)先級控制 ? 可編程設置不同工作方式 ? 根據中斷源向 x86提供不同中斷類型碼 ? 引腳分配及功能見教材圖 . 8259A的內部結構 ? 8259A的內部結構( 教材圖 ) ? 中斷請求寄存器 IRR ? 保存從 IR0~ IR7來的中斷請求信號,某位 =1表示對應的 IRi有中斷請求 ? 中斷服務寄存器 ISR ? 保存所有正在服務的中斷源,某位 =1表示對應的 IRi中斷正在被服務 ? 中斷屏蔽寄存器 IMR ? 存放中斷屏蔽字,某位 =1表示對應
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1