微機(jī)原理課后題標(biāo)準(zhǔn)答案_第1頁
微機(jī)原理課后題標(biāo)準(zhǔn)答案_第2頁
微機(jī)原理課后題標(biāo)準(zhǔn)答案_第3頁
微機(jī)原理課后題標(biāo)準(zhǔn)答案_第4頁
微機(jī)原理課后題標(biāo)準(zhǔn)答案_第5頁
已閱讀5頁,還剩71頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、2微機(jī)原理 課后題 答案作者: 日期:第一章 微型計(jì)算機(jī)概述微處理器、微型計(jì)算機(jī)和微型計(jì)算機(jī)系統(tǒng)三者之間有什么不 同?答: 微處理器是微型計(jì)算機(jī)的核心,是微型計(jì)算機(jī)的一部分。它是集成在一 塊芯片上的 CPU,由運(yùn)算器和控制器組成。微型計(jì)算機(jī)包括微處理器、 存儲(chǔ)器、 I/O 接口和系統(tǒng)總線,是微型計(jì)算機(jī)系統(tǒng)的 主體。微型計(jì)算機(jī)系統(tǒng)包括微型計(jì)算機(jī)、外設(shè)及系統(tǒng)軟件三部分。CPU 在內(nèi)部結(jié)構(gòu)上由哪幾部分組成? CPU 應(yīng)具備哪些主要功 能?答: 1.CPU 在內(nèi)部結(jié)構(gòu)上由以下幾部分組成:算術(shù)邏輯部件 (ALU) ;累加器和通用寄存器組;程序計(jì)數(shù)器 (指令指針 )、指令寄 存器和譯碼器;時(shí)序和控制部件。

2、CPU 應(yīng)具備以下主要功能: 可以進(jìn)行算術(shù)和邏輯運(yùn)算; 可保存少量數(shù)據(jù); 能對指令進(jìn)行譯碼并執(zhí)行規(guī)定的動(dòng) 作;能和存儲(chǔ)器、外設(shè)交換數(shù)據(jù);提供整個(gè)系統(tǒng)所需要的定時(shí)和控制;可以響應(yīng) 其他部件發(fā)來的中斷請求。累加器和其他通用寄存器相比,有何不同? 答:許多指令的執(zhí)行過程以累加器為中心;輸入 / 輸出指令一般也以累加器來完 成。微處理器的控制信號(hào)有哪兩類? 答:一類是通過對指令的譯碼,由 CPU 內(nèi)部產(chǎn)生的。這些信號(hào)由 CPU 送到存儲(chǔ) 器、I/O 接口電路和其他部件。 另一類是微型機(jī)系統(tǒng)的其他部件送到 CPU 的。通 常用來向 CPU 發(fā)出請求。如中斷請求、總線請求等。微型計(jì)算機(jī)采用總線結(jié)構(gòu)有什么優(yōu)

3、點(diǎn)? 答:首先是系統(tǒng)中各功能部件之間的相互關(guān)系變?yōu)楦鱾€(gè)部件面向總線的單一關(guān) 系。其次是一個(gè)部件只要符合總線標(biāo)準(zhǔn), 就可以連接到采用這種總線標(biāo)準(zhǔn)的系統(tǒng) 中,使系統(tǒng)功能得到擴(kuò)充。數(shù)據(jù)總線和地址總線在結(jié)構(gòu)上有什么不同之處?如果一個(gè)系統(tǒng) 的數(shù)據(jù)和 地址合用一套總線或者合用部分總線,那么,要靠什 么來區(qū)分地址或數(shù)據(jù)?答: 1.數(shù)據(jù)總線是雙向三態(tài);地址總線是單向輸出三態(tài)。數(shù)據(jù)和地址復(fù)用時(shí), 必須有一個(gè)地址選通信號(hào)來區(qū)分該總線上輸出的是地址還 是數(shù)據(jù)??刂瓶偩€傳輸?shù)男盘?hào)大致有哪幾種?答:包括 CPU 送往存儲(chǔ)器和 I/O 接口的控制信號(hào),如讀信號(hào)、寫信號(hào)、中斷響 應(yīng)信號(hào)、存儲(chǔ)器和 I/O 接口區(qū)分信號(hào)等。還

4、包括其他部件送到 CPU 的信號(hào),如 時(shí)鐘信號(hào)、中斷請求信號(hào)、準(zhǔn)備就緒信號(hào)等。第二章 8086 微處理器總線接口部件有哪些功能?請逐一進(jìn)行說明。答: 1.總線接口部件的功能是負(fù)責(zé)與存儲(chǔ)器、 I/O 端口傳送數(shù)據(jù)。具體講: 總線接口部件要從內(nèi)存取指令送到指令隊(duì)列; CPU 執(zhí)行指令時(shí),總線接口部件要配合執(zhí)行部件從指定的內(nèi)存單元或者外設(shè) 端口中取數(shù)據(jù), 將數(shù)據(jù)傳送給執(zhí)行部件, 或者把執(zhí)行部件的操作結(jié)果傳送到指定 的內(nèi)存單元或外設(shè)端口中。8086 的總線接口部件由哪幾部分組成?答:4 個(gè)段地址寄存器 CS、DS、ES、SS;16 位的指令指針寄存器 IP;20 位的 地址加法器; 6 字節(jié)的指令隊(duì)列

5、。段寄存器 CS=1200H,指令指針寄存器 IP=FF00H ,此時(shí),指令 的物理地址 為多少?指向這一物理地址的 CS 值和 IP 值是唯一 的嗎? 答: 1.該指令的物理地址 =CS10H+IP=21F00H。指向這一物理地址的 CS值和 IP 值不是唯一的。8086 的執(zhí)行部件有什么功能?由哪幾部分組成?答: 1.8086的執(zhí)行部件的功能是負(fù)責(zé)指令的執(zhí)行。4 個(gè)通用寄存器 AX 、BX 、CX 、DX ;4 個(gè)專用寄存器 BP、SP、SI、DI ;標(biāo)志 寄存器 FLAGS 和算術(shù)邏輯單元 ALU 。狀態(tài)標(biāo)志和控制標(biāo)志有何不同?程序中是怎樣利用這兩類標(biāo)志 的? 8086的狀態(tài)標(biāo)志和控制標(biāo)

6、志分別有哪些? 答:1.不同之處在于:狀態(tài)標(biāo)志由前面指令執(zhí)行操作的結(jié)果對狀態(tài)標(biāo)志產(chǎn)生影響, 即前面指令執(zhí)行操作的結(jié)果決定狀態(tài)標(biāo)志的值??刂茦?biāo)志是人為設(shè)置的。 2.利用狀態(tài)標(biāo)志可進(jìn)行計(jì)算和判斷等操作。 利用控制標(biāo)志可對某一種特定功能 (如 單步操作、可屏蔽中斷、串操作指令運(yùn)行的方向 )起控制作用。 3.8086的狀態(tài)標(biāo)志有: SF、ZF、PF、CF、AF 和 OF計(jì) 6個(gè)。 8086的控制標(biāo)志有: DF、IF、TF計(jì) 3個(gè)。8086/8088 和傳統(tǒng)的計(jì)算機(jī)相比在執(zhí)行指令方面有什么不同? 這樣的設(shè)計(jì)思想有什么優(yōu)點(diǎn)? 答:1.傳統(tǒng)的計(jì)算機(jī)在執(zhí)行指令時(shí), 指令的提取和執(zhí)行是串行進(jìn)行的。 8086/8

7、088 CPU 的總線接口部件和執(zhí)行部件在提取和執(zhí)行指令時(shí)是并行同時(shí)工作的。 2.8086/8088 CPU的設(shè)計(jì)思想有力地提高了 CPU 的工作效率,這也正是 8086/8088 成功的原因之一。總線周期的含義是什么? 8086/8088 的基本總線周期由幾個(gè)時(shí) 鐘組成?如一個(gè) CPU 的時(shí)鐘頻率為 24MHz ,那么,它的一個(gè) 時(shí)鐘周期為多少?一個(gè)基本總線周期為多少?如主頻為 15MHz 呢? 答:1.總線周期的含義是總線接口部件完成一個(gè)取指令或傳送數(shù)據(jù)的完整操作所 需的最少時(shí)鐘周期數(shù)。2.8086/8088的基本總線周期由 4 個(gè)時(shí)鐘周期組成。當(dāng)主頻為 24MHz 時(shí),T=1/24MHz

