《微機(jī)原理及匯編語言》習(xí)題講解_第1頁
《微機(jī)原理及匯編語言》習(xí)題講解_第2頁
《微機(jī)原理及匯編語言》習(xí)題講解_第3頁
《微機(jī)原理及匯編語言》習(xí)題講解_第4頁
《微機(jī)原理及匯編語言》習(xí)題講解_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第1章概述一、填空題1 .電子計(jì)算機(jī)主要由運(yùn)算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備等五部分組成。2 .運(yùn)算器和控制器集成在一塊芯片上,被稱作CPU3 .總線按其功能可分?jǐn)?shù)據(jù)總線、地址總線和控制總線三種不同類型的總線。二、簡答題1 .簡述微處理器、微計(jì)算機(jī)及微計(jì)算機(jī)系統(tǒng)三個(gè)術(shù)語的內(nèi)涵。答:微處理器是微計(jì)算機(jī)系統(tǒng)的核心硬件部件,它本身具有運(yùn)算能力和控制功能,對系統(tǒng)的性能起決定性的影響。微處理器一般也稱為CPU微計(jì)算機(jī)是由微處理器、存儲器、I/O接口電路及系統(tǒng)總線組成的裸機(jī)系統(tǒng)。微計(jì)算機(jī)系統(tǒng)是在微計(jì)算機(jī)的基礎(chǔ)上配上相應(yīng)的外部設(shè)備和各種軟件,形成一個(gè)完整的、獨(dú)立的信息處理系統(tǒng)。三者之間是有很大不同的

2、,微處理器是微型計(jì)算機(jī)的組成部分,而微型計(jì)算機(jī)又是微型計(jì)算機(jī)系統(tǒng)的組成部分。2 .微型計(jì)算機(jī)系統(tǒng)總線從功能上分為哪三類?它們各自的功能是什么?答:微型計(jì)算機(jī)系統(tǒng)總線從功能上分為地址總線、數(shù)據(jù)總線和控制總線三類。地址總線用于指出數(shù)據(jù)的來源或去向,單向;數(shù)據(jù)總線提供了模塊間數(shù)據(jù)傳輸?shù)穆窂?,雙向;控制總線用來傳送各種控制信號或狀態(tài)信息以便更好協(xié)調(diào)各功能部件的工作。三、選擇題1下列無符號數(shù)中最小的數(shù)是(A)。A(01A5)HB(1,1011,0101)BC(2590)DD(3764)O2下列有符號數(shù)中最大的數(shù)是(D)。A1002HB1001001100101100BC2570OD9614D3在機(jī)器數(shù)(

3、A)中,零的表示形式是唯一的。A.補(bǔ)碼B.原碼C.補(bǔ)碼和反碼D.原碼和反碼48位二進(jìn)制數(shù)補(bǔ)碼的數(shù)值表示范圍為(A)。A.128+127B.127+127C.一129+128D.128+12838第2章微處理器及其結(jié)構(gòu)一、填空題1. 8086/8088CPUIft行指令中所需操作數(shù)地址由EU計(jì)算出16位偏移量部分送BIU,由BIU最后形成一個(gè)20位的內(nèi)存單元物理地址。2. 用段基值及偏移量來指明內(nèi)存單元地址的方式稱為邏輯地址。3. 8086CPU®用/6根地址線訪問I/O端口,最多可訪問64K個(gè)字節(jié)端口,使用20根地址線訪問存儲單元、最多可訪問1M個(gè)字節(jié)單元。4. CPU取一條指令并執(zhí)

4、行該指令的時(shí)間稱為指令周期、它通常包含若干個(gè)總線周期、而后者又包含有若干個(gè)時(shí)鐘周期。二、單項(xiàng)選擇題1 .某微機(jī)最大可尋址的內(nèi)存空間為16MB,其CPU的地址總線至少應(yīng)有(E)條。A.26B.28C.20D.22E.242 .8086/8088CPU中標(biāo)志寄存器的主要作用是(D)。A.檢查當(dāng)前指令的錯(cuò)誤B.糾正當(dāng)前指令執(zhí)行的結(jié)果與錯(cuò)誤C.決定是否停機(jī)D.產(chǎn)生影響或控制某些后續(xù)指令所需的標(biāo)志3 .指令指針I(yè)P的作用是(A)。A.保存將要執(zhí)行的下一條指令的地址B.保存CPU要訪問的內(nèi)存單元地址C.保存運(yùn)算器運(yùn)算結(jié)果內(nèi)容D.保存正在執(zhí)行的一條指令4 .8086CPU有兩種工作模式,最小模式的特點(diǎn)是(A

5、)。A.CPU提供全部控制信號B.由編程進(jìn)行模式設(shè)定C.不需要8282收發(fā)器D.需要總線控制器8288三、簡答題1.8086/8088CPU分為哪兩個(gè)部分?如何協(xié)調(diào)工作?BIU是總線接答:EU是執(zhí)行部件,主要的功能是執(zhí)行指令和形成有效地址??诓考c片外存儲器及I/O接口電路傳輸數(shù)據(jù),主要功能是形成實(shí)際地址、預(yù)取指令和存取操作數(shù)。EU經(jīng)過BIU進(jìn)行片外操作數(shù)的訪問,BIU為EU提供將要執(zhí)行的指令。EU與BIU可分別獨(dú)立工作,當(dāng)EU不需BIU提供服務(wù)時(shí),BIU可進(jìn)行填充指令隊(duì)列的操作。28086/8088CPU的地址總線有多少位?其尋址范圍是多少?答:8086/8088CPU的地址總線共20位,

