《微機(jī)原理與接口技術(shù)》復(fù)習(xí)練習(xí)題與答案
13級(jí)微機(jī)原理與接口技術(shù)復(fù)習(xí)練習(xí)題與答案(韶關(guān)學(xué)院計(jì)算機(jī)科學(xué)學(xué)院 彭玄璋)一、 填空題1、8086/8088 CPU內(nèi)部結(jié)構(gòu)按功能分為兩部分,即由 執(zhí)行 單元和 總線接口 單元組成。2、若CPU的數(shù)據(jù)線寬度為16位,則它的字長為 16 位;地址線寬度為20位,則它的尋址空間為 1MB 。3、8086CPU為了適應(yīng)各種應(yīng)用場(chǎng)合有兩種工作模式,即是 最小模式 和 最大模式 。4、8086/8088CPU復(fù)位后,CS的內(nèi)容為 0FFFFH ,IP的內(nèi)容為 0000H 。5、8086的16位標(biāo)志寄存器包括 6 個(gè)狀態(tài)標(biāo)志位和 3 個(gè)控制標(biāo)志位。6、計(jì)算機(jī)的I/O端口地址的編址方式有 統(tǒng)一編址 和 獨(dú)立編址 ,而8086CPU尋址外設(shè)采用 獨(dú)立 編址方式。7、CPU與外設(shè)間有4種I/O信息傳送方式,即 無條件傳送 、 查詢傳送 中斷傳送 、 直接存儲(chǔ)器存?。―MA) 。8、若某輸出外設(shè)的I/O接中的數(shù)據(jù)端口地址為100H,要將字節(jié)數(shù)據(jù)從8086CPU輸出到外設(shè)的指令是 MOV DX,100H 和 OUT DX,AL 。9、響應(yīng)可屏蔽中斷INTR的條件是控制標(biāo)志IF= 1 。10、若8253的某一計(jì)數(shù)器用于輸出方波,該計(jì)數(shù)器的工作方式為 3 ;若該計(jì)數(shù)器輸入頻率為100KHz,輸出方波頻率為10KHz,則計(jì)數(shù)初值應(yīng)設(shè)為 10 。11、串行通信協(xié)議分為 異步通信 和 同步通信 。12、波特率是指 單位時(shí)間內(nèi)傳送二進(jìn)制數(shù)據(jù)的位數(shù) 。13、8088 組成的系統(tǒng)中,存儲(chǔ)器分 若干 個(gè)不超過 64K 字節(jié)的段。14、當(dāng)8088CPU的INTR端輸入一個(gè) 高 電平時(shí), 可屏蔽中斷 獲得了中斷請(qǐng)求。15、 8088工作于最小工作模式時(shí),控制總線由 CPU本身 產(chǎn)生,工作于最大工作模式時(shí),控制總線由 總線控制器8288 產(chǎn)生。16、 數(shù)據(jù)的并行I/O方式是以 字節(jié)或字 為單位進(jìn)行傳送;數(shù)據(jù)的串行I/O方式是以 位 為單位進(jìn)行傳送。17、 從地址/數(shù)據(jù)復(fù)用線中分離出地址信息需用邏輯芯片 鎖存器 ,地址/數(shù)據(jù)復(fù)用線中的雙向數(shù)據(jù)傳送需用邏輯芯片 雙向緩沖器 。18、 中斷優(yōu)先權(quán)管理的方法有 軟件查詢法 、 硬件菊花鏈法 、和 專用芯片法 。19、 若8253的某一計(jì)數(shù)器用于輸出方波,該計(jì)數(shù)器的工作方式為 3 ;若該計(jì)數(shù)器的輸入頻率為100KHz,輸出方波頻率為10KHz,則計(jì)數(shù)初值應(yīng)設(shè)置為 10 。20、 在8259初始化控制字中, ICW1 和 ICW2 為必寫控制字,21、 8237A的四種工作方式為 單字節(jié)傳送 、 塊傳送 、 請(qǐng)求傳送 、 級(jí)連方式 。22、 ADC0809是 逐次逼近 型A/D轉(zhuǎn)換芯片,有 8 個(gè)模擬通道,23、 串行通信線路有三種連接方式,即 單工方式 、半雙工方式 和 全雙工方式 。24、8086CPU時(shí)鐘頻率為5MHZ時(shí),它的典型總線周期為800ns。CPU完成一次訪問MEM或I/O端口操作所需要的時(shí)間, 5MHZ,那么時(shí)鐘周期就是0.2us,一個(gè)總線周期(不包括Tw的)=4*時(shí)鐘周期=o.8us=8*100ns那么就是0.8us25、可編程定時(shí)/計(jì)數(shù)器8253內(nèi)含 3 個(gè)計(jì)數(shù)器,每個(gè)計(jì)數(shù)器的三個(gè)引腳為 CLK 、 GATE 和 OUT 。分別稱為計(jì)數(shù)器0、計(jì)數(shù)器1和計(jì)數(shù)器2,他們的機(jī)構(gòu)完全相同。每個(gè)計(jì)數(shù)器的輸入和輸出都決定于設(shè)置在控制寄存器中的控制字,互相之間工作完全獨(dú)立。每個(gè)計(jì)數(shù)器通過三個(gè)引腳和外部聯(lián)系,一個(gè)為時(shí)鐘輸入端CLK,一個(gè)為門控信號(hào)輸入端GATE,另一個(gè)為輸出端OUT。26、8255有多種工作方式, A口有 3 種工作方式,B口有 2 種工作方式,C口有 1 種工作方式。8255A有3種基本的工作方式:方式0基本輸入輸出方式,適用于不需要用應(yīng)答信號(hào)的簡單輸入輸出場(chǎng)合;方式1選通輸入輸出方式,適用于必須在聯(lián)絡(luò)信號(hào)控制下才能完成的I/O操作;方式2雙向總線I/O方式,適用于雙向總線方式。 端口A可工作于:方式0、1、2; 端口B可工作于:方式0,1; 端口C可工作于:方式0。27、8086CPU尋址外設(shè)為獨(dú)立編址方式,使用專門的I/O指令為 IN 以及 OUT 。28、總線是 連接多個(gè)裝置或功能部件的一組公共信號(hào)線 。29、8259有 高電平 和 邊沿 兩種觸發(fā)方式。30、根據(jù)中斷請(qǐng)求來自外部或來自內(nèi)部,中斷分為 硬件中斷和 軟件中斷 。31、某微機(jī)系統(tǒng)采用一塊8253芯片,時(shí)鐘頻率為1MHz。若要求通道0工作于方式3,輸出的方波周期為0.5ms,則計(jì)數(shù)值應(yīng)設(shè)定為_500_,通道控制字應(yīng)設(shè)定為_36H_或37H _。500,00110111B 32、8086的中斷向量表位于內(nèi)存的_00000H003FFH_區(qū)域,它可以容納_256_個(gè)中斷向量, 每一個(gè)向量占_4_ _ 個(gè)字節(jié)。中斷向量是中斷服務(wù)程序的入口地址。將所有中斷向量集中放在一起,形成中斷向量表。8086系統(tǒng)有256個(gè)類型的中斷源。每個(gè)類型對(duì)應(yīng)一個(gè)中斷向量,一個(gè)中斷向量由四個(gè)字節(jié)組成:2個(gè)高地址字節(jié):存放中斷服務(wù)程序的代碼段的段值;2個(gè)低地址字節(jié):存放中斷服務(wù)程序的偏移地址。中斷向量表放在內(nèi)存的地段地址0單元開始的單元:00000H03FFFH。33、若8086 CPU引腳狀態(tài)是M/=1,=1,=0,則此時(shí)執(zhí)行的操作是_存儲(chǔ)器的寫操作。WR/(write):寫信號(hào),輸出,低電平有效, RD/(read):讀信號(hào),輸出,三態(tài),低電平有效。34、多片8259A級(jí)聯(lián)時(shí),主片必須采用的嵌套方式是 特殊全嵌套方式 。35、8251芯片中設(shè)立了_奇/偶錯(cuò)_、_幀格式錯(cuò) 和_溢出錯(cuò)_三種出錯(cuò)標(biāo)志。36、8259A共有_ 7_個(gè)可編程的寄存器,它們分別用于接受CPU送來的_初始化 命令字和_操作_命令字。8259A是專門為了對(duì)8085A和8086/8088進(jìn)行中斷控制而設(shè)計(jì)的芯片,它是可以用程序控制的中斷控制器。單個(gè)的8259A能管理8級(jí)向量優(yōu)先級(jí)中斷。37、8086CPU的引腳的作用是_決定CPU工作在什么模式(最小/最大)_。38、8086中引腳BHE信號(hào)有效的含義表示_高8位數(shù)據(jù)線D15D8有效_。39、一個(gè)串行異步通信的字符格式由一個(gè)起始位,7個(gè)數(shù)據(jù)位,一個(gè)奇偶效驗(yàn)位和一個(gè)停止位構(gòu)成,若每秒傳送240個(gè)字符,則數(shù)據(jù)傳送的波特率是_2400Bd_,傳送每位信息所占用的時(shí)間是_0.417ms_ 1個(gè)字符=1起始位+7數(shù)據(jù)位+1奇偶校驗(yàn)+1停止=10bits,240*10=2400bits/s ,1/2400=0.00041740、CPU在執(zhí)行IN AL,DX指令時(shí),M/ 引腳為 低 電平, 為 低 電平。CPU讀取AL的內(nèi)容相當(dāng)對(duì)外設(shè)寫操作既WR有效位高電平1,RD讀操作相反低電平0.41、匯編指令通常包括 操作碼 和 操作數(shù) 兩部分。二、 單項(xiàng)選擇題1、8086/8088CPU與慢速的存儲(chǔ)器或I/O接口之間為了使速度能匹配,有時(shí)需要在( C )狀態(tài)之間插入若干個(gè)等待周期TW 。A、T1和T2; B、T2和T3 ;C、T3和T4;D、隨機(jī)。2、在并行可編程電路8255中,8位的I/O端口共有( C )。A、 1個(gè); B、2個(gè); C、3個(gè); D、4 個(gè)。3、可編程定時(shí)/計(jì)數(shù)器電路8253的工作方式共有( D )。A、 3種; B、4種; C、5種; D、6種。4、8086系統(tǒng)中外設(shè)請(qǐng)求總線控制權(quán)是通過控制線( C )。A、NMI; B、TEST; C、HOLD; D、INTR。5、可用作總線控制器的接口芯片是( C )。A、8255; B、8251; C、8288; D、8237A。6、 PC/XT 機(jī)的有效I/O端口地址范圍是( B )。A、00FFH; B、03FFH ; C、0FFFFH; D、0FFFFFH。7、當(dāng)微機(jī)系統(tǒng)工作在DMA方式時(shí),該系統(tǒng)的地址信號(hào)是由( B )提供的。A、微處理器; B、DMA控制器; C、中斷控制器; D、總線控制器。8、中斷號(hào)為16H 的中斷向量在中斷向量表的首址為( A )。A、58H; B、60H; C、62H; D、64H。16H*4H=00010110*100=00 0101 1000=058H9、8259的中斷屏蔽寄存器為( B )。IMR被用作過濾被屏蔽的中斷;IRR被用作暫時(shí)放置未被進(jìn)一步處理的Interrupt;當(dāng)一個(gè)Interrupt正在被CPU處理時(shí),此中斷被放置在ISR中。A、IRR; B、IMR; C、ISR; D、都不是。10、DAC0832是( B )位的數(shù)模轉(zhuǎn)換芯片。* D0D7:8位數(shù)據(jù)輸入線A、4; B、8; C、12; D、16。11、8088CPU工作在最小模式,( D )引腳接+5V.A. B. C. D.12、 CPU對(duì)存儲(chǔ)器訪問時(shí),地址線和數(shù)據(jù)線的有效時(shí)間關(guān)系為( B )。A.同時(shí)有效 B.地址線先有效 C.數(shù)據(jù)線先有效 D.同時(shí)無效13、 常用接口芯片 74LS245是( B )。A.鎖存器 B.緩沖器 C.計(jì)數(shù)器 D.反相器14、 通常一個(gè)外設(shè)的狀態(tài)信息在狀態(tài)端口內(nèi)占有( A )位。A.1 B.2 C.8 D.1615、 通常8088 CPU在( A )時(shí)刻采樣READY信號(hào),若無效在T3和T4之間插入Tw。A. T3下降沿 B.T2上升沿 C.T3上升沿 D.T4下降沿16、 8088 CPU中斷優(yōu)先級(jí)順序?yàn)椋?D )。A.NMI中斷、INTR中斷、軟中斷 B.NMI中斷、軟中斷、INTR中斷C.軟中斷、INTR中斷、NMI中斷 D.軟中斷、NMI中斷、INTR中斷17、 若總線頻率為8MHz,32位數(shù)據(jù)傳送,總線帶寬為( C )。A.8MB/S B.16MB/S C.32MB/S D.64MB/S18、 當(dāng)微機(jī)系統(tǒng)工作在DMA方式時(shí),該系統(tǒng)的地址信號(hào)是由( B )提供的。A.微處理器 B.DMA控制器 C.中斷控制器 D.總線控制器19、 分辨率為16位的DAC能給出滿量程電壓的( D )分辨能力。A.1255 B.1127 C.1511 D.16553520、 RS232標(biāo)準(zhǔn)定義的表示數(shù)據(jù)信號(hào)邏輯“1”的電平為( B )。A.5V15V間任一電壓B.15V5V間任一電壓C.5VD.0V21、用8259A管理優(yōu)先級(jí)時(shí),當(dāng)一個(gè)中斷請(qǐng)求服務(wù)結(jié)束后,其中斷源的優(yōu)先級(jí)降為最低,其余中斷源優(yōu)先級(jí)也相應(yīng)變化,這是一種( A )方式。 A自動(dòng)循環(huán) B完全嵌套 C特殊循環(huán) D特殊屏蔽22、異步通信方式的時(shí)鐘頻率可以選擇波特率的( D )倍四種之一。A.1,2,4,5 B.1,8,16,32 C.2,16,32,64 D.1,16,32,6423、8255A的方式選擇控制字應(yīng)寫入( D )。A. A口 B. B口 C. C口 D. 控制口24、兩片8259A構(gòu)成級(jí)聯(lián)方式的中斷控制器,可連( C )中斷源。 A.8 B.16 C.15 D.2425、8086CPU用ALE的下降沿將T1期間出現(xiàn)的( A )信息鎖存在外部地址鎖存器中。 A A0A19 B. C.A和B D.D0D1526、若8259A工作在優(yōu)先級(jí)自動(dòng)循環(huán)方式,則IRQ3的中斷請(qǐng)求被響應(yīng)并且服務(wù)完畢后,優(yōu)先權(quán)最高的中斷源是( D )。 AIRQ0 BIRQ2 CIRQ3 DIRQ427、最小模式下,數(shù)據(jù)收發(fā)器進(jìn)行數(shù)據(jù)接收時(shí),和引腳分別為( C )電平。 A、高,高 B、高,低 C、低,低 D、低,高28、微處理器與外設(shè)傳送數(shù)據(jù)的過程中,只由硬件完成不需軟件支持的方式( A )。A、DMA B、無條件 C、查詢 D、中斷29、當(dāng)IF=0,8088/8086CPU不響應(yīng)( B )中斷請(qǐng)求。用DMA傳送方式,數(shù)據(jù)在外設(shè)和內(nèi)存之間直接進(jìn)行傳送,無需CPU的參預(yù)和不是用軟件來實(shí)現(xiàn),而是由專門的DMA控制器來對(duì)數(shù)據(jù)傳送過程進(jìn)行控制用DMA傳送方式,數(shù)據(jù)在外設(shè)和內(nèi)存之間直接進(jìn)行傳送,無需CPU的參預(yù)和不是用軟件來實(shí)現(xiàn),而是由專門的DMA控制器來對(duì)數(shù)據(jù)傳送過程進(jìn)行控制A.INT N B.INTR C.NMI D.INTO30、設(shè)串行異步通信時(shí),數(shù)據(jù)傳送的速率是400字符秒,每個(gè)字符為12位二進(jìn)制數(shù)據(jù),則傳送的波特率是 ( C )。 A、1200 B、2400 C、4800 D、9600三、 是非題1、8086CPU和8088CPU都是16位微處理器芯片( )。2、規(guī)則字即存放字?jǐn)?shù)據(jù)的存儲(chǔ)單元地址必順為偶地址( )。3、IP中存放的是正在執(zhí)行的指令的偏移地址( )。4、USB1.0的數(shù)據(jù)傳輸速率可達(dá)480Mbps( )。5、ADC0809是8位逐次逼近型A/D轉(zhuǎn)換芯片( )。6、RS-232C的電平與TTL電平相同( )。7、DMA傳送方式無需CPU干預(yù),直接進(jìn)行數(shù)據(jù)傳送 ( ) 。8、8295的特殊屏蔽方式,對(duì)低于正在服務(wù)中斷程序的中斷請(qǐng)求給予響應(yīng)處理 ( ) 。9、8253在工作方式設(shè)定時(shí)總是先寫計(jì)數(shù)初值再寫控制字( )。10、異步通信數(shù)據(jù)傳送速率要比同步通信的低( )。 11、8086CPU中,數(shù)據(jù)線D0D15和地址線A0A15為復(fù)用引腳。( )12、一個(gè)I/O接口中必須要有數(shù)據(jù)、控制和狀態(tài)端口。( )13、執(zhí)行INT 10H時(shí),中服程序的入口地址在00040H開始存放。( )14、異步串行通信中加入奇偶校檢位具有糾錯(cuò)功能。( )15、ADC0809可對(duì)8路模擬信號(hào)同時(shí)進(jìn)行A/D轉(zhuǎn)換。( )16、顯示器內(nèi)存是雙端口內(nèi)存。( )17、可編程定時(shí)/計(jì)數(shù)器8253中含三個(gè)獨(dú)立的16位計(jì)數(shù)器。( )18、在8259級(jí)聯(lián)系統(tǒng)中,作為主片的8259A的某些IR引腳連接從片,同時(shí)也可以在另一些IR引腳上直接連接外設(shè)的中斷請(qǐng)求信號(hào)端。( )19、8253的計(jì)數(shù)器在不同的工作方式中,計(jì)數(shù)到0時(shí),都會(huì)從OUT 輸出一個(gè)相同的波形信號(hào)。( )20、8251的溢出錯(cuò)誤指示CPU還未取走前一個(gè)數(shù)據(jù),接收移位寄存器又將接收到的一個(gè)新數(shù)據(jù)送至輸入緩沖器。( )21、對(duì)于非屏蔽中斷申請(qǐng),CPU響應(yīng)條件為CPU允許中斷和執(zhí)行完現(xiàn)行指令。()22、用軟件確定中斷優(yōu)先權(quán)時(shí),只要改變查詢的順序,即可以改變中斷的優(yōu)先權(quán)。( )23、8259級(jí)聯(lián)特殊全嵌套方式,從片向主片發(fā)出連續(xù)兩次以上中斷請(qǐng)求不處理。 ( )24、總線控制器8288專門用于8086最大模式下產(chǎn)生控制信號(hào)。( )25、8253工作在方式0時(shí),計(jì)數(shù)過程結(jié)束能自動(dòng)裝入計(jì)數(shù)初值繼續(xù)進(jìn)行計(jì)數(shù)。( )26、74LS138是3-8譯碼器。( )27、通常并行I/O接口的速度比串行I/O接口的快。( )28、堆棧操作應(yīng)滿足先進(jìn)先出原則。( )四、 簡答題1、8086CPU分為哪兩個(gè)部分?各部分主要由哪些部件組成?主要進(jìn)行哪些操作?答:8086CPU按功能結(jié)構(gòu)來說,主要由總線接口部件BIU和執(zhí)行部件EU組成??偩€接口部件的作用是負(fù)責(zé)與存儲(chǔ)器或I/O端口傳送數(shù)據(jù),總線接口部件主要包括:4個(gè)段地址寄存器;一個(gè)指令指針寄存器IP;一個(gè)20位地址加法器;6字節(jié)指令隊(duì)列;內(nèi)部通信寄存器和總線控制邏輯。執(zhí)行部件的作用是執(zhí)行指令,主要包括:8個(gè)16位通用寄存器(AX、BX、CX、DX、SP、BP、SI、DI);標(biāo)志寄存器FLAGS;算術(shù)邏輯運(yùn)算單元ALU和EU控制系統(tǒng)。2為什么CPU與外設(shè)交換信息需要通過專門的I/O接口? 答:由于計(jì)算機(jī)外設(shè)的種類繁多,包括光、機(jī)、電、聲和磁等外設(shè)。它們的工作速度高低不一。外部設(shè)備所處理的信息格式也有多種形式,有串行也有并行,有數(shù)字式也有模擬式,有標(biāo)準(zhǔn)的邏輯電平信號(hào)也有非標(biāo)準(zhǔn)的邏輯電平信號(hào)。因此,CPU與外設(shè)交換信息是比較復(fù)雜的。因此外部設(shè)備不能直接接到計(jì)算機(jī)的系統(tǒng)總線上,而必須通過專門的I/O接口才能實(shí)現(xiàn)二者之間的相互通信,即I/O接口是CPU與外設(shè)間的橋梁。3簡述微機(jī)(8086)系統(tǒng)的中斷處理過程?答:微機(jī)系統(tǒng)中斷處理的基本過程應(yīng)包括:中斷請(qǐng)求、中斷優(yōu)先級(jí)判別、中斷響應(yīng)、中斷處理及中斷返回等五個(gè)基本階段。4、什么是是總線?它如何分類?答:總線是連接多個(gè)裝置或功能部件的一組公共信號(hào)線??偩€的分類方法有以下幾種:按數(shù)據(jù)傳送格式分類,按時(shí)序控制方式分類,按所處的位置和功能分類,按傳送信息類型分類。 按數(shù)據(jù)傳送格式,總線可分為串行總線與并行總線。按時(shí)序控制方式,總線可分為同步總線(含同步擴(kuò)展總線)與異步總線。按所處的位置和功能,可分為CPU內(nèi)部總線、系統(tǒng)總線、局部總線和外部外部總線。按傳送數(shù)據(jù)類型,可分為地址總線、數(shù)據(jù)總線、控制總線。5、8086 CPU的最小和最大工作模式的主要不同點(diǎn)?答:CPU的控制線應(yīng)用方式不同:在最小工作模式下,計(jì)算機(jī)系統(tǒng)的所需的控制線由CPU直接提供;在最大工作模式下,CPU僅為計(jì)算機(jī)系統(tǒng)提供必要的控制線,而系統(tǒng)所需的控制線由專用芯片總線控制器8288產(chǎn)生。計(jì)算機(jī)系統(tǒng)復(fù)雜度不同:在最小工作模式下,計(jì)算機(jī)系統(tǒng)僅用單處理器(8086)組成,系統(tǒng)結(jié)構(gòu)簡單且功能也較小;在最大工作模式下,計(jì)算機(jī)系統(tǒng)由多處理器組成,除8086CPU外,還有總線控制器8288和協(xié)處理器8087。6、 什么是統(tǒng)一編址,分別編址? 各有何特點(diǎn)?答:統(tǒng)一編址:存儲(chǔ)器單元地址和I/O端口地址在同一個(gè)地址空間中分配。由于I/O端口地址占用存儲(chǔ)器單元地址,減少了存儲(chǔ)器的尋址空間,訪問存儲(chǔ)器單元和I/O端口可用相同的指令;分別編址:存儲(chǔ)器單元地址和I/O端口地址在不同的地址空間中分配。存儲(chǔ)器和I/O端口都獨(dú)立且較大的尋址空間,CPU需要用門的控制線來識(shí)別是訪問存儲(chǔ)器還是訪問I/O端口,訪問存儲(chǔ)器單元和I/O端口要用不相的指令。7、 什么是硬件中斷和軟件中斷?在PC機(jī)中二者的處理過程有什么不同?答:硬件中斷是外部設(shè)備通過向CPU的中斷請(qǐng)求線輸入電信號(hào)來來獲得中斷請(qǐng)求;軟件中斷是處理機(jī)內(nèi)部識(shí)別中斷請(qǐng)求,如內(nèi)部異常中斷或指令中斷。 硬件中斷一般是由中斷控制器提供中斷類型碼,處理機(jī)自動(dòng)轉(zhuǎn)向中斷處理程序;軟件中斷完全由處理機(jī)內(nèi)部形成中斷處理程序的入口地址并轉(zhuǎn)向中斷處理程序,不需外部提供信息。8、 串行總線的類型及特點(diǎn)?答:串行總線分為串行異步總線和串行同步總線等兩類,它們的共同點(diǎn)是信息按位方式在單線上順序傳送,特點(diǎn)是:串行異步總線:在傳送的“字節(jié)”信息中各位間有相對(duì)的時(shí)間關(guān)系,但“字節(jié)”與“字節(jié)”這間無任何時(shí)間關(guān)系。串行同步總線:在傳送的信息中,字節(jié)內(nèi)位與位之間,字節(jié)與字節(jié)之間與同步時(shí)鐘有嚴(yán)格的時(shí)間關(guān)系。9、 輸入接口常接有三態(tài)緩沖器,而輸出接口常接有鎖存器,試述其理由?答:為了協(xié)調(diào)高速CPU與慢速的外設(shè)之間的速度匹配,以及避免數(shù)據(jù)的丟失,接口中一般設(shè)有數(shù)據(jù)鎖存器或緩沖器。在輸出接口中,一般都要安排鎖存器,以便鎖存輸出數(shù)據(jù),使較慢的外設(shè)有足夠的時(shí)間進(jìn)行處理,避免數(shù)據(jù)丟失,而CPU和總線可以回頭去忙自己的其它工作。在輸入接口中,一般需要安排緩沖隔離環(huán)節(jié),如三態(tài)門。特別是當(dāng)有多個(gè)外設(shè)與CPU進(jìn)行數(shù)據(jù)交換時(shí),只有當(dāng)CPU連通時(shí),才允許某個(gè)選定的輸入設(shè)備才進(jìn)行數(shù)據(jù)傳輸,而其它外設(shè)此時(shí)和數(shù)據(jù)總線隔離,避免干擾數(shù)據(jù)的傳輸。10、8253內(nèi)部有幾個(gè)獨(dú)立的定時(shí)/計(jì)數(shù)器?各是多少位?它們的CLK端、OUT端和GATE端的作用分別是什么?答:8253有3個(gè)獨(dú)立的定時(shí)/計(jì)時(shí)器,都是16位,每個(gè)計(jì)數(shù)器有三個(gè)引腳CLK端、GATE端和OUT端,三個(gè)計(jì)數(shù)器功能完全一樣。CLK是脈沖輸入引腳,計(jì)數(shù)器對(duì)該引腳輸入的脈沖進(jìn)行計(jì)數(shù);GATE是門控脈沖輸入引腳GATE=0禁止計(jì)數(shù)器工作,GATE=1則允許計(jì)數(shù)器工作;OUT為計(jì)數(shù)到O/定時(shí)時(shí)間到輸出引腳,當(dāng)計(jì)數(shù)到0時(shí),根據(jù)不同工作方式輸出不同形式的信號(hào)。11、在通常的輸入傳送中,為什么輸入接口僅用緩沖器而不用鎖存器?答:在輸入數(shù)據(jù)時(shí),因簡單外設(shè)輸入數(shù)據(jù)的保持時(shí)間相對(duì)于CPU的接收速度而言較長。因而輸入數(shù)據(jù)通常不用加鎖存器來鎖存,可直接使用三態(tài)緩沖器與CPU數(shù)據(jù)總線相連即可。12、在輸出傳送中,為什么輸出接口必須要鎖存器?答:在CPU在輸出數(shù)據(jù)時(shí)經(jīng)過數(shù)據(jù)總線的時(shí)間是很短的,因而需要使用輸出鎖存器把要輸出的數(shù)據(jù)保留,即用鎖存器將數(shù)據(jù)鎖存后輸出給外設(shè)。13、簡述I/O接口基本功能?答:(1)對(duì)輸入、輸出數(shù)據(jù)進(jìn)行緩沖和鎖存;(2)對(duì)信號(hào)的形式和數(shù)據(jù)格式進(jìn)行變換; (3)對(duì)I/O端口進(jìn)行尋址;(4)提供聯(lián)絡(luò)信號(hào)。五、 閱讀程序并回問答題1、已知:(AX)=2233H, (BX)=5566H, 執(zhí)行了下面的程序段后, (AX)= 0AA9AH ,(BX)= 2233H 。CMP AX,BXJG NEXTXCHG AX,BXNEXT: NEG AX 2、已知: (AX)=6666H, (BX)=0FF00H, (CF)=0。在執(zhí)行下面程序段后: (AX)= 0000H , (BX)= 00FFH ,(CF)= 0 。 MOV AX,5555H AND AX,BX XOR AX,AX NOT BX3、設(shè)寄存器AL,BL,CL中內(nèi)容均為76H, XOR AL,0FH AND BL,0FH OR CL,0FH 執(zhí)行上述指令序列后,(AL)= _79H_ ; (BL)=_06H _,(CL)=_7FH_ 。4、DAT1 DB 12H,34H,56H,78H MOV CX,0 MOV AX,WORD PTR DAT1 MOV CL,DAT1+3當(dāng)程序段執(zhí)行完后AX= 3412H ; CX= 0078H 。六、計(jì)算分析題1. 異步通信,當(dāng)波特率為4800時(shí),字符幀包含個(gè)起始位、7個(gè)數(shù)據(jù)位、2個(gè)停止位(無校驗(yàn)位)共10位,試求傳輸2KB的數(shù)據(jù)所需時(shí)間為多少? 解:位周期=1/波特率=1/4800(秒) 傳送總位數(shù)=10*2*1024=20480(位) 所需時(shí)間=位周期*傳送總位數(shù)=1/4800*20480=4.27(秒) 2、異步通信,當(dāng)波特率為9600時(shí),對(duì)字符幀為個(gè)起始位、7個(gè)數(shù)據(jù)位、2個(gè)停止位(無校驗(yàn)位)。試求每秒鐘最多傳輸多少個(gè)字符? 解:1字符幀總位數(shù)=1+7+2(位) 1秒傳輸?shù)奈粩?shù)=波特率=9600(位)1秒傳輸?shù)淖址麛?shù)=9600/(1+7+2)=960 3初始化8259A的控制字如下: ICW1:00010011B ICW2:00001000B ICW4:00001001B 試分析:(1)單片還是級(jí)聯(lián) (2)中斷類型號(hào)碼范圍 (3)CPU類型。 解: (1)單級(jí)還是級(jí)聯(lián) (2)中斷類型號(hào)碼范圍 (3)CPU類型 單級(jí) 08H-0FH 80864、初始化8259A的控制字如下: ICW1:00010011B ICW2:00001000B ICW4:00001001B 試分析:(1)IR的觸發(fā)方式 (2)中斷類型號(hào)碼范圍 (3)SP/EN引腳的作用。解:(1)IR的觸發(fā)方式 (2)中斷類型號(hào)碼范圍 (3)SP/EN引腳的作用 上升沿 08H-0FH 緩沖控制信號(hào)5、指出下列程序段的功能,并加上具體注釋MOV AL,n ;N為中斷類型號(hào)MOV AH,25H ;25H為功能調(diào)用號(hào)MOV DX,SEG INTP MOV DS,DX ;DS為中斷服務(wù)程序INTP的段地址MOV DX,OFFSET INTP; DX為中斷服務(wù)程序INTP的偏移地址INT 21H ;DOS功能調(diào)用 程序段的功能是使用25H功能調(diào)用將中斷向量寫入中斷向量表中。6、 某中斷程序入口地址為2300H:0456H,中斷向量號(hào)為08H,問放置在中斷向量表中什么位置是?入口地址在向量表中如何放置?解:中斷向量地址中斷向量號(hào)408H420H中斷程序入口地址在00020H開始的四個(gè)單元存放的順序是:56H,04H,00H,23H7、 某系統(tǒng)中8253占用地址為100H103H。初始化程序如下:MOV DX, 103HMOV AL, 16H ;控制字OUT DX, ALSUB DX, 03HOUT DX, AL ;計(jì)數(shù)初值試問:j此段程序是給8253的哪一個(gè)計(jì)數(shù)器初始化?安排工作在哪種工作方式?_;k若該計(jì)數(shù)器的輸入脈沖的頻率為1MHZ,則其輸出脈沖的頻率為:_。解:j因?yàn)榭刂谱譃椋?6H00 01 0110B(計(jì)數(shù)器0,只讀寫低位字節(jié),方式3,二進(jìn)制計(jì)數(shù))計(jì)數(shù)器0, 方式3 ;k f1MHZ/16H1MHZ/2245KHZ8、AB7AB0為8086CPU低八位地址總線,8259、8255與譯碼器74138連接如下圖所示:試問:(1)8259A占用_個(gè)端口地址,分別為_ _,其中ICW1的設(shè)置地址為_ _; (2)8255A占用_個(gè)端口地址,分別為_ _,其中控制寄存器的地址為_。解:(1)8259A占用_2_個(gè)端口地址,分別為_20H,22H(或24H,26H_)_,其中ICW1的設(shè)置地址為_20H(或24H)_; (2)8255A占用_4_個(gè)端口地址,分別為_80H,82H,84H,86H_,其中控制寄存器的地址為_86H_。七、應(yīng)用設(shè)計(jì)題1、 分析I/O端口地址為300H的譯碼邏輯,再畫出邏輯電路圖。解: 地址為300H的地址線邏輯電平是: A9 A8 A7 A6 A5 A4 A3 A2 A1 A0300H= 1 1 0 0 0 0 0 0 0 0 采用門電路進(jìn)行地址譯碼 (可以選用多種門電路形式)數(shù)據(jù)線DBRDWRCS端口譯碼電路0D0D7D0D711000000000&I/O接口PC總線A9A8A7A0AENIORIOW數(shù)據(jù)線DBRDWRCS端口譯碼電路0D0D7D07D11000000000&&I/O接口PC總線A9A8A7A0AENIORIOW2、 畫出兩計(jì)算機(jī)軟件聯(lián)絡(luò)傳送的RS-232C(三線)直接連接形式。(TXD)2(RXD)3(GND)7RS-232C (RTS)4(CTS)5(DSR)6(DCD)8(DTR)202(TXD)3(RXD)7(GND)4(RTS) RS-232C5(CTS)6(DSR)8(DCD)20(DTR)計(jì)算機(jī) 計(jì)算機(jī)3、設(shè)8255A的4個(gè)端口地址為90H93H,將A口置成方式0輸出,B口置成方式1輸入,C作為輸入口。要求編制8255A初始化程序并設(shè)計(jì)譯碼電路(可選用任意芯片),只用8位地址線(A0A7)。解: 端口地址為90H時(shí),有 (1分)8255初始化程序:MOV AL,10001111B OUT 93H,AL 2分 IN AL,91H 1分 OUT 90H,AL 1分譯碼電路連接如下: 6分4、 8255A作為打印機(jī)接口,工作于方式0,如下圖A所示。試編寫程序?qū)崿F(xiàn):CPU用查詢方式向打印機(jī)輸出首址為ADY的26個(gè)字符(ASCII碼)。8255A的端口地址為200H203H。 圖A解:打印機(jī)的工作過程如下:當(dāng)主機(jī)要向打印機(jī)輸出字符時(shí),先查詢打印機(jī)忙信號(hào),若打印機(jī)正在處理一個(gè)字符或正在打印一行字符,則BUSY=1;反之,則BUSY=0。因此,當(dāng)查詢到BUSY=0時(shí),則可通過8255A向打印機(jī)輸出一個(gè)字符。此時(shí),要給打印機(jī)的選通端DSTB一個(gè)負(fù)脈沖,將字符選通到打印機(jī)的輸入緩沖器中。由電路圖可知,A口作為傳送字符的通道,工作于方式0輸出;C口高四位工作于方式0輸入,C口低四位工作于方式0輸出。故8255A的方式選擇控制字為10001000B,即88H。其程序如下:Data segmentAport equ 200HCport equ 202HCtrol equ 203HADY db 26 dup(?)Data Ends Stack segment Db 100 dup(?)Stack endsCode segmentAssume cs:code,ds:data,ss:stackMAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV DX,CtrolMOV AL,88H ;方式控制字=10001000BOUT DX,ALMOV AL,03H ;用C口置/復(fù)位控制字使PC1=1OUT DX,ALMOV CX,26 ;設(shè)置計(jì)數(shù)器初值為26LEA SI,ADYLL:MOV DX,CportIN AL,DX ;讀C口的值 AND AL,20H ;測(cè)試D5位JNZ LL ;不為0,則PC5=1,打印機(jī)正忙,等待MOV DX,AportMOV AL,SI ;打印機(jī)不忙,則送字符給A口OUT DX,ALMOV DX, CtrolMOV AL,02H ;使PC1=0 OUT DX,AL INC AL ;使PC1=1,則得一個(gè)負(fù)脈沖輸出 OUT DX,ALINC SI ;修改地址指針DEC CX ;修改計(jì)數(shù)器的值JNZ LL ;26個(gè)字符未輸完,則繼續(xù)RETMAIN ENDPCODE ENDSEND MAIN5、某PC機(jī)應(yīng)用系統(tǒng)以8255A作為接口,采集8位開關(guān)S0S7的狀態(tài),然后通過一組發(fā)光二極管LED0LED7顯示出來(Si閉合,對(duì)應(yīng)的LEDi亮)。電路連接圖如下圖所示。(1)寫出8255的四個(gè)端口地址;(2)寫出8255的方式控制字(未用的位設(shè)為0); (3)編寫實(shí)現(xiàn)給定功能的程序段。附:8255A控制字格式:D0:C口低4位方式,0輸出、1輸入D1:B口I/O方式,0輸出、1輸入D2:B口工作方式,0方式0、1方式1D3:C口高4位方式,0輸出、1輸入D4:A口I/O方式,0輸出、1輸入D6、D5:A口工作方式,00-方式0、01-方式1、10或11-方式2D7:標(biāo)志位為1解:(1)由圖可知,當(dāng)時(shí),74LS138的輸出低電平,選中8255A。由此可知:8255A的A口、B口、C口及控制口地址分別為:320H、321H、322H、323H。(2)A口工作在方式0輸出、B口工作在方式0輸入,C口空閑,所以8255A的工作方式控制字為:82H。(3)程序段如下:MOV AL,82H ;置方式字MOV DX,323H ;置控制口地址OUT DX,AL ;寫控制字MOV DX,321H ;置B口地址IN AL,DX ;讀開關(guān)狀態(tài)(斷開為1,接通為0)NOT AL ;狀態(tài)取反MOV DX,320H ;置A口地址OUT DX,AL ;輸出(1燈亮,0燈滅)HLT ;停機(jī)6、某系統(tǒng)中8253地址為340H343H,輸入頻率為10MHZ脈沖信號(hào),輸出為1HZ,占空比為1:1的脈沖信號(hào)(方波),請(qǐng)寫出初始化程序并畫出相應(yīng)電路圖及地址譯碼連接圖。(12分)提示(1) 地址總線只用A0A9,控制線用IOR、IOW,譯碼器可采用邏輯電路與LS138譯碼器的組合; (2) 8253的工作方式字如下圖。 解:(1)電路圖及地址譯碼連接圖如下:當(dāng)時(shí),74LS138的輸出低電平,選中8253。由此可知:8253的計(jì)數(shù)器0、計(jì)數(shù)器1、計(jì)數(shù)器2及方式控制口地址分別為:340H、341H、342H、343H。又因?yàn)镃LK頻率為10MHz,要求在OUT端產(chǎn)生頻率1Hz的脈沖,此時(shí)計(jì)數(shù)值為10000000,超過一個(gè)計(jì)數(shù)通道的范圍,要把2個(gè)計(jì)數(shù)通道串聯(lián)起來使用。(2)l 確定計(jì)數(shù)初值:n CNT0: 10MHZ/1KHZ = 10000n CNT1: 1KHz/1Hz = 1000l 確定控制字:n CNT0:方式3,16位計(jì)數(shù)值為 00 11 011 0Bn CNT1:方式3,16位計(jì)數(shù)值為 01 11 011 0B8253初始化程序段如下:MOV DX,343H ;8253方式控制字端口地址MOV AL,00110110B ;置計(jì)數(shù)器0方式字OUT DX,AL ;寫入計(jì)數(shù)器0方式字MOV AX,10000 ;置計(jì)數(shù)器0計(jì)數(shù)初值MOV DX,340H ;計(jì)數(shù)器0端口地址OUT DX,AL ;寫入計(jì)數(shù)器0的計(jì)數(shù)初值低8位MOV AL,AHOUT DX,AL ;寫入計(jì)數(shù)器0的計(jì)數(shù)初值高8位MOV DX,343H ;8253方式控制字端口地址MOV AL,01110110B ;置計(jì)數(shù)器1方式字OUT DX,AL ;寫入計(jì)數(shù)器1方式字MOV DX,341H ;計(jì)數(shù)器1端口地址MOV AX,1000 ;置計(jì)數(shù)器1計(jì)數(shù)初值OUT DX,AL ;寫入計(jì)數(shù)器1的計(jì)數(shù)初值低8位MOV AL,AHOUT DX,AL ;寫入計(jì)數(shù)器1的計(jì)數(shù)初值高8位7、某微機(jī)系統(tǒng)中8253的端口地址為250H253H,如何用該定時(shí)/計(jì)數(shù)器將1MHz的脈沖變?yōu)?Hz的脈沖?畫線路連接圖,并編寫初始化程序。解:(1)分析:CLK頻率為1MHz,要求在OUT端產(chǎn)生頻率1Hz的脈沖,此時(shí)計(jì)數(shù)值為1000000,超過一個(gè)計(jì)數(shù)通道的范圍??蓪⒂?jì)數(shù)器0、1串聯(lián),工作方式都均為方式3,計(jì)數(shù)初值分別為1000和1000。畫線路連接圖如下: (2)確定計(jì)數(shù)初值:N=1MHz / 1Hz=1000000n CNT0: N0 =1000n CNT1: N1 = 1000( N0*N1=1000000)確定控制字: CNT0:方式3, 16位二進(jìn)制計(jì)數(shù),方式控制字=00110110B CNT1:方式3, 16位二進(jìn)制計(jì)數(shù),方式控制字= 01110110B8253初始化程序段如下:MOV DX,253H ;8253方式控制字端口地址MOV AL,00110110B ;置計(jì)數(shù)器0方式字OUT DX,AL ;寫入計(jì)數(shù)器0方式字MOV AX,1000 ;置計(jì)數(shù)器0計(jì)數(shù)初值MOV DX,250H ;計(jì)數(shù)器0端口地址OUT DX,AL ;寫入計(jì)數(shù)器0的計(jì)數(shù)初值低8位MOV AL,AHOUT DX,AL ;寫入計(jì)數(shù)器0的計(jì)數(shù)初值高8位MOV DX,253H ;8253方式控制字端口地址MOV AL,01110110B ;置計(jì)數(shù)器1方式字OUT DX,AL ;寫入計(jì)數(shù)器1方式字MOV DX,251H ;計(jì)數(shù)器1端口地址MOV AX,1000 ;置計(jì)數(shù)器1計(jì)數(shù)初值OUT DX,AL ;寫入計(jì)數(shù)器1的計(jì)數(shù)初值低8位MOV AL,AHOUT DX,AL ;寫入計(jì)數(shù)器1的計(jì)數(shù)初值高8位