8、41.7ns,T 總=4T167ns。當(dāng)主頻為 15MHz 時(shí),T=1/15MHz66.7ns,T 總=4T267ns。在總線周期的 T1、T2、T3、T4狀態(tài),CPU 分別執(zhí)行什么動(dòng)作? 什么情況下 需要插入等待狀態(tài) TW ?TW 在哪兒插入?怎樣插 入? 答: 1.在總線周期的 T1、T2、T3、T4 狀態(tài), CPU分別執(zhí)行下列動(dòng)作: T1 狀態(tài): CPU 往多路復(fù)用總線上發(fā)出地址信息,以指出要尋找的存儲(chǔ)單元或外 設(shè)端口的地址。T2狀態(tài):CPU從總線上撤銷地址,而使總線的低 16 位浮置成高阻狀態(tài),為傳輸數(shù)據(jù)做準(zhǔn)備??偩€的高 4 位(A19A16)用來輸出本總線周期的狀態(tài)信息。 T3狀態(tài):

9、多路總線的高 4位繼續(xù)提供狀態(tài)信息。低 16位(8088為低 8位)上出現(xiàn) 由 CPU 寫出的數(shù)據(jù)或者 CPU 從存儲(chǔ)器或端口讀入的數(shù)據(jù)。T4狀態(tài):總線周期結(jié)束。當(dāng)被寫入數(shù)據(jù)或者被讀取數(shù)據(jù)的外設(shè)或存儲(chǔ)器不能及時(shí)地配合CPU 傳送數(shù)據(jù)。這時(shí),外設(shè)或存儲(chǔ)器會(huì)通過“ READY ”信號(hào)線在 T3狀態(tài)啟動(dòng)之前向 CPU 發(fā)一 個(gè)“數(shù)據(jù)未準(zhǔn)備好的信號(hào)” ,于是 CPU 會(huì)在 T3 之后插入一個(gè)或多個(gè)附加的時(shí)鐘 周期 TW。TW插在 T3狀態(tài)之后,緊挨著 T3 狀態(tài)。插入的 TW 狀態(tài)時(shí)的總線上的信息情況和 T3 狀態(tài)的信息情況一樣。當(dāng) CPU 收 到存儲(chǔ)器或外設(shè)完成數(shù)據(jù)傳送時(shí)發(fā)出的“準(zhǔn)備好”信號(hào)時(shí),會(huì)自

10、動(dòng)脫離TW 狀態(tài)而進(jìn)入 T4 狀態(tài)。從引腿信號(hào)上看, 8086和 8088 有什么區(qū)別? 答: 8086有16根數(shù)據(jù)/地址復(fù)用總線, 8088只有8根,稱 AD 7AD 0。 8086的第28腿為M/ IO,8088的第28腿為M/ IO (為兼容 8080等)。 8086的第 34腿為BHE /S7,8088的第 34腿為SS0 。在對存儲(chǔ)器和 I/O 設(shè)備讀寫時(shí),要用到 IOR 、 IOW 、 MR 、MW 信號(hào),這些信號(hào)在最大模式和最小模式時(shí)分別可用怎樣的電路得到?請畫出示意圖答: 1.最小模式(以 8086為例):最大模式:用 8288 總線控制器來實(shí)現(xiàn)。CPU 啟動(dòng)時(shí),有哪些特征?如

11、何尋找 8086/8088 系統(tǒng)的啟動(dòng)程 序?答: 1.CPU 啟動(dòng)時(shí),有以下特征: 內(nèi)部寄存器等置為初值; 禁止中斷 (可屏蔽中斷 ); 從 FFFF0H 開始執(zhí)行程序;三態(tài)總線處于高阻狀態(tài)。2.8086/8088系統(tǒng)的啟動(dòng)程序從 FFFF0H 單元開始的無條件轉(zhuǎn)移指令轉(zhuǎn)入執(zhí)行。CPU 在 8086 的微機(jī)系統(tǒng)中,為什么常用 AD 0作為低 8 位數(shù)據(jù) 的選通信號(hào)?答:因?yàn)槊慨?dāng) CPU 和偶地址單元或偶地址端口交換數(shù)據(jù)時(shí),在 T1狀態(tài), AD0引 腿傳送的地址信號(hào)必定為低電平。而 CPU 的傳輸特性決定了只要是和偶地址單 元或偶地址端口交換數(shù)據(jù),則 CPU 必定通過總線低 8 位即 AD 7

12、AD 0傳輸數(shù)據(jù)。 可見 AD 0可以用來作為接于數(shù)據(jù)總線低 8 位上的 8位外設(shè)接口芯片的選通信號(hào)。8086 和 8088 在最大模式或最小模式時(shí),引腿信號(hào)分別有什么 不同?答:在此兩種模式中,只有第 2431 腿的信號(hào)不同。引腿 號(hào)2425262728293031最小 模式 信號(hào)INTAALEDENDT/ RM/ IOWRHLDAHOLD最大 模式 信號(hào)QS1QS0S0S1S2LOCKRQ /GT1RQ /GT0另外 8088的第 34腿在最大模式時(shí)為高電平, 最小模式時(shí)為 SS0狀態(tài)信號(hào)。 8088 的第 28腿在最小模式時(shí)為 M/ IO 信號(hào)。8086 和 8088 是怎樣解決地址線和

13、數(shù)據(jù)線的復(fù)用問題的? ALE 信號(hào)何時(shí)處于有效電平?答:1.在總線周期的 T1 狀態(tài),復(fù)用總線用來輸出要訪問的存儲(chǔ)器或 I/O 端口的地 址給地址鎖存器 8282(3 片)鎖存;在其他狀態(tài)為傳送數(shù)據(jù)或作傳送準(zhǔn)備。地址鎖 存器8282在收到 CPU發(fā)出的地址鎖存允許信號(hào) ALE 后,鎖存地址。ALE 信號(hào)在每個(gè)總線周期的 T1 狀態(tài)為有效高電平。BHE信號(hào)和 A0 信號(hào)是通過怎樣的組合解決存儲(chǔ)器和外設(shè)端口 的讀 /寫的?這種組合決定了 8086 系統(tǒng)中存儲(chǔ)器偶地址體及奇 地址體之間應(yīng)該用什么信號(hào)來區(qū)分?怎樣區(qū)分?答: 1.組合情況如下:BHEA0操作所用的數(shù)據(jù)引 腿00從偶地址開始讀 /寫一個(gè)字

14、AD 15AD 010從偶地址單元或端口讀 / 寫一個(gè)字節(jié)AD 7AD 001從奇地址單元或端口讀 / 寫一個(gè)字節(jié)AD 15AD 801從奇地址開始讀 /寫一個(gè)字 (在第一AD 15AD 810個(gè) 總線周期,將低 8 位數(shù)送 AD15AD8, 在第二個(gè)總線周期, 將 高 8 位數(shù)送 AD 7AD 0)AD 7AD 02.用 A0 信號(hào)來區(qū)分偶地址體和奇地址體。當(dāng) A0=0 時(shí)選中偶地址體, A0=1 時(shí)選中奇地址體。RESET 信號(hào)來到后, CPU 的狀態(tài)有哪些特點(diǎn)? 答:復(fù)位信號(hào)來到后, CPU 便結(jié)束當(dāng)前操作,并對處理器標(biāo)志寄存器 FR、IP、 DS、SS、ES、其他寄存器及指令隊(duì)列清 0

15、,而將 CS 設(shè)置為 FFFFH。當(dāng)復(fù)位信 號(hào)變?yōu)榈碗娖胶螅?CPU從 FFFF0H單元開始執(zhí)行程序。在中斷響應(yīng)過程中, 8086 往 8259A 發(fā)的兩個(gè) INTA 信號(hào)分別起 什么作用? 答:第一個(gè)負(fù)脈沖通知外部設(shè)備的接口, 它發(fā)出的中斷請求已經(jīng)得到允許; 外設(shè) 接口收到第二個(gè)負(fù)脈沖后,往數(shù)據(jù)總線上放中斷類型碼,從而 CPU 得到了有關(guān) 此中斷請求的詳盡信息??偩€保持過程是怎樣產(chǎn)生和結(jié)束的?畫出時(shí)序圖。答: 1.當(dāng)系統(tǒng)中 CPU 之外的另一個(gè)主模塊要求占用總線時(shí),通過 HOLD 引腿向 CPU發(fā)一個(gè)高電平的請求信號(hào)。如果 CPU 此時(shí)允許讓出總線,就在當(dāng)前總線周期完成時(shí),于 T4狀態(tài)從 H