6、最大可尋址1MB空間。38086/8088CPU使用的存儲器為什么要分段?怎么分段?答:8086/8088為16位CPU,其內(nèi)部的ALU、相關(guān)的地址寄存器(如SP、IP以及BX、BP、SI、DI)等都是16位的,因而對存儲器地址的處理也只能是16位操作,即8086/8088的直接尋址能力在64KB范圍內(nèi)。而實(shí)際上8086/8088有20條地址線,它的最大尋址空間為1MB。這就產(chǎn)生了一個(gè)矛盾,即如何用16位的地址寄存器去表示一個(gè)20位的存儲器物理地址?實(shí)際使用的解決辦法是:將1MB大小的存儲空間分為若干“段”,每段不超過64KB。這樣,一個(gè)20位的物理地址就可以用“1位段基址:616位偏移量”的

7、形式(稱為邏輯地址)來表示了,其中段地址存放在8086/8088的段寄存器中。48086/8088CPU中有幾個(gè)通用寄存器?有幾個(gè)變址寄存器?有幾個(gè)指針寄存器?通常哪幾個(gè)寄存器亦可作為地址寄存器使用?答:8086/8088CPU中共有:8個(gè)16位的通用寄存器AX、BX、CX、DX、BP、SP、SI、DI;2個(gè)變址寄存器SI、DI;2個(gè)指針寄存器BP、SP;其中BX、BP、SI、DI亦可作地址寄存器。5什么是邏輯地址?什么是物理地址?它們之間有什么聯(lián)系?各用在何處?答:邏輯地址由兩個(gè)16位的部分即段基址和偏移量組成,一般在程序中出現(xiàn)的地址都表示為邏輯地址形式;物理地址是一個(gè)20位的地址,它是唯一

8、能代表存儲空間每個(gè)字節(jié)單元的地址,一般只出現(xiàn)在地址總線上。由于8086/8088CPU中的寄存器只有16位長,所以程序不能直接存放20位的物理地址,而必須借助邏輯地址,即用兩個(gè)16位的寄存器來表示物理地址。他們之間的關(guān)系是:物理地址=段基址*16+偏移量;另外,一個(gè)物理地址可對應(yīng)多個(gè)邏輯地址。6 .設(shè)現(xiàn)行數(shù)據(jù)段位于存儲器0B0000H0BFFFFH單元,DS段寄存器內(nèi)容為多少?答:DS段寄存器內(nèi)容為0B000H。7 .給定一個(gè)存放數(shù)據(jù)的內(nèi)存單元的偏移地址是20C0H,(DS)=0C0E0H,求出該內(nèi)存單元的物理地址。答:物理地址:0C2EC0H。8 .怎樣確定8086的最大或最小工作模式?答:

9、引線MN/MX的邏輯狀態(tài)決定8086的工作模式,MN/MX引線接高電平,8086被設(shè)定為最小模式,mn/MX引線接低電平,8086被設(shè)定為最大模式。9 .8086基本總線周期是如何組成的?答:基本總線周期由4個(gè)時(shí)鐘(CLK)周期組成,按時(shí)間順序定義為T1、T2、T3、T4。10 .有一個(gè)由20個(gè)字組成的數(shù)據(jù)區(qū),其起始地址為610AH:1CE7H。試寫出該數(shù)據(jù)區(qū)首末單元的實(shí)際地址PA。首單元地址:610A0H+1CE7H=62D87H末單元地址:62D87H+27H=62DAEH11 .有兩個(gè)16位的字31DAH、5E7FH,它們在8086系統(tǒng)存儲器中的地址為00130H和00135H,試畫出它

10、們的存儲器示意圖。地址內(nèi)容00130H0DAH00131H31H00132H00133H00134H00135H7F00136H5E第3章8086CPU指令系統(tǒng)、判斷題1 .MOVAX,BP的源操作數(shù)物理地址為16X(DS)+(BP)。(X)2 .OUTDX,AL指令的輸出是16位操作數(shù)。(X)3 .不能用立即數(shù)給段寄存器賦值。(/4 .所有傳送指令都不影響PSW寄存器的標(biāo)志位。(X)5 .堆棧指令的操作數(shù)均為字。(力6 .段內(nèi)轉(zhuǎn)移指令執(zhí)行結(jié)果要改變IP,CS的值。(X)二、單項(xiàng)選擇題1 .寄存器間接尋址方式中,操作數(shù)在(C)中。A.通用寄存器B.I/O端口C.存儲單元D.段寄存器2 (A)尋

11、址方式的跨段前綴不可省略。A.DS:BPB.DS:SIC.DS:DID.SS:BP3 .彳貿(mào)設(shè)(SS)=2000H,(SP)=0012H,(AX)=1234H,執(zhí)行PUSHAX后,(SP)=(C)。A.0014HB.0011HC.0010HD.000FH4用BP作基址變址尋址時(shí),操作數(shù)所在的段是當(dāng)前(C)。A.數(shù)據(jù)段B.代碼段C.堆棧段D.附加段8.已知(SI)=0004H,(DS)=8000H,(80004H)=02H,(80005H)=C3H0指令LEAAX,SI執(zhí)行后(AX)=(C)。A.0002HB.0005HC.0004HD.C302H三、多項(xiàng)選擇題1 下列指令中源操作數(shù)使用寄存器尋

12、址方式的有(BF)。A.MOVBX,BUFSIB.ADDSI+50,BXC.SUBAX,2D.CMPAX,DISPDIE.MULVARBXF.PUSHCX2.將累加器AX的內(nèi)容清零的正確指令是(BCD)。A.CMPAX,AXB.SUBAX,AXC.ANDAX,0D.XORAX,AX3.正確將字變量WORDVARR偏移地址送寄存器AX的指令是(CD)。A.MOVAX,WORDVARRB.LESAX,WORDVARRC.LEAAX,WORDVARRD.MOVAX,OFFSETWORDVARR4 .調(diào)用CALL指令可有(ABDE)。A.段內(nèi)直接B.段內(nèi)間接C.短距離(SHORT)D.段間直接E.段問

13、問接5 .8086指令的操作數(shù)可能有(ABC)。A.0B.1C.2D.3四、填空題1 .與指令MOVBX,OFFSETBUF功能相同的指令是LEABX、BUF02 .假設(shè)(BX)=0449H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=7230H則執(zhí)行XCHGBX,BP+SI指令后,(BX)=7230H。3 .設(shè)有100個(gè)字節(jié)數(shù)據(jù)(補(bǔ)碼),存放在數(shù)據(jù)段中EA=2000H的存儲單元中。以下程序應(yīng)該從該數(shù)據(jù)區(qū)中找出最小的一個(gè)數(shù)據(jù),并存入EA=2100H單元中,請將下面程序補(bǔ)充完整。MIN:MOVBX,2000HMOVAL,BXMOVCX,99LOOP1:IN

14、CBXCMPAL,BXJLELOOP2MOVAL,BXLOOP2:DECCXJNZLOOP1MOV2100H,AL7.MOVAX,ES:BXSI中,源操作數(shù)的物理地址計(jì)算式是:(ES)X16+(BX)+(SI)。五、綜合題1 .請指出以下各指令的源、目的操作數(shù)所使用的尋址方式。(1) MOVSI,2100H(2) SBBDISPBX,7(3) ANDDI,AX(4) ORAX,609EH(5) MOVBX+DI+30H,CX(6) PUSHES:BP答:(1)源操作數(shù):立即數(shù)尋址;目的操作數(shù):寄存器尋址(2)源操作數(shù):立即數(shù)尋址;目的操作數(shù):(帶位移量的)基址尋址(3)源操作數(shù):寄存器尋址;目

15、的操作數(shù):變址尋址(4)源操作數(shù):直接尋址;目的操作數(shù):寄存器尋址(5)源操作數(shù):寄存器尋址;目的操作數(shù):(帶位移量的)基址變址尋址(6)源操作數(shù):帶段超越的基址尋址;目的操作數(shù):隱含尋址2 .請指出下列各條指令的錯(cuò)誤,并改正。1) )ADDAX,BX+BP+62) )PUSHDL3) )INAX,3FH4) OUT3FFH,AL5) POPAX6) SHLBX,57) INT3008) XCHGDX,0FFFH9) MOVAH,BX10) MOVAX,OFFSETSI11) MOVCS,AX12) MOVDS,ES( 1)不能同時(shí)使用兩個(gè)基址寄存器BX、BP進(jìn)行間接尋址,可改為:ADDAX,