16、LDA 引腿發(fā)出一個(gè)應(yīng)答信號(hào), 對剛才的 HOLD 請求做 出響應(yīng)。同時(shí), CPU 使地址 /數(shù)據(jù)總線和控制狀態(tài)線處于浮空狀態(tài)??偩€請求部 件收到 HLDA 信號(hào)后,就獲得了總線控制權(quán), 在此后一段時(shí)間, HOLD 和 HLDA 都保持高電平。在總線占有部件用完總線之后,會(huì)把 HOLD 信號(hào)變?yōu)榈碗娖剑?表示現(xiàn)在放棄對總線的占有。 8086/8088收到低電平的 HOLD 信號(hào)后,也將 HLDA 變?yōu)榈碗娖?,這樣, CPU 又獲得了地址 /數(shù)據(jù)總線和控制狀態(tài)線的占有權(quán)。一片, 8284A 時(shí)鐘發(fā)生器RESETREADY2.時(shí)序圖為:8086 系統(tǒng)在最小模式時(shí)應(yīng)該怎樣配置 ?請畫出這種配置并標(biāo)出

17、 主要信號(hào)的 連接關(guān)系。答: 1.8086 系統(tǒng)在最小模式時(shí)的配置是: 8086CPU 片, 8282地址鎖存器三片, 8286 總線收發(fā)器二片 2.連接關(guān)系為:時(shí)鐘發(fā)生器的功能是什么?畫出它的線路圖。答:1.時(shí)鐘發(fā)生器的功能是:提供頻率恒定占空比符合標(biāo)準(zhǔn)的時(shí)鐘信號(hào),對準(zhǔn)備 好(READY)和復(fù)位 (RESET)信號(hào)進(jìn)行同步。2.線路圖見書 21頁圖 2.7 所示。8086 在最大模式下應(yīng)當(dāng)怎樣配置?最大模式時(shí)為什么一定要用總線控制 器?總線控制器的輸入信號(hào)是什么?輸出信號(hào)是什么?答: 1.8086在最大模式下的配置是: 8086CPU一片, 8284A 時(shí)鐘發(fā)生器一片, 8282地址鎖存器三

18、片, 8286總線收發(fā)器二片, 8288總線控制器一片, 8259A 中 斷優(yōu)先級(jí)管理部件一片。2.因?yàn)樵谧畲竽J较?,需要用外加電路來?CPU 發(fā)出的控制信號(hào)進(jìn)行變換和組 合,以得到對存儲(chǔ)器和 I/O 端口的讀 /寫信號(hào)和對鎖存器 8282 及總線收發(fā)器 8286 的控制信號(hào)。 8288 總線控制器就是完成上述這些功能的專用芯片。所以必須用 總線控制器??偩€控制器的輸入信號(hào)是:來自 CPU的S2 、S1、S0 狀態(tài)信息,時(shí)鐘 CLK 信 號(hào),及決定本身工作方式的信號(hào) IOB、 AEN 、CEN??偩€控制器的輸出信號(hào)是:用來作為 CPU進(jìn)行中斷響應(yīng)的信號(hào) INTA ,兩組讀/ 寫控制信號(hào) MR

19、DC 、MWTC 、IORC 、IOWC ,兩個(gè)提前的寫控制信號(hào) AMWC 、AIOWC , 送給地址鎖存器的信號(hào) ALE ,送給數(shù)據(jù)收發(fā)器的信號(hào) DEN 和 DT/R。在編寫程序時(shí),為什么通??傄瞄_放中斷指令來設(shè)置中斷允 許標(biāo)志?答:因?yàn)樵趶?fù)位時(shí),標(biāo)志寄存器 FR 被清 0,則 IF=0,禁止從 INTR 進(jìn)入的可屏 蔽中斷,所以必須在編寫程序時(shí),用指令來設(shè)置中斷允許標(biāo)志。T1狀態(tài)下,數(shù)據(jù) /地址復(fù)用總線上是什么信息?用哪個(gè)信號(hào)將此 信息鎖存起來?數(shù)據(jù)信息是在什么時(shí)候給出的?用時(shí)序圖表示 出來。答: 1.T1狀態(tài)下,數(shù)據(jù) /地址復(fù)用總線上是地址信息。2.用 ALE 信號(hào)的下降沿將此地址信息

20、鎖存在三片 8282 中。TW、T3、T4中間給出;TW、T4 中間給出。數(shù)據(jù)信息的給出時(shí)間分兩種:總線讀周期時(shí),數(shù)據(jù)信息在 T3、總線寫周期時(shí),數(shù)據(jù)信息在 T2、時(shí)序圖如下:畫出 8086 最小模式時(shí)的讀周期時(shí)序。答:見書 27頁圖 2.11所示。8086 最多可有多少個(gè)中斷?按照產(chǎn)生中斷的方法分為哪兩大類?答: 1.8086最多可有 256 個(gè)中斷。 2.按照產(chǎn)生中斷的方法分為硬件中斷和軟件中斷兩大類。非屏蔽中斷有什么特點(diǎn)?可屏蔽中斷有什么特點(diǎn)?分別用在什 么場合?答: 1.非屏蔽中斷的特點(diǎn)有:中斷請求從 NMI 引腿進(jìn)入,不受中斷允許標(biāo)志 IF 的影響。非屏蔽中斷只有一個(gè),其中斷類型碼為

21、 2。2.可屏蔽中斷的特點(diǎn)有:中斷請求從 INTR 引腿進(jìn)入,只有在 IF=1 時(shí) CPU 才響 應(yīng)該中斷??善帘沃袛嘤腥舾蓚€(gè),其中斷類型碼可以是 5255。非屏蔽中斷用來處理系統(tǒng)的重大故障,如掉電等??善帘沃袛嘤迷谝话阃獠吭O(shè) 備申請的中斷中。什么叫中斷向量?它放在那里?對應(yīng)于 1CH 的中斷向量存放 在哪里?如果 1CH 的中斷處理子程序從 5110H:2030H 開始, 則中斷向量應(yīng)怎樣存放?答: 1.中斷處理子程序的入口地址就是中斷向量。 2.中斷向量放在 0段的 03FFH 區(qū)域的中斷向量表中。對應(yīng)于類型號(hào)為 1CH 的中斷向量應(yīng)放在 0007000073H的 4 個(gè)單元中。若 1CH

22、 的中斷向量為 5110H:2030H,則中斷向量的存放方法為: 00070H 存放 30H,00071H存放20H (IP) ;00072H存放 10H,00073H存放51H (CS)。從 8086/8088 的中斷向量表中可以看到,如果一個(gè)用戶想定義 某個(gè)中斷,應(yīng)該選擇在什么范圍? 答:應(yīng)該選擇在中斷類型碼為 32(20H)255(FFH)范圍。非屏蔽中斷處理程序的入口地址怎樣尋找? 答:CPU在響應(yīng) NMI 引腿的中斷請求時(shí), CPU 并不需要從中斷類型碼計(jì)算中斷 向量的地址,而是直接從中斷向量表中讀取 000080000BH這 4個(gè)單元對應(yīng)于中 斷類型 2 的中斷向量就行了。 CPU

23、 將 00008H、00009H 兩個(gè)單元的內(nèi)容裝入 IP, 而將 0000AH 、0000BH 兩個(gè)單元的內(nèi)容裝入 CS,于是就轉(zhuǎn)入了對非屏蔽中斷處 理程序的執(zhí)行。敘述可屏蔽中斷的響應(yīng)過程,一個(gè)可屏蔽中斷或者非屏蔽中斷 響應(yīng)后,堆棧頂部四個(gè)單元中為什么內(nèi)容? 答:首先在 CPU 的 INTR 引腿上有可屏蔽中斷請求輸入,且 IF=1。在當(dāng)前指令 執(zhí)行完后, CPU 發(fā)兩個(gè) INTA 中斷響應(yīng)負(fù)脈沖,外設(shè)接到第二個(gè)負(fù)脈沖后,立即 往數(shù)據(jù)線上給 CPU 送來中斷類型碼。然后 CPU 取中斷類型碼,將標(biāo)志 FR 推入 堆棧,清除 IF 和 TF,再將 CS和 IP 推入堆棧來保護(hù)斷點(diǎn),進(jìn)入中斷處理