16、BXDI6( 2)堆棧操作應(yīng)以字為單位進(jìn)行,而DL是一個(gè)字節(jié)。可改為:PUSHDX( 3)在輸入/輸出指令中,8位端口地址應(yīng)直接寫在操作數(shù)處??筛臑椋篒NAX,3FH( 4)端口地址3FFH已超出8位二進(jìn)制表示范圍,16位端口地址應(yīng)存于DX。可改為:MOVDX,3FFHOUTDX,AL(5)AX不能用于間接尋址,間接尋址只能用BX、BP、SI、DI四個(gè)寄存器之一。可改為:POPBX(6)當(dāng)邏輯移位的次數(shù)大于1時(shí),應(yīng)該用CL指示次數(shù)??筛臑椋篗OVCL,5SHLBX,CL(7)操作數(shù)300>255,已超出有效的中斷類型碼范圍。(8) XCHG指令不允許立即數(shù)做它的操作數(shù)??筛臑椋篗OVCX

17、,0FFFHXCHGDX,CX(9)源、目的字長不一致(10) OFFSET只用于簡單變量,應(yīng)去掉(11) CS不能作為目的寄存器(12) 段寄存器之間不能直接傳送數(shù)據(jù)3 .已知(DS)=2000H,有關(guān)的內(nèi)存單元值為:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符號COUNT的偏移地址為1200H。執(zhí)行下列指令后,寄存器AX、BX、SI的值分別是多少?MOVBX,OFFSETCO

18、UNTMOVSI,BXMOVAX,COUNTSIBX答:執(zhí)行2吉果為(BX)=1200H,(SI)=1000H,(AX)=3040H。4 .設(shè)若內(nèi)存單元DATA在數(shù)據(jù)段中偏移量為24C0H處,24C0H24C3H單元中依次存放著55H、66H、77H、88H。下列幾條指令執(zhí)行后,寄存器AX、BX、CL、SI的值分別是多少?MOVAX,DATALEASI,DATAMOVCL,SI答:執(zhí)行結(jié)果為(AX)=6655H,(BX)=6655H,(CL)=55H,(SI)=24C0H第4章匯編語言程序設(shè)計(jì)、填空題1 .段定義偽指令語句用SEGMENT語句表示開始,以ENDS語句表示結(jié)束。2 .ARRAYD

19、W10DUP(5DUP(4DUP(20H,40H,60H)語句執(zhí)行后共占1200字節(jié)存儲單元。3 .匯編語句中,一個(gè)過程有NEAR和FAR兩種屬性。NEAR屬性表示主程序和子程序在同一個(gè)代碼段中,F(xiàn)AR屬性表示主程序和子程序在同一個(gè)代碼段中。4 .DOS系統(tǒng)功能號應(yīng)放在AH寄存器中。5 .子程序又稱過程.它可以由PROC語句定義,由ENDP語句結(jié)束,屬性可以是NEAR或FAR。二、選擇題1 .EXE文件產(chǎn)生在(D)之后。A.匯編B.編輯C.用軟件轉(zhuǎn)換D.連接2 .變量定義的偽指令助記符有(ABCEF)。A.DBB.DWC.DDD.DFE.DQF.DT3 .若主程序段中數(shù)據(jù)段名為DATA,對數(shù)據(jù)

20、段的初始化操作應(yīng)為(B)。A.MOVAX,DATAB.MOVAX,DATAMOVES,AXMOVDS,AXC.PUSHDSD.MOVDS,DATA4.8086宏匯編源程序中,若BUFF是字變量名,則執(zhí)行指令MOVBX,BUFF后,BX中的值為BUFF單元的(A)。A.字?jǐn)?shù)據(jù)值B.變量類型值C.段基址D.段內(nèi)偏移量三、綜合題1 .下列標(biāo)號為什么是非法的?(1) GET.DATA1_NUM(3)TEST-DATARET(5)NEWITEM答案:(1)因?yàn)橹辉试S是標(biāo)號的第一個(gè)字符(2)第一個(gè)字符不能為數(shù)字(3)不允許出現(xiàn)-“(4)不能是保留字,如助記符(5)不能有空格2.下面兩個(gè)數(shù)據(jù)段中偏移地址為1

21、0H和11H的兩個(gè)存儲單元中的數(shù)據(jù)一樣嗎?為什么?DTSEG SEGMENTORG 10HDATA1 DB 72HDB 04HDTSEG ENDSDTSEG SEGMENTORG 10HDATA1 DW 7204HDTSEG ENDS節(jié)。答案:不一樣。分別是 72H, 04H和04H, 72H。存儲字時(shí)低8位存在低字節(jié),高8位存在高字3 .請寫出上述兩條指令執(zhí)行后,BX寄存器中的內(nèi)容。DATASEGMENTTABLE_ADDR DW 1234HDATAENDSMOVBX, TABLE_ADDRLEABX, TABLE_ADDR答案: MOV BX,TABLE_ADDR ;執(zhí)行后(BX)=123

22、4HLEA BX,TABLE_ADDR;執(zhí)行后(BX)=OFFSET TABLE_ADDR4 .試編寫一個(gè)匯編語言程序段,要求對鍵盤輸入的小寫字母用大寫字母顯示出來答案: abc:mov ah, 1int21hcmpal,ajbstopcmpal,zjastopsubal,20hmovdl,almovah,2int21hjmpabcstop:ret5編寫程序,比較兩個(gè)字符串STRING1和STRING2所含字符是否完全相同,若相同則顯MATC”H,若不同則顯示“NOMATCH”。答案:datareasegmentstring1dbasfioastring2dbxcviyoafmess1dbMT

23、ACH,$mess2dbNOMATCH,$datareaendsprognamsegmentmainprocfarassumecs:prognam,ds:datareastart:pushdssubax,axpushax;返回DOSmovax,datareamovds,axmoves,ax;賦初值begin:movcx,string2-string1movbx,mess1-string2cmpbx,cx;比較兩字符串的長度jnzdispnoleadx,addr;若長度相同leasi,string1leadi,string2;地址指針賦初值repecmpsb;比較jnedispnomovah,9

24、;相同,顯示MATCHleadx,mess1int21hretdispno:movah,9;不同,顯示NOMATCHleadx,mess2int21hretmainendpprognamendsendstart13H、 0D8H 、 92H、6從內(nèi)存單元BUF開始的緩沖區(qū)中有7個(gè)8位無符號數(shù),依次為2AH、66H、0E0H、3FH。編程找出它們的中間值并放入RES單元,且將結(jié)果以“(RES)=?”的格式顯示在屏幕上。答:一種可能的程序如下實(shí)現(xiàn):DATASEGMENTBUFDB13H0D8H,92H,2AH,66H,0E0H,3FHRESDB?;中間數(shù)的存放單元STRDB(RES)=STR1DB

25、?,?,$;結(jié)果字符串DATAENDSSSEGSEGMENTPARASTACKSSEGDB100DUP(?)SSEGENDSCODESEGMENTASSUMECSCODE,SS:SSEG,DS:DATA,ES:DATAMAINPROCFAR;主程序PUSHDSXORAX,AXPUSHAXMOVAX,DATAMOVDS,AXMOVES,AX;有STOS指令,需用ESMOVCX,6;外循環(huán)次數(shù),比6次AGNMOVSI,OFFSETBUFMOVDI,SIINCDI;SI、DI指向相鄰2數(shù)MOVDX,6;內(nèi)循環(huán)次數(shù),比6次AGN1:MOVAL,SICMPAL,DI;兩個(gè)無符號數(shù)相比較JBUNCH;小于

26、則轉(zhuǎn),不互換EXCH:XCHGAL,DI;前1單元較大,則互換MOVSI,AL;大數(shù)放在后面UNCH:INCSI;修改指針,指向下一個(gè)數(shù)INCDIDECDXJNZAGN1;未處理完,繼續(xù)內(nèi)循環(huán)LOOPAGN;外循環(huán)DONE:MOVAL,SI3;排序完成,取中間數(shù)MOVRES,ALANDAL,0F0H;分離高半字節(jié)MOVCL,4SHRAL,CLCALLBATR;調(diào)子程序,將AL值轉(zhuǎn)換為ASCII碼LEADI,STR1;DI指向結(jié)果單元CLDSTOSB;存放轉(zhuǎn)換結(jié)果MOVAL,RESANDAL,0FH;分離并轉(zhuǎn)換低半字節(jié)CALLBATRSTOSBLEADX,STR;顯示整個(gè)字符串MOVAH,09H

27、INT21HRETMAINENDP;主程序MAIN結(jié)束;子程序BATR,實(shí)現(xiàn)16進(jìn)制數(shù)到ASCII碼的轉(zhuǎn)換BATRPROCNEARCMPAL,10;入口參數(shù)為ALJBNUM;是數(shù)字,則轉(zhuǎn)NUMADDAL,A100;字母NUM:ADDAL,0RETBATRENDP;子程序結(jié)束CODEENDSENDMAIN簡析:本例的基本思路是:先把7個(gè)無符號數(shù)按大小排序,排序完成之后取位于中間的一個(gè)數(shù)即為中間值。然后將該16進(jìn)制數(shù)轉(zhuǎn)換為兩個(gè)對應(yīng)的ASCII碼,再與要求的格式字符一起輸出送顯即可。數(shù)據(jù)排序可以是從大到小、或從小到大排列,本參考程序完成從小到大排序,由一個(gè)雙重循環(huán)結(jié)構(gòu)實(shí)現(xiàn)。內(nèi)循環(huán)完成一個(gè)數(shù)與其它數(shù)之