24、子程序 并執(zhí)行,最后彈出 IP 和 CS 及標(biāo)志而中斷返回。中斷響應(yīng)后,堆棧頂部四個(gè)單 元的內(nèi)容分別是: IPL、 IPH、CSL、CSH。一個(gè)可屏蔽中斷請求來到時(shí),通常只要中斷允許標(biāo)志為1,便可在執(zhí)行完當(dāng)前指令后響應(yīng),在哪些情況下有例外? 答:1.正好遇到 CPU 執(zhí)行封鎖指令時(shí),必須等下一條指令執(zhí)行完后才響應(yīng)中斷。 2.正好執(zhí)行往段寄存器傳送數(shù)據(jù)的指令,必須等下一條指令執(zhí)行完后才響應(yīng)中 斷。執(zhí)行 WAIT 或串操作指令時(shí),可在指令執(zhí)行中響應(yīng)中斷。在對堆棧指針進(jìn)行修改時(shí),要特別注意什么問題?為什么? 答: 1.必須先修改堆棧段寄存器 SS的值,接著修改堆棧指針 SP的值。2.因?yàn)?,CPU 在

25、修改段寄存器值時(shí)不響應(yīng)中斷, 待下一條指令執(zhí)行后才響應(yīng)中斷。 這樣對 SS、SP的修改是一個(gè)完整的過程。 否則先修改 SP 后修改 SS則可能中斷 響應(yīng)而分開修改,導(dǎo)致堆棧指針的錯(cuò)誤,因此 CS、IP、FR 進(jìn)入錯(cuò)誤的堆棧區(qū)域 而破壞該單元的數(shù)據(jù)或程序。在編寫中斷處理子程序時(shí),為什么要在子程序中保護(hù)許多寄存 器?有些寄存器即使在中斷處理子程序中并沒有用到也需要保 護(hù),這又是為什么 (聯(lián)系串操作指令執(zhí)行時(shí)遇到中斷這種情況來 回答)?答: 1.因?yàn)橹袛嗵幚碜映绦蜻\(yùn)行時(shí)需要使用 CPU 內(nèi)部的寄存器,這些寄存器的 值發(fā)生了改變。 因此若不加保護(hù)在返回原程序時(shí)就修改了斷點(diǎn)處的現(xiàn)場, 而使程 序不能正常

26、運(yùn)行。2.因?yàn)榇僮髦噶钤试S在執(zhí)行過程中進(jìn)入中斷, 若與串操作有關(guān)的寄存器未保護(hù) 好,中斷返回時(shí)串操作指令就不能正常繼續(xù)運(yùn)行。而且還有隱含尋址問題。一個(gè)可屏蔽中斷響應(yīng)時(shí), CPU 要執(zhí)行哪些讀 /寫周期?對一個(gè)軟 件中斷又如何?答: 1.對可屏蔽中斷響應(yīng), CPU要執(zhí)行的讀 /寫周期如下:執(zhí)行兩個(gè)中斷響應(yīng)總線周期。并取得中斷類型碼。執(zhí)行一個(gè)總線寫周期。標(biāo)志寄存器 FR 值入棧。執(zhí)行一個(gè)總線寫周期。 CS 值入棧。執(zhí)行一個(gè)總線寫周期。 IP 值入棧。執(zhí)行一個(gè)總線讀周期。讀取中斷處理子程序入口地址的偏移量IP。執(zhí)行一個(gè)總線讀周期。讀取中斷處理子程序入口地址的段地址CS。2.若是一個(gè)軟件中斷,則跳過

27、上述第步,而執(zhí)行 步。中斷處理子程序在結(jié)構(gòu)上一般是怎樣一種模式?答: 保護(hù)中斷時(shí)的現(xiàn)場,即保護(hù) CPU 各寄存器的值。一般應(yīng)置 IF=1 來開放中斷,以允許級(jí)別較高的中斷請求進(jìn)入。中斷處理的具體內(nèi)容?;謴?fù)中斷時(shí)的現(xiàn)場。中斷返回指令。軟件中斷有哪些特點(diǎn)?在中斷處理子程序和主程序的關(guān)系上, 軟件中斷和硬件中斷有什么不同之處?答: 1.軟件中斷有如下特點(diǎn):用一條中斷指令進(jìn)入中斷處理子程序,并且,中斷類型碼由指令提供。進(jìn)入中斷時(shí),不需要執(zhí)行中斷響應(yīng)總線周期。不受中斷允許標(biāo)志 IF 的影響。軟件中斷的優(yōu)先級(jí)最高。軟件中斷沒有隨機(jī)性。2.軟件中斷允許在主程序和中斷處理子程序之間傳遞數(shù)據(jù)。 而硬件中斷由于是

28、隨 機(jī)的,所以不能傳遞數(shù)據(jù)。系統(tǒng)中有多個(gè)總線模塊時(shí),在最大模式和最小模式下分別用什 么方式來傳遞總線控制權(quán) ?答:1.8086/8088 在最小模式下用總線控制聯(lián)絡(luò)信號(hào) (HOLD 和 HLDA) 來傳遞總線 控制權(quán)。2.8086/8088 在最大模式下用總線請求 /總線允許信號(hào)及釋放信號(hào) RQ /GT0 和RQ /GT1 來傳遞總線控制權(quán)。8086 存儲(chǔ)空間最大為多少?怎樣用 16 位寄存器實(shí)現(xiàn)對 20 位地 址的尋址?答: 1.8086存儲(chǔ)空間最大為 220=1MB 。2.采用分段的方法實(shí)現(xiàn) 16 位寄存器實(shí)現(xiàn)對 20位地址的尋址。 物理地址 =段基址 10H+偏移地址IBM PC/XT

29、系統(tǒng)中,哪個(gè)區(qū)域?yàn)轱@示緩沖區(qū)?哪個(gè)區(qū)域用來存 放中斷向量?在 FFFF0H 到 FFFFFH 單元中存放什么內(nèi)容? 答:1.B0000HB0F9FH 約 4KB 為單色顯示器的顯示緩沖區(qū); B8000BBF3FH 約 16KB 為彩色顯示器的顯示緩沖區(qū)。2.00000H003FFH 共 1KB 區(qū)域用來存放中斷向量。3.在 FFFF0H到 FFFFFH 單元中存放一條無條件轉(zhuǎn)移指令,轉(zhuǎn)到系統(tǒng)的初始化程 序。第三章 8086 的尋址方式和指令系統(tǒng) 略第四章 存儲(chǔ)器和高速緩存技術(shù)計(jì)算機(jī)的內(nèi)存有什么特點(diǎn)?內(nèi)存由哪兩部分組成?外存一般指 哪些設(shè)備?外存有什么特點(diǎn)?答: 1.內(nèi)存可被 CPU 直接訪問,

30、內(nèi)存的存取速度快,內(nèi)存的空間大小受到地址 總線位數(shù)的限制。2.內(nèi)存由 ROM 和 RAM 兩部分組成。3.外存一般指軟盤、硬盤、磁帶機(jī)上的磁帶及光盤。外存的特點(diǎn)是大容量,所存信息即可修改,又可長期保存。但外存速度慢,要 配置專用設(shè)備。用存儲(chǔ)器件組成內(nèi)存時(shí),為什么總是采用矩陣形式?請用一個(gè) 具體例子進(jìn)行說明。答: 1.為了簡化選擇內(nèi)存內(nèi)部單元的地址譯碼電路及減少譯碼線數(shù)量。2.例如,要組成 1K 字節(jié)的內(nèi)存,若不用矩陣組織這些單元,而是將它們一字排 開,就要 1024 條譯碼線才能實(shí)現(xiàn)對這些單元的尋址。 譯碼電路也因此而很復(fù)雜。若用 3232 來實(shí)現(xiàn)排列,就只要 32條行選擇線和 32條列選擇線