28、間的一一比較,并使每次比較所得的小數(shù)置于低地址單元。外循環(huán)實(shí)現(xiàn)所有數(shù)之間的兩兩相較。共7個(gè)數(shù)據(jù),故內(nèi)、外循環(huán)中的比較次數(shù)均為6次。編程時(shí)需注意:無符號數(shù)比較大小應(yīng)使用JA、JB、JAE、JBE指令,本例完成從小到大的排列,故用JB控制轉(zhuǎn)移到UNCH;若要從大到小排列,則用JA代替JB即可。第5章存儲器系統(tǒng)、選擇題1 .下列(B)不是半導(dǎo)體存儲器芯片的性能指標(biāo)。A.存儲容量B.存儲結(jié)構(gòu)C.集成度D.最大存儲時(shí)間2 .高速緩存由(B)構(gòu)成。A.SRAMB.DRAMC.EPROMD.硬磁盤3 .由2KXlbit的芯片組成容量為4KX8bit的存儲器需要(D)個(gè)存儲芯片。A.2B.8C.32D.164

29、 .安排2764芯片內(nèi)第一個(gè)單元的地址是1000H,則該芯片的最末單元的地址是(D)A.1FFFHB.17FFHC.27FFHD.2FFFH5 .一片容量為8KB的存儲芯片,若用其組成1MB內(nèi)存,需(C)片。A.120B.124C.128D.1326 .外存儲器包括(ABEF)。A.軟磁盤B.磁帶C.SRAMD.BIOSE.硬磁盤F.光盤7 .在多級存儲體系結(jié)構(gòu)中,Cache-主存結(jié)構(gòu)主要用于解決(D)的問題。A.主存容量不足B.主存與輔存速度不匹配C.輔存與CPU速度不匹配D.主存與CPU速度不匹配8 .動(dòng)態(tài)RAM的特點(diǎn)之一是(BD)。A.能永久保存存入的信息B.需要刷新電路C.不需要刷新電

30、路D.存取速度高于靜態(tài)RAM二、填空題1 .在分層次的存儲系統(tǒng)中,存取速度最快、靠CPU最近且打交道最多的是Cache存儲器,它是由DRAM類型的芯片構(gòu)成,而主存儲器則是由SRAM類型的芯片構(gòu)成。2 .將存儲器與系統(tǒng)相連的譯碼片選方式有線選法、部分地址譯碼法和全地址譯碼法。3 .若存儲空間的首地址為1000H,存儲容量為1KX8、2Kx8、4KX8H的存儲器所對應(yīng)的末地址分另I為13FFH、17FFH、1FFFH。4 .微機(jī)系統(tǒng)中存儲器通常被視為Cache、主存、輔存三級結(jié)構(gòu)。三、綜合題1 .某微機(jī)系統(tǒng)中內(nèi)存的首地址為3000H,末地址為63FFH,求其內(nèi)存容量。答:存儲區(qū)總的單元數(shù)為:63F

31、FH3000H+1=3400H,故總?cè)萘?3KB。計(jì)算方法:若直接用十六進(jìn)制表示,則總?cè)萘?(3*163+4*162)/1024;若將地址表示成二進(jìn)制,則總?cè)萘?213B+212B+210B;2 .下圖為SRAM6116芯片與8088系統(tǒng)總線的連接圖2.(1)寫出6116芯片的存儲容量;答:3.(2)分析每片6116所占的內(nèi)存地址范圍(1)6116芯片的存儲容量是2k*8bit(2)第一片6116的內(nèi)存地址范圍是F1000HF17FFH第二片6116的內(nèi)存地址范圍是F1800HF1FFFH3.利用6264芯片,在8088系統(tǒng)總線上實(shí)現(xiàn)20000H23FFFH的內(nèi)存區(qū)域,試畫出連接電路圖。答:A

32、0-A10'inrg口-毋久加第16、0面*訴玳JA19A1SAFA16墨HF二 一 AH s S 5 AIAIAIAI比<lDh9WE_6RD0EAliAn6%,Ac-4cs;C$i砒WE=6RDOE4皿;A:i6Ao1Ao4TCS2禹4.如圖所示,舊M-PC/XT計(jì)算機(jī)擴(kuò)展槽上與存儲器連接的總線信號為20根地址線A19A0,8根數(shù)據(jù)線D7D0以及存儲器讀寫信號MEMR和MEMW。使用這些信號擴(kuò)展1片27256(32KX8EPROM)和1片62256(32Kx8RAM)。要求EPROM的起始地址為C8000H,RAM緊隨其后,使用74LS138(38譯碼器),采用全地址譯碼方式

33、。74LS138AAAO-A 9 8 7 6 5 AAAAA=YtG1T1G2AY2G2BY3-Y4CY5BY6AY74321011111987654321OAAAAAAAAAAAAAAA7654321ODDDDDDDDA14CEA13A12A11A10A9IC0A8A7A6D7D6D5D4A562256D3A4D2A3D1A2D0A1A0OE"WEA14-CEA13A12A11A10A8ic1A7A6_A527256A4A3A2A1A0OED7D6D5D4D3D2D1D0題五圖、存儲器擴(kuò)展圖(1)試在圖中畫出計(jì)算機(jī)的存儲器連接圖(門電路自選)74LS1389 8 7 6 5 AAA

34、AAIG1E 聲 CBAIn一二二二二,A14 CEA13A12A11A10A9 IC0 D6A7D5A6D4A5 62256D3A4D2A3D1A2D0A1iLA 一 T-.l:lTJA14 CEA13A12A11A10A8 IC1A7A6 _A5 27256A4A3A2A1 _A0OEBl765 4 32 1ODDD D DD DDD7D6D5D4D3D2D1D0MEMR_MEMW.哪圜題圈器擴(kuò)展圖(2)寫出各片存儲器的地址范圍。答:地址范圍27512:C8000CFFFFH,62512:D0000HD7FFFH5.設(shè)某系統(tǒng)中的數(shù)據(jù)總線寬度為8bit,地址總線寬度為16bito若采用4KX