31、就可以了。因 此其譯碼電路也將變得較為簡單。為了節(jié)省存儲(chǔ)器的地址譯碼電路,一般采用哪些方法?答: 存儲(chǔ)器件按矩陣排列;內(nèi)存按模塊結(jié)構(gòu)設(shè)計(jì);模塊內(nèi)再進(jìn)行分組處理。在選擇存儲(chǔ)器件時(shí),最重要的考慮因素是什么?此外還應(yīng)考慮 哪些因素?答: 1.最重要的考慮因素是:易失性、只讀性、位容量和速度。 2.此外還應(yīng)考慮:功耗、可靠性和價(jià)格等因素。什么叫靜態(tài) RAM ?靜態(tài) RAM 有什么特點(diǎn)? 答:1.在電源不斷電的情況下, 信息一旦寫入后不會(huì)丟失的 RAM 就叫靜態(tài) RAM 2.靜態(tài) RAM 的特點(diǎn)有:不需刷新,因此簡化了外部電路;但位容量較類似方法設(shè)計(jì)的動(dòng)態(tài) RAM 少,且功耗較大。靜態(tài) RAM 芯片上為

32、什么往往只有寫信號(hào)而沒有讀信號(hào)?什么 情況下可以從芯片讀得數(shù)據(jù)?答:1.因?yàn)樵诖鎯?chǔ)器中, 當(dāng)允許信號(hào)有效之后, 一定是進(jìn)行讀 /寫操作,非寫即讀。 因此,只用寫信號(hào) WE 就可以即控制寫操作,又控制讀操作。在寫操作時(shí),寫脈 沖發(fā)生器送來一個(gè)負(fù)脈沖作為寫入信號(hào); 在讀操作時(shí), 寫脈沖發(fā)生器不產(chǎn)生負(fù)脈 沖,而是使 WE 端處于高電平,此高電平就用來作為讀出信號(hào)。當(dāng)芯片允許信號(hào) CE =0及寫信號(hào) WE =1時(shí),可以從芯片上讀得數(shù)據(jù)。在對靜態(tài)存儲(chǔ)器進(jìn)行讀 /寫時(shí),地址信號(hào)要分為幾個(gè)部分?分別 產(chǎn)生什么信號(hào)?答: 1.地址信號(hào)分為三個(gè)部分。如: A19A14,A13A12,A11A0。 2.例中A19

33、A14用來作為模塊選擇信號(hào),地址譯碼器判斷 A19 A14 給出的模塊選 擇信號(hào)和本模塊的約定信號(hào)是否匹配,如匹配,則再根據(jù) MRDC 或 MWTC 產(chǎn)生內(nèi) 部的模塊選擇信號(hào); A 13 A 12 產(chǎn)生 4 個(gè)矩陣的芯片允許信號(hào); A11A0 則作為矩 陣內(nèi)部的行地址和列地址。動(dòng)態(tài) RAM 工作時(shí)有什么特點(diǎn)?和靜態(tài) RAM 比較,動(dòng)態(tài) RAM 有什么長處?有什么不足之處?動(dòng)態(tài) RAM 一般用在什么場 合?答: 1.動(dòng)態(tài) RAM 工作時(shí)需要對其存儲(chǔ)的信息定時(shí) (約 2ms)刷新一次。因此需要 刷新控制電路來支持。2.動(dòng)態(tài) RAM 的優(yōu)點(diǎn) (長處 )為:動(dòng)態(tài) RAM 的位密度高;動(dòng)態(tài) RAM 的功

34、耗較低; 動(dòng)態(tài) RAM 的價(jià)格低廉,適合于大容量使用。3.動(dòng)態(tài) RAM 的缺點(diǎn)(不足之處 )為:要配置刷新邏輯電路;在刷新周期中,內(nèi)存 模塊不能啟動(dòng)讀周期或?qū)懼芷凇?dòng)態(tài) RAM 一般用在大容量、低功耗場合。動(dòng)態(tài) RAM 為什么要進(jìn)行刷新?刷新過程和讀操作比較有什么 差別?答: 1.因?yàn)閯?dòng)態(tài) RAM 是利用電容的存儲(chǔ)作用來保存信息的,但電容由于放電或 泄漏,電荷保存時(shí)間較短 (約 2ms),若不及時(shí)補(bǔ)充電荷會(huì)使存放的數(shù)據(jù)丟失,因 此需定時(shí)刷新以補(bǔ)充所需要的電荷。2.刷新過程是由刷新邏輯電路定時(shí)完成的,且每次對所有模塊的一行同時(shí)刷新, 數(shù)據(jù)不輸出, 數(shù)據(jù)總線處于高阻狀態(tài)。 讀過程是隨機(jī)的, 每次選

35、中一個(gè)存儲(chǔ)單元 (8 位),且數(shù)據(jù)輸出到數(shù)據(jù)總線上。動(dòng)態(tài) RAM 控制器完成什么功能? Intel 8203 從功能上分為哪兩 部分?敘述這兩部分的工作原理。答: 1.動(dòng)態(tài) RAM 控制器要完成的功能有:刷新定時(shí)器產(chǎn)生刷新周期并提供各種 時(shí)序信號(hào),并對 CPU 的讀/寫操作及刷新操作進(jìn)行仲裁;刷新地址計(jì)數(shù)器提供刷 新用的行地址,并通過多路轉(zhuǎn)換器進(jìn)行地址切換。2.Intel 8203 從功能上分為:地址處理部分和時(shí)序處理部分兩個(gè)。 3.地址處理部分用來處理動(dòng)態(tài) RAM 正常讀/寫時(shí)的地址信號(hào) (正常的行 /列地址合 用一組地址線的區(qū)分 ) 和刷新過程中的地址信號(hào) (區(qū)分正常的行地址及刷新周期 的

36、行地址 )。時(shí)序處理部分通過一個(gè)基準(zhǔn)時(shí)鐘來產(chǎn)生各種時(shí)序;通過一個(gè)仲裁器 來解決刷新請求和內(nèi)存正常讀 /寫請求之間的矛盾。內(nèi)部有兩級(jí)同步電路用來對 外部請求信號(hào)實(shí)現(xiàn)同步。ROM 、PROM 、EPROM 分別用在什么場合? 答: ROM 用在一個(gè)計(jì)算機(jī)系統(tǒng)完成開發(fā)以后,容納不再修改的程序和數(shù)據(jù) 且批量產(chǎn)量要大的場合。PROM 用于非批量的場合。EPROM 用于軟件或系統(tǒng)的開發(fā)階段及批量很小的場合。第五章 微型計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸外部設(shè)備為什么要通過接口電路和主機(jī)系統(tǒng)相連?存儲(chǔ)器需要 接口電路和總線相連嗎?為什么? 答:1.因?yàn)橥庠O(shè)的功能多種多樣, 對于模擬量信息的外設(shè)必須要進(jìn)行 A/D 和 D

37、/A 轉(zhuǎn)換,而對于串行信息的外設(shè)則必須轉(zhuǎn)換為并行的信息, 對于并行信息的外設(shè)還 要選通。而且外設(shè)的速度比 CPU 慢的多,必須增加緩沖功能。只有這樣計(jì)算機(jī) 才能使用這些外設(shè)。而所有這些信息轉(zhuǎn)換和緩沖功能均由接口電路才能完成。 2.存儲(chǔ)器不需要接口電路和總線相連。3.因?yàn)榇鎯?chǔ)器功能單一,且速度與 CPU 相當(dāng)。因此可直接掛在 CPU 總線上。是不是只有串行數(shù)據(jù)形式的外設(shè)需要接口電路和主機(jī)系統(tǒng)連 接?為什么?答: 1.不是。并行數(shù)據(jù)形式的外設(shè)也需要接口電路和主機(jī)系統(tǒng)連接。2.因?yàn)?,CPU 每次只能訪問一個(gè)外設(shè),因此并行信息的外設(shè)需增加選通功能,才 能滿足 CPU 的訪問要求,必須用接口電路。接口電