35、4的RAM芯片組成16KB的存儲系統(tǒng)。問:(1)共需多少片4KX4的RAM芯片?這些芯片應(yīng)分成多少組?每組多少片?答:共需8片RAM芯片,分成4組,每組2片。(2)該存儲系統(tǒng)至少需要多少根地址總線?其中多少根低位地址線用于片內(nèi)自選(譯碼)?答:至少需要14根地址總線,其中12根低位地址線用于片內(nèi)自選。(3)設(shè)該存儲系統(tǒng)從0000H開始占用一段連續(xù)地址空間,試給出每組芯片占用的地址范圍答:00000FFFH10001FFFH20002FFFH30003FFFH第10章中斷技術(shù)一、判斷題1 .內(nèi)部中斷的優(yōu)先權(quán)總是高于外部中斷。(X)2 .兩片8259A級連后可管理16級中斷。(沖3 .8259A所

36、管理的中斷源中,優(yōu)先級低的中斷源不可能中斷優(yōu)先級高的中斷服務(wù)子程序。(為4 .若8259A的中斷屏蔽字為00H,則8259A所管理的8級中斷全被屏蔽。(X)5 只要8259A所管理的中斷源沒有被屏蔽,則任何中斷源的中斷請求都能得到CPU的響應(yīng)和服務(wù)。(M6 .在8259A特殊完全嵌套方式中,同級的中斷可實(shí)現(xiàn)嵌套。(U二、單項(xiàng)選擇題1 8086CPU工作在總線請求方式時(shí),會讓出(D)。A.地址總線B.數(shù)據(jù)總線C.地址和數(shù)據(jù)總線D.地址、數(shù)據(jù)和控制總線2 CPU響應(yīng)INTR引腳上來的中斷請求的條件之一是(B)。A.IF=0B.IF=1C.TF=0D.TF=13 斷點(diǎn)中斷的中斷類型碼是(C)。A.1

37、B.2C.3D.44 執(zhí)行指令I(lǐng)RET后彈出堆棧的寄存器先后順序?yàn)椋˙)。A.CS、IP、FlagsB.IP、CS、FlagsC.Flags、CS、IPD.Flags、IP、CS5 若8259A工作在優(yōu)先級自動(dòng)循環(huán)方式,則IRQ4的中斷請求被響應(yīng)并且服務(wù)完畢后,優(yōu)先權(quán)最高的中斷源是(B)。A.IRQ3B.IRQ5C.IRQ0D.IRQ46 8086機(jī)中若對從片8259A寫入的ICW2是70H,則該8259A芯片的IRQ6的中斷類型碼是(B)。A.75HB.76HC.70HD.1D8H7 PC/XT機(jī)中若對從片8259A寫入的ICW2是70H,則該8259A芯片的IRQ5的中斷矢量存儲的地址是(

38、D)。A.75HB.280HC.300HD.1D4H8當(dāng)向8259A寫入的操作命令字OCW2為01100100時(shí),將結(jié)束(E)的中斷服務(wù)。A.IRQ0B.IRQ1C.IRQ2D.IRQ3E.IRQ4F.IRQ5G.IRQ6H.IRQ7三、多項(xiàng)選擇題1 在PC機(jī)工作過程中,8259A所管理的中斷源優(yōu)先級將發(fā)生變化的工作方式有(CD)。A.全嵌套工作方式B.特殊全嵌套方式C.優(yōu)先級自動(dòng)循環(huán)方式D.優(yōu)先級特殊循環(huán)方式2.寫入8259A的ICW1為13H,則該8259A芯片的工作方式是(ADE)。A.上升沿觸發(fā)中斷請求B.僅高電平請求中斷C.多片主從方式D.單片方式E.初始化寫入ICW4F.初始化不寫

39、入ICW43,寫入8259A的ICW4為09H,則該8259A芯片的工作方式是(ABD)。A.全嵌套B.采用8086CPUC.多片主從方式D.緩沖方式E.自動(dòng)結(jié)束中斷F.優(yōu)先級自動(dòng)循環(huán)4.寫入PC/XT機(jī)8259A芯片的操作命令字OCW1是36H,則被屏蔽的中斷源是(BCEF)A.IR0B.IR1C.IR2D.IR3E.IR4F.IR5G.IR6H.IR75.8086CPU響應(yīng)硬中斷NMI和INTR時(shí),相同的條件是(BD)。A.允許中斷B.當(dāng)前指令執(zhí)行結(jié)束C.CPU工作在最大模式下D.不處于DMA操作期間四、填空題1. 中斷矢量就是中斷服務(wù)子程序的入口地址,在內(nèi)存中占有4個(gè)存儲單元、其中低地址

40、存儲單元存放的是IP內(nèi)容,高地址存儲單元存放的是CS內(nèi)容。2. 中斷返回指令是IRET,該指令將堆棧中保存的斷點(diǎn)彈出后依次裝入IP寄存器和CS寄存器中,將堆棧中保存的標(biāo)志裝入Flags中。3. CPU響應(yīng)8259A中斷,在引腳INTA上輸出2個(gè)負(fù)脈沖,在第2個(gè)負(fù)脈沖期間讀入中斷類型碼。4. 8086CPU共可管理256個(gè)中斷,中斷矢量表放在從00000H地址單元到003FFH地址單元,總共有1K個(gè)字節(jié)。5. CPU響應(yīng)中斷后將Flags寄存器入棧保存,然后自動(dòng)將上標(biāo)志和TF標(biāo)志復(fù)位。若要實(shí)現(xiàn)中斷嵌套,必須在中斷服務(wù)子程序中執(zhí)行一條開中斷指令。五、綜合題1 .試說明一般中斷系統(tǒng)的組成和功能。答:

41、處理器內(nèi)部應(yīng)有中斷請求信號的檢測電路,輸出中斷響應(yīng)信號,保存斷點(diǎn)的邏輯,轉(zhuǎn)向中斷處理程序的邏輯,中斷返回邏輯。系統(tǒng)中要有一中斷控制器,管理多個(gè)中斷源,提供處理機(jī)所需的中斷處理信息。系統(tǒng)中請求中斷處理的I/O接口電路要有提供中斷請求信號及接收中斷響應(yīng)信號的邏輯。2 .簡述中斷的響應(yīng)過程。答:8086在中斷響應(yīng)時(shí),自動(dòng)將標(biāo)志寄存器FR和斷點(diǎn)(CS和IP)的值入棧保存,但不將別的其它寄存器的值入棧保存,故如果中斷服務(wù)程序中用到其它寄存器時(shí),應(yīng)單獨(dú)使用指令將其它寄存器的值入棧保存,等中斷返回前再將其恢復(fù)。這一步驟稱為保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場。保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場應(yīng)后進(jìn)先出。8086只對可屏蔽中斷的響應(yīng)輸出2個(gè)

42、總線周期的INTA,并在第2個(gè)INTA期間到DB的低8位讀入中斷類型碼,而對其它類型的中斷,由于中斷類型碼是固定的,不用到DB讀取,故沒有2個(gè)INTA總線周期。中斷響應(yīng)與調(diào)子程序過程完全不同。3簡述8086系統(tǒng)的中斷分類及優(yōu)先級。答:內(nèi)部(除法除以0、單步、斷點(diǎn)、溢出、指令中斷)和外部(非屏蔽、可屏蔽)兩大類。每個(gè)中斷源有一個(gè)自已特定的類型碼,8086靠類型碼來識別不同中斷源,轉(zhuǎn)去執(zhí)行不同中斷服務(wù)程序??梢允箻?biāo)志寄存器的IF位和TF位為0來關(guān)閉可屏蔽中斷和單步中斷,但除法除以0中斷、溢出中斷、斷點(diǎn)中斷、指令中斷及非屏蔽中斷是無法關(guān)閉的。可屏蔽中斷有專用的指令STI(開可屏蔽中斷)和CLI(關(guān)可

43、屏蔽中斷),但單步中斷的開或關(guān)沒有專用指令。因8086的中斷類型碼為8位的,中斷類型碼的個(gè)數(shù)為0FFH,最多可有256個(gè)數(shù),故8086的內(nèi)部中斷和外部中斷加起來最多可有256個(gè)。除了可屏蔽中斷的中斷類型碼是由8259A提供的外,其它每種中斷的中斷類型碼都是固定的。8086各中斷源的優(yōu)先級從高到低依次是:除法除以0溢出中斷、斷點(diǎn)中斷、指令中斷非屏蔽中斷可屏蔽中斷單步中斷注意,優(yōu)先級的高低與中斷類型碼的大小沒有關(guān)系。因INTN指令中斷的優(yōu)先級高于可屏蔽中斷的優(yōu)先級,故8086在執(zhí)行指令中斷期間不能響應(yīng)可屏蔽中斷的中斷請求。4什么是中斷類型碼、中斷向量、中斷向量表?在基于8086/8088的微機(jī)系統(tǒng)

44、中,中斷類型碼和中斷向量之間有什么關(guān)系?答:處理機(jī)可處理的每種中斷的編號為中斷類型碼。中斷向量是指中斷處理程序的入口地址,由處理機(jī)自動(dòng)尋址。中斷向量表是存放所有類型中斷處理程序入口地址的一個(gè)默認(rèn)的內(nèi)存區(qū)域。在8086系統(tǒng)中,中斷類型碼乘4得到向量表的入口,從此處讀出4字節(jié)內(nèi)容即為中斷向量。5寫出分配給下列中斷類型號在中斷向量表中的物理地址。(1) INT12H答:00048H(2) INT8答:00020H6 .8259A中斷控制器的功能是什么?答:8259A中斷控制器可以接受8個(gè)中斷請求輸入并將它們寄存。對8個(gè)請求輸入進(jìn)行優(yōu)先級判斷,裁決出最高優(yōu)先級進(jìn)行處理,它可以支持多種優(yōu)先級處理方式。8

45、259A可以對中斷請求輸入進(jìn)行屏蔽,阻止對其進(jìn)行處理。8259A支持多種中斷結(jié)束方式。8259A與微處理器連接方便,可提供中斷請求信號及發(fā)送中斷類型碼。8259A可以進(jìn)行級連以便形成多于8級輸入的中斷控制系統(tǒng)。7 .畫出8259A的初始化流程圖答:8 .試按照如下要求對8259A設(shè)定初始化命令字:8086系統(tǒng)中只有一片8259A,中斷請求信號使用電平觸發(fā)方式,全嵌套中斷優(yōu)先級,數(shù)據(jù)總線無緩沖,采用中斷自動(dòng)結(jié)束方式。中斷類型碼為20H27H,8259A的端口地址為0B0H和0B1H。并寫出8259A的初始化程序段。答:ICW1=1BH(送B0H端口),ICW2=20H(送B1H端口),ICW4=

46、03H(送B1H端口)MOVAL,1BHOUT0B0H,ALMOVAL,20HOUT0B1H,ALMOVAL,03HOUT0B1H,AL9 .8259A的中斷屏蔽寄存器IMR與8086中斷允許標(biāo)志IF有什么區(qū)別?答:IF是8086微處理器內(nèi)部標(biāo)志寄存器的一位,若IF=0,8086就不響應(yīng)外部可屏蔽中斷請求INTR引線上的請求信號。8259A有8個(gè)中斷請求輸入線,IMR中的某位為1,就把對應(yīng)這位的中斷請求IR禁止掉,無法被8259A處理,也無法向8086處理器產(chǎn)生INTR請求。10 若8086系統(tǒng)采用單片8259A中斷控制器控制中斷,中斷類型碼給定為20H,中斷源的請求線與8259A的IR4相連

47、,試問:對應(yīng)該中斷源的中斷向量表入口地址是什么?若中斷服務(wù)程序入口地址為4FE0H:0024H,則對應(yīng)該中斷源的中斷向量表內(nèi)容是什么,如何定位?答:中斷向量表入口地址為:0段的0090H地址。對應(yīng)4FE24H中斷服務(wù)程序入口,在向量表中定位情況:(0090H)=24H、(0091H)=00H、(0092H)=E0H、(0093H)=4FH。第8章輸入/輸出接口技術(shù)、選擇題1 8086CPU在執(zhí)行INAL,DX指令時(shí),DX寄存器的內(nèi)容輸出到(A)上。A.地址總線B.數(shù)據(jù)總線C.存儲器D.寄存器2 在CPU與外設(shè)進(jìn)行數(shù)據(jù)傳送時(shí),下列(C)方式可提高系統(tǒng)的工作效率。A.無條件傳送B.查詢傳送C.中斷

48、傳送D.前三項(xiàng)均可3 外部設(shè)備的端口包括(ABC)。A.數(shù)據(jù)端口B.狀態(tài)端口C.控制端口D.寫保護(hù)口4 CPU在數(shù)據(jù)線上傳輸?shù)男畔⒖赡苁牵ˋBC)。A.數(shù)據(jù)B.狀態(tài)C.命令D.模擬量5 PC/XT機(jī)對I/O端口的尋址方式有(AF)。A.端口直接尋址B.寄存器尋址C.基址尋址D.變址尋址E.寄存器相對尋址F.DX間接尋址6 PC機(jī)在和I/O端口輸入輸出數(shù)據(jù)時(shí),I/O數(shù)據(jù)須經(jīng)(AE)傳送。A.ALB.BLC.CLD.DLE.AXF.BXG.CXH.DX7 I/O接口電路中,8255控制口可能使用的端口地址只能是(D)。A. 00H B. 01H C. 04H8 程序查詢I/O 的流程總是按(A.

49、寫數(shù)據(jù)端口,讀/ 寫控制端口C. 寫控制端口,讀/ 寫狀態(tài)端口9 由( D )引腳的連接方式可以確定D. 07HB )的次序完成一個(gè)字符的傳輸。B.讀狀態(tài)端口,讀/寫數(shù)據(jù)端口D. 隨 I/O 接口的具體要求而定。8255 的端口地址。A. RD、CSB. WR、A0C. A0、A1D. A0、A1、 CS10 .若8255A接口芯片的A口工作在方式2時(shí),B口可以工作在(D)。A.方式0B.位控方式C.方式2D.方式0或方式111 .在CPU與外設(shè)之間設(shè)計(jì)接口電路的目的主要有(ABCD)。A.解決驅(qū)動(dòng)能力問題B.控制數(shù)據(jù)傳輸速度C.完成數(shù)據(jù)形式轉(zhuǎn)換D.負(fù)責(zé)CPU與外設(shè)的聯(lián)絡(luò)二、填空題1 .對I/

50、O端口的編址一般有外設(shè)與內(nèi)存統(tǒng)一編址方式和外設(shè)與內(nèi)存獨(dú)立編址方式。8086采用的是獨(dú)立編址方式。2 .在PC系列微機(jī)中,I/O指令采用直接尋址方式的I/O端口有256個(gè)。采用DX間接尋址方式可尋址的I/O端口有64K個(gè)。3 .數(shù)據(jù)的輸入/輸出指的是CPU與外設(shè)進(jìn)行數(shù)據(jù)交換。4 .數(shù)據(jù)輸入/輸出的四種方式是無條件傳送方式、條件傳送方式、中斷方式和DMA傳送方式。5 .CPU在執(zhí)行OUTDX,AL指令時(shí),DX寄存器的內(nèi)容送到地址總線上、AL寄存器的內(nèi)容送到數(shù)據(jù)總線上。6 .當(dāng)CPU執(zhí)行INAL,DX指令時(shí),M/IO引腳為低電平、RD為低電平、WR為高電平。三、判斷對錯(cuò)并說明原因1 .一個(gè)外設(shè)總是只

51、能對應(yīng)一個(gè)端口地址。錯(cuò)誤原因:一個(gè)外設(shè)不一定只對應(yīng)一個(gè)端口地址,可能有數(shù)據(jù)端口、控制端口和狀態(tài)端口。2 .每個(gè)I/O接口中都應(yīng)具備數(shù)據(jù)端口、控制端口和狀態(tài)端口。錯(cuò)誤原因:無條件傳送方式下的接口就無需狀態(tài)端口。3 .通過對8255進(jìn)行初始化編程可使其三個(gè)端口都工作在雙向方式下。錯(cuò)誤原因:只有A口能工作在雙向方式下。四、綜合題1 .簡述接口編址的方法及其特點(diǎn)。答:給接口編地址,主要有兩種方法:獨(dú)立編址和統(tǒng)一編址。統(tǒng)一編址是指將端口和存儲單元一起進(jìn)行分配地址,即端口地址占用存儲空間的一部分,使得存儲空間減少了,但對端口的訪問正如對存儲單元的訪問一樣靈活,不需設(shè)置專門的訪問端口的指令(即I/O指令)。單獨(dú)編址是指單獨(dú)對端口進(jìn)行地址分配,端口地址不占用存儲空間,但對端口的訪問需專門的指令(即I/O指令)。2 .微機(jī)通過接口與外設(shè)交換數(shù)據(jù)的指令有哪些?并寫出所有的格式。答:有輸入和輸出兩條指令,其格式各有四種:INAL,nINAX,nOUTn,ALOUTn,AXINAL,DXOUTDX,ALINAX,DXOUTDX,AX3 .設(shè)8253計(jì)數(shù)器的時(shí)鐘輸入頻率為1.91MHz,為產(chǎn)生25KHz的方波輸出信號,應(yīng)向計(jì)數(shù)器裝入的計(jì)數(shù)初值為多少?答:1.19MHz.25KHz=76.4應(yīng)向計(jì)數(shù)器裝入的初值是76。4 .設(shè)8253三個(gè)計(jì)數(shù)器的端口地址為201H、202H、203H,控制寄存器端口地

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論