38、路的作用是什么?按功能可分為幾類?答: 1.接口電路的作用就是在外設(shè)和 CPU 之間起信息變換和緩沖功能。 2.按功能可分為兩類:一種是使微處理器正常工作所需要的輔助電路。另一種是輸入 / 輸出接口電路。數(shù)據(jù)信息有哪幾類?舉例說明它們各自的含義。答: 1.數(shù)據(jù)信息有四類:數(shù)字量、模擬量、開關(guān)量、脈沖量。2.如鍵盤、磁帶機(jī)等就是數(shù)字量信息;溫度、濕度、壓力等轉(zhuǎn)換的電信號(hào)就是模 擬量;電機(jī)的起停、發(fā)光設(shè)備的亮滅等都是開關(guān)量;計(jì)數(shù)脈沖、定時(shí)脈沖等都是 脈沖量。CPU 和輸入 /輸出設(shè)備之間傳送的信息有哪幾類? 答:有數(shù)據(jù)信息、控制信息、狀態(tài)信息三類。什么叫端口?通常有哪幾類端口?計(jì)算機(jī)對 I/O 端

39、口編址時(shí)通 常采用哪兩 種方法?在 8086/8088系統(tǒng)中,用哪種方法對 I/O 端 口進(jìn)行編址?答:1.CPU 和外設(shè)進(jìn)行數(shù)據(jù)傳輸時(shí),各類信息在接口中進(jìn)入不同的寄存器,一般 稱這些寄存器為 I/O 端口。2.有數(shù)據(jù)端口、控制端口、狀態(tài)端口三類。3.在微型計(jì)算機(jī)中通常用兩種 I/O 端口編址方式:存儲(chǔ)器映象尋址和 I/O 端口單 獨(dú)尋址。在 8086/8088 系統(tǒng)中,用 I/O 端口單獨(dú)尋址方式編址。為什么有時(shí)候可以使兩個(gè)端口對應(yīng)一個(gè)地址? 答:因?yàn)檫@兩個(gè)端口一個(gè)是只讀端口,一個(gè)是只寫端口。而 CPU 對一個(gè) I/O 端 口地址可進(jìn)行讀 /寫兩種訪問。如果將這兩個(gè)只讀和只寫端口編為一個(gè)地址

40、,則CPU 對該端口地址讀操作對應(yīng)的是只讀端口; CPU 對該端口地址寫操作則對應(yīng) 的是只寫端口, 互不影響。 因此可以使兩個(gè)單向的只讀和只寫端口對應(yīng)一個(gè)端口 地址。CPU 和外設(shè)之間的數(shù)據(jù)傳送方式有哪幾種?實(shí)際選擇某種傳輸 方式時(shí),主要依據(jù)是什么?答: 1.CPU 和外設(shè)之間的數(shù)據(jù)傳送方式有三種:程序方式、中斷方式、 DMA 方 式。主要依據(jù)是外設(shè)的情況 (外設(shè)的速度和外設(shè)提供信息的方式 )。無條件傳送方式用在哪些場合?畫出無條件傳送方式的工作原 理圖并說明。答:1.無條件傳送方式只用在對一些簡單外設(shè)進(jìn)行操作的場合。如開關(guān)、 LED 顯 示等。無條件傳送方式的工作原理圖: (見書 203頁圖

41、 5.2 所示)在無條件輸入時(shí): CPU 執(zhí)行一條輸入指令,使 RD 和 M/ IO 信號(hào)為 有效低電平,并對應(yīng)送出該端口地址,因此選中輸入緩沖器,打 開其三態(tài)門,使輸入緩沖器的數(shù)據(jù)經(jīng)數(shù)據(jù)總線送到 CPU 的累加 器中。在無條件輸出時(shí): CPU 執(zhí)行一條輸出指令, 使 WR 和 M/ IO 信號(hào)為 有效低電平,并對應(yīng)送出該端口地址,因此選中輸出鎖存器,將 由累加器送到數(shù)據(jù)總線上的數(shù)據(jù)打入輸出鎖存器中供外設(shè)使用。條件傳送方式的工作原理是怎樣的?主要用在什么場合?畫出 條件傳送 (查詢 )方式輸出過程的流程圖。答:1.條件傳送方式的工作原理是:外設(shè)給 CPU 提供一個(gè)狀態(tài)信息,當(dāng) CPU 要 訪問

42、外設(shè)時(shí), 必須先檢測該狀態(tài)信息是否合乎要求, 不停檢測直至合乎要求時(shí)才 進(jìn)行 CPU 對外設(shè)的訪問。2.查詢方式主要用在外設(shè)較少,數(shù)據(jù)交換不頻繁的非實(shí)時(shí)系統(tǒng)的場合。 3.查詢式輸出過程的流程圖如右:設(shè)一個(gè) 接口 的輸入端口 地址為 0100H,而它的狀態(tài)端口地址為 0104H,狀態(tài)口中第 5 位為 1 表示輸 入緩沖區(qū)中有一個(gè)字節(jié)準(zhǔn)備好,可輸 入。設(shè)計(jì)具體程序?qū)崿F(xiàn)查詢式輸入。答: DATA SEGMENTBUFFER DB 20 DUP(?) ; 接收數(shù)據(jù)緩 沖區(qū) DATA ENDSCODE SEGMENTASSUME DS:DATA ,CS:CODESTAT: MOV AX ,DATA;對

43、DS 初始化 MOV DS,AXMOV DI, OFFSET BUFFERMOV DX ,0104HSTATIN: INAL ,DXTESTAL ,20H;測試第 5 位JZSTATIN;第 5 位為 0繼續(xù)測試MOVDX,0100HINAL,DX;輸入數(shù)據(jù)MOVDI ,ALCODEENDSENDSTAT5.12 查詢式傳送方式有什么缺點(diǎn)?中斷方式為什么能彌補(bǔ)查詢方式的缺點(diǎn)?答: 1.查詢式傳送方式缺點(diǎn)是:花費(fèi) CPU 的時(shí)間作等待循環(huán),大大降低了的運(yùn)行效率。CPU5.13 2.中斷方式是在外設(shè)準(zhǔn)備就緒時(shí)向 CPU 申請中斷,再進(jìn)行傳送, 因而 CPU 無需花費(fèi)時(shí)間作等待循環(huán),彌補(bǔ)了查詢方式的

44、缺點(diǎn)。 敘述可屏蔽中斷的響應(yīng)和執(zhí)行過程。答: 接口發(fā)中斷請求信號(hào)。 CPU 的 IF=1 時(shí),當(dāng)前指令執(zhí)行完后, CPU 進(jìn)行中斷回答,發(fā)兩個(gè) INTA 負(fù)脈 沖。接口將中斷類型號(hào) n 送 CPU。當(dāng)前的 PSW、CS和IP推入堆棧,并清除 IF 和TF。(4 n)作為 IP,(4 n+2)作為 CS,即取中斷向量。執(zhí)行中斷子程序,并開中斷。中斷返回 IRET 指令使 IP、CS和 PSW彈出堆棧。返回被中斷的程序。通常解決中斷優(yōu)先級(jí)的方法有哪幾種?各有什么優(yōu)缺點(diǎn)? 答: 1.有軟件查詢方式、簡單硬件方式 菊花鏈法、專用硬件方式三種。 2.軟件查詢方式的優(yōu)點(diǎn)是節(jié)省硬件,缺點(diǎn)是中斷響應(yīng)時(shí)間長;簡

45、單硬件方式的優(yōu) 點(diǎn)是中斷響應(yīng)時(shí)間短,硬件較簡單,缺點(diǎn)是優(yōu)先級(jí)固定,變動(dòng)起來很麻煩;專用 硬件方式優(yōu)點(diǎn)是對優(yōu)先級(jí)可編程修改, 中斷管理非常方便, 缺點(diǎn)是硬件復(fù)雜的多, 好在有專用的中斷控制器。畫一個(gè)用中斷方式進(jìn)行輸出傳輸?shù)慕涌陔娐反穑褐袛喾绞捷敵龅慕涌陔娐啡缦拢汉?DMA 比較,中斷傳輸方式有什么不足之處? 答: CPU 執(zhí)行一次傳送要花費(fèi)許多與傳送操作無關(guān)的指令執(zhí)行等時(shí)間,另外中 斷傳送方式不能進(jìn)行數(shù)據(jù)塊傳送,而是按字節(jié)或字傳送。敘述用 DMA 方式傳送單個(gè)數(shù)據(jù)的全過程。 答: 接口準(zhǔn)備就緒,發(fā) DMA 請求信號(hào)給 DMA 控制器。 DMA 控制器向 CPU 轉(zhuǎn)發(fā)總線請求信號(hào) HOLD 。CP

46、U 向 DMA 控制器發(fā)總線請求允許信號(hào) HLDA , DMA 控制器得到總線控 制權(quán)。DMA 控制器把地址送地址總線。DMA 控制器向接口發(fā) DMA 請求確認(rèn)信號(hào)。內(nèi)存和接口通過數(shù)據(jù)總線傳送數(shù)據(jù)。DMA 控制器撤銷總線請求信號(hào) HOLD 。8086 CPU 收回總線控制權(quán)。DMA 控制器的地址線為什么是雙向的?什么時(shí)候往 DMA 控制 器傳輸?shù)刂??什么時(shí)候 DMA 控制器往地址總線傳輸?shù)刂罚?答: 1.因?yàn)?DMA 控制器要接受 CPU的控制,接收 CPU 發(fā)來的初始化等信息, 這要求地址線來尋址各端口, 地址線為輸入線。 又因?yàn)?DMA 控制器可控制總線, 這要求地址線為輸出。所以地址線必

47、須為雙向才行。CPU要對 DMA 控制器發(fā)初始化信息時(shí),必須往 DMA 控制器傳輸?shù)刂贰MA 控制器得到總線控制權(quán)后,向地址總線傳輸?shù)刂?。在設(shè)計(jì) DMA 傳輸程序時(shí),要有哪些必要的模塊?設(shè)計(jì)一個(gè)啟 動(dòng)數(shù)據(jù)塊輸出的程序段。答: 1.要有 DMA 的初始化模塊:對字節(jié)計(jì)數(shù)器、地址寄存器和控制寄存器置初 值。還要有對接口部件設(shè)置控制字的模塊: 指出數(shù)據(jù)傳輸方向, 并啟動(dòng) I/O 操作 2.啟動(dòng)數(shù)據(jù)塊輸出的程序段如下:IDLO: TEST JNZ MOV OUT LEA OUT MOV OR OUT MOV OR OUTIN AL, INTSTAT;接口狀態(tài)寄存器的狀態(tài)位 (2)是否忙AL,04ID

48、LOAX ,COUNT BYTE_REG ,AX AX ,BUFFER ADD_REG ,AL ,DMACAL ,08HDMACON ,AL , INTCAL ,04HINTCON ,AL;忙,則等待 ;不忙,則設(shè)置計(jì)數(shù)初值;對字節(jié)計(jì)數(shù)器 BYTE_REG 初始化 ;設(shè)置地址初值;對 DMA 地址寄存器 ADD_REG 初始化 ;取原 DMA 控制字;設(shè)置方向?yàn)檩敵鯝L;置 DMA 控制字;取原接口控制字 ;設(shè)置傳輸方向?yàn)檩敵黾霸试S;置接口控制字AX后續(xù)處理在查詢方式、中斷方式和 DMA 方式中,分別用什么方法啟動(dòng) 數(shù)據(jù)傳輸過程?答: 查詢方式:通過程序來檢測接口中狀態(tài)寄存器中的“準(zhǔn)備好”位,

49、以確定當(dāng)前是否可以進(jìn)行數(shù)據(jù)傳輸。中斷方式:當(dāng)接口中已經(jīng)有數(shù)據(jù)要往 CPU 輸入或者準(zhǔn)備好接收數(shù)據(jù)時(shí), 接口 會(huì)向 CPU 發(fā)一個(gè)外部中斷請求。 CPU 響應(yīng)中斷后,便通過運(yùn)行中斷處理程序來 實(shí)現(xiàn)輸入 /輸出。DMA 方式:外設(shè)要求傳送數(shù)據(jù)時(shí), 接口會(huì)向 DMA 控制器發(fā) DMA 請求信號(hào), DMA 控制器轉(zhuǎn)而向 CPU 發(fā)一個(gè)總線請求信號(hào), 以請求得到總線控制權(quán), 如果得 到 CPU 允許,那么,就可在沒有 CPU 參與的情況下,實(shí)現(xiàn) DMA 傳輸。第六章 串并行通信和接口技術(shù)接口部件為什么需要有尋址功能?設(shè)計(jì)一個(gè)用 74LS138 構(gòu)成的 譯碼電路,輸入為 A3、A4、A5、A8,輸出 8個(gè)

50、信號(hào)以對 8 個(gè)接 口部件進(jìn)行選擇。想一想如果要進(jìn)一步對接口中的寄存器進(jìn)行 尋址,應(yīng)該怎樣實(shí)現(xiàn)? 答:1.因?yàn)椋紫冉涌谝獙x擇 M 和 I/O 的信號(hào)能夠做出解釋;此外,要對送來 的片選信號(hào)進(jìn)行識(shí)別, 以便判斷當(dāng)前本接口是否被訪問, 如果受到訪問, 還要決 定是接口中那個(gè)寄存器受到訪問。2.將 A1 接在接口的 A 0上,A 2接在接口的 A 1上;將接口的 CS接在 74LS138 的某 一輸出端, RD和WR分別接在對應(yīng)的控制總線上。從而可實(shí)現(xiàn)接口中的共 8 個(gè) 只讀和只寫寄存器的尋址。 (由于用的是 8086 CPU,所以 A0 空。)接口部件的輸入 /輸出操作具體對應(yīng)哪些功能,舉例說

51、明。 答:1.具體對應(yīng)的功能為:尋址功能、輸入 /輸出功能、數(shù)據(jù)轉(zhuǎn)換功能、聯(lián)絡(luò)功能 和錯(cuò)誤檢測功能等。2.例如串行輸入操作: 首先要將串行輸入的數(shù)據(jù)轉(zhuǎn)換為并行輸入的數(shù)據(jù)放入輸入 緩沖器,然后發(fā)一個(gè)準(zhǔn)備好信號(hào)通知 CPU 來讀取該輸入寄存器的內(nèi)容。從而完 成一個(gè)串行數(shù)據(jù)的輸入過程。其中在數(shù)據(jù)轉(zhuǎn)換時(shí)自動(dòng)檢測傳輸?shù)腻e(cuò)誤。從廣義上說接口部件有哪些功能? 答:尋址功能、輸入 /輸出功能、數(shù)據(jù)轉(zhuǎn)換功能、聯(lián)絡(luò)功能、中斷管理功能、復(fù) 位功能、可編程功能和錯(cuò)誤檢測功能。怎樣進(jìn)行奇 /偶校驗(yàn)?如果用偶校驗(yàn),現(xiàn)在所傳輸?shù)臄?shù)據(jù)中 1 的 個(gè)數(shù)為奇數(shù), 那么,校驗(yàn)位應(yīng)為多少? 答:1.用奇/偶校驗(yàn)位對傳輸錯(cuò)誤進(jìn)行檢測。

52、傳輸時(shí),如果用奇校驗(yàn),那么使信息 中 1 的數(shù)目 (包括校驗(yàn)位 )為奇數(shù)。即所傳輸?shù)臄?shù)據(jù)中 1 的個(gè)數(shù)為奇數(shù),則使校驗(yàn) 位為 0;若所傳輸?shù)臄?shù)據(jù)中 1 的個(gè)數(shù)為偶數(shù),則使校驗(yàn)位為 1。這樣奇校驗(yàn)時(shí), 在傳輸一個(gè)數(shù)據(jù)時(shí), 1的總數(shù)目總是為奇數(shù)。同樣若用偶校驗(yàn),信息中 1 的數(shù)目 (包括校驗(yàn)位 )為偶數(shù)。2.偶校驗(yàn)時(shí),所傳輸?shù)臄?shù)據(jù)中 1 的個(gè)數(shù)為奇數(shù),則校驗(yàn)位應(yīng)為 1。什么叫覆蓋錯(cuò)誤?接口部件如何反映覆蓋錯(cuò)誤? 答:1.接口的數(shù)據(jù)緩沖寄存器中的數(shù)據(jù)還未被取走,由于某種原因又被裝上了新 的數(shù)據(jù),就會(huì)產(chǎn)生一個(gè)覆蓋錯(cuò)誤。 2.在產(chǎn)生覆蓋錯(cuò)誤時(shí),接口會(huì)在狀態(tài)寄存器中設(shè)置相應(yīng)的狀態(tài)位來反映。接口部件和總線之

53、間一般有哪些部件?它們分別完成什么功 能?答: 1.外部邏輯電路和地址譯碼器。2.外部邏輯電路把 CPU 送來的一些控制信號(hào)翻譯成聯(lián)絡(luò)信號(hào)。地址譯碼器將總 線提供的 I/O 地址翻譯成對接口的片選信號(hào)。為什么串行接口部件中的 4 個(gè)寄存器可以只用 1 位地址線來進(jìn) 行區(qū)分? 答:一位地址線可編址二個(gè)地址,再加上讀和寫信號(hào)可對 2 個(gè)只讀寄存器和 2 個(gè)只寫寄存器進(jìn)行端口尋址。 而串行接口部件的控制寄存器和數(shù)據(jù)輸出寄存器是 只寫的,狀態(tài)寄存器和數(shù)據(jù)輸入寄存器是只讀的,所以可用一位地址線來區(qū)分。在數(shù)據(jù)通信系統(tǒng)中,什么情況下可以采用全雙工方式,什么情 況下可用半雙工方式? 答:對于近距離較大信息量的

54、傳輸應(yīng)采用全雙工方式。 而對于遠(yuǎn)距離或較少信 息 量的傳輸或單向的輸入或輸出設(shè)備時(shí)應(yīng)采用半雙工方式。什么叫同步通信方式?什么叫異步通信方式?它們各有什么優(yōu) 缺點(diǎn)? 答:1.在同一時(shí)鐘控制下需用同步字符同步的信息按組傳送的方式叫同步通信方 式。 2.在兩個(gè)相近頻率的時(shí)鐘分別控制下只需一個(gè)起始位的信息按字符傳送的方式 叫異步通信方式。在傳輸率相同時(shí)同步方式的信息有效率要比異步方式下的高。 但同步方式必須 傳送時(shí)鐘信號(hào),異步方式只要兩端的時(shí)鐘頻率相近即可。什么叫波特率因子?什么叫波特率?設(shè)波特率因子為64,波特率為 1200,時(shí)鐘頻率為多少?答: 1.波特率因子:時(shí)鐘頻率和位傳輸率的比值。此比值必須

55、為 16、32 或 64。 2.波特率:位傳輸率即為波特率。時(shí)鐘頻率 =波特率因子波特率 =641200=76800Hz。標(biāo)準(zhǔn)波特率系列指什么? 答:國際上規(guī)定的波特率標(biāo)準(zhǔn)值為: 110、300、600、1200、1800、2400、4800、 9600 和 19200、38400、57600、115200。設(shè)異步傳輸時(shí),每個(gè)字符對應(yīng) 1個(gè)起始位、 7個(gè)信息位、 1個(gè)奇 /偶校驗(yàn)位和 1 個(gè)停止位,如果波特率為 9600,則每秒鐘能傳輸 的最大字符數(shù)為多少? 答:每個(gè)字符所占的總位數(shù)為: 1+7+1+1=10 位。所以每秒鐘能傳輸?shù)淖畲笞址?數(shù)為 9600/10=960 個(gè)字符。在 RS232

56、C 標(biāo)準(zhǔn)中,信號(hào)電平與 TTL 電平不兼容,問 RS232C標(biāo)準(zhǔn)的 1和 0分別對應(yīng)什么電平? RS232C的電平 和 TTL 電平之間用什么器件進(jìn)行轉(zhuǎn)換? 答: 1.RS232C的1對應(yīng)3V25V;RS232C的0對應(yīng)+3V+25V 電平。 2.RS232C 電平 TTL 電平用 MC1489 轉(zhuǎn)換; TTL 電平 RS232C 電平用 MC1488 轉(zhuǎn)換。從 8251A 的編程結(jié)構(gòu)中, 可以看到 8251A 有幾個(gè)寄存器與外部 電路有關(guān)?一共要幾個(gè)端口地址?為什么? 答: 1.有 7 個(gè)寄存器與外部電路有關(guān)。2.要 2 個(gè)端口地址。 3.因?yàn)椋粋€(gè)數(shù)據(jù)輸入緩沖寄存器為只寫,一個(gè)數(shù)據(jù)輸出緩沖

57、寄存器為只讀,可 共用一個(gè)端口地址,在讀 /寫信號(hào)配合下進(jìn)行讀 /寫操作。一個(gè)模式寄存器、 2 個(gè)同步字符寄存器和 1個(gè)控制寄存器都是只寫的, 但它們有初始化約定, 可用一個(gè) 端口寫入, 1個(gè)狀態(tài)寄存器為只讀,因此與上面共用的一個(gè)寫入端口合用一個(gè)讀 /寫端口地址進(jìn)行尋址。因此只要 2 個(gè)端口地址即可。8251A 內(nèi)部有哪些功能模塊?其中讀 /寫控制邏輯電路的主要功 能是什么?答:1.8251A 內(nèi)部有 7個(gè)功能模塊組成。為:接收緩沖器、接收控制電路、發(fā)送 緩沖器、發(fā)送控制電路、數(shù)據(jù)總線緩沖器、讀 /寫控制邏輯電路、調(diào)制 /解調(diào)控制 電路。2.讀/寫控制邏輯電路的主要功能是:用來配合數(shù)據(jù)總線緩沖

58、器工作。接收寫信號(hào) WR ,并將來自數(shù)據(jù)總線的數(shù)據(jù)和控制字寫入 8251A ;接收讀信號(hào) RD ,并將數(shù)據(jù)或狀態(tài)字從 8251A 送往數(shù)據(jù)總線; 接收控制 /數(shù)據(jù)信號(hào) C/D ,將此信號(hào)和讀 /寫信號(hào)合起來通知 8251A,當(dāng)前讀 /寫的是數(shù)據(jù)還是控制字、狀態(tài)字;接收時(shí)鐘信號(hào) CLK ,完成 8251A 的內(nèi)部定時(shí);接收復(fù)位信號(hào) RESET,使 8251A 處于空閑狀態(tài)。什么叫異步工作方式?畫出異步工作方式時(shí) 8251A 的 TxD 和 RxD 線上的數(shù)據(jù)格式。答:1.在兩個(gè)相近頻率的時(shí)鐘分別控制下,只需一個(gè)起始位的信息按字符傳送的TxD發(fā)送器輸出D0D1由 8251A 產(chǎn)生啟動(dòng)位數(shù)據(jù)位校驗(yàn)位

59、停止位啟動(dòng)位位校驗(yàn)位數(shù)停止位接收器輸入D0D1 Dn不出現(xiàn)在數(shù)據(jù)總線上方式叫異步工作方式。2.異步工作方式時(shí) 8251A的TxD 和 RxD線上的數(shù)據(jù)格式為:什么叫同步工作方式?什么叫雙同步字符方式?外同步和內(nèi)同 步有什么區(qū)別?畫出雙同步工作方式時(shí) 8251A的TxD 線和 RxD 線上的數(shù)據(jù)格式。答:1.在同一時(shí)鐘控制下需用同步字符同步的信息按組傳送的方式叫同步工作方 式。2.需用 2 個(gè)同步字符的同步工作方式叫雙同步字符方式。3.外同步只能工作于同步接收方式,而內(nèi)同步即適用于同步接收,也適用于同步 發(fā)送。外同步是由外設(shè)來搜索同步字符, 一旦搜索成功, 立即給串行接口的同步 輸入端送來一個(gè)高

60、電平, 表示同步已實(shí)現(xiàn), 串行接收端開始接收數(shù)據(jù)。 而內(nèi)同步 由串行接口本身來搜索同步字符而實(shí)現(xiàn)同步的。雙同步工作時(shí) 8251A的 TxD 和RxD線上的數(shù)據(jù)格式為:發(fā)送格式 TxD 線上的串行輸出數(shù)據(jù)發(fā)送格式 TxD 線上的串行輸出數(shù)據(jù)同步字符 1同步字符 2數(shù)據(jù)字符接收格式 RxD 線上的串行輸入數(shù)據(jù)同步字符 1同步字符 2數(shù)據(jù)字符8251A 和 CPU 之間有哪些連接信號(hào)?其中 C/D和RD、WR 如 何結(jié)合起來完成對命令、數(shù)據(jù)的寫入和狀態(tài)、數(shù)據(jù)的讀出? 答: 1.8251A 和CPU之間的連接信號(hào)有:片選信號(hào) CS,數(shù)據(jù)信號(hào) D7D0, 讀/寫控制信號(hào) RD 、 WR 、C/ D ,收

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論