李伯成《微型計(jì)算機(jī)原理及應(yīng)用》課后習(xí)題答案_第1頁
李伯成《微型計(jì)算機(jī)原理及應(yīng)用》課后習(xí)題答案_第2頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、李伯成微機(jī)原理習(xí)題本章作業(yè)參考書目: 薛鈞義主編微型計(jì)算機(jī)原理與應(yīng)用一一Intel80X86系列機(jī)械工業(yè)出版社2002年2月第一版 陸一倩編微型計(jì)算機(jī)原理及其應(yīng)用(十六位微型機(jī))哈爾濱工業(yè)大學(xué)出版社1994年8月第四版 王永山等編微型計(jì)算機(jī)原理與應(yīng)用西安電子科技大學(xué)出版社2000年9月1.1將下列二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù):X=10010110B=1*27+0*26+0*25+1*24+0*23+1*22+1*21+0*2=128D+0D+0D+16D+0D+0D+4D+2D=150DX=101101100B=1*28+0*27+1*26+1*25+0*24+1*23+1*22+0*21+0*20

2、=256D+0D+64D+32D+0D+16D+4D+0D=364DX=1101101B=1*26+1*25+0*24+1*23+1*22+0*21+1*2=64D+32D+0D+8D+4D+0D+1D=109D1.2 將下列二進(jìn)制小數(shù)轉(zhuǎn)換成十進(jìn)制數(shù):(1)X=0.00111B=0*2-1+0*2-2+1*2-3+1*2-4+1*2-5=0D+0D+0.125D+0.0625D+0.03125D=0.21875D(2)X=0.11011B=1*2-1+1*2-2+0*2-3+1*2-4+1*2-5=0.5D+0.25D+0D+0.0625D+0.03125D=0.84375D(3)X=0.10

3、1101B=1*2-1+0*2-2+1*2-3+1*2-4+0*2-5+1*2-6=0.5D+0D+0.125D+0.0625D+0D+0.015625D=0.703125D1.3 將下列十進(jìn)制整數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):(1)X=254D=11111110B(2)X=1039D=10000001111B(3)X=141D=10001101B1.4 將下列十進(jìn)制小數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):(1)X=0.75D=0.11B(2)X=0.102D=0.0001101B(3) X=0.6667D=0.101010101B1.5 將下列十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)(1) 100.25D=01100100.01H(2) 68

4、0.75D=001010101000.11B1.6 將下列二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)(1)X=1001101.1011B=77.6875D(2)X=111010.00101B=58.15625D1.7 將下列二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)(1)X=101011101B=101011B1=05135Q(2)X=1101111010010B=1101111010010B=15722Q(3) X=110B=6Q1.8 將下列八進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):(1)X=760Q=111110000B(2)X=32415Q=11010100001101B1.9 將下列二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù):X=10101011110110

5、1B=55EDHX=11001101011001B=11001101011001B=3359HX=1000110001B=1000110001B=231H1.10 將下列十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):X=ABCH=101010111100BX=3A6F.FFH=0011101001101111.11111111BX=F1C3.4B=1111000111000011.01001011B1.11 將下列二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼:(1)X=1011011.101B=1011011.101B=91.62d=510010001.011B0CD(2)X=1010110.001B=1010110.001=B1C2

6、D6.11.12 將下列十進(jìn)制數(shù)轉(zhuǎn)換成BCD碼:(1)X=1024D=0001000000100100BCD(2)X=632=011000110010BCD(3)X=103=000100000011BCD1.13寫出下列字符的ASCII碼:A41H65D01000001B939H47D*2AH42D=3DH45D!21H33D1.14若加上偶校驗(yàn)碼,下列字符的ASCII碼是什么?字符原碼加上偶校驗(yàn)碼之后B42H,01000010B42H,01000010B434H,00110100BB4H,10110100B737H,00110111BB7H,10110111B=3DH,00111101BBD

7、H,10111101B!21H,00100001B21H,00100001B?3FH00111111B3FH,00111111B1.15加上奇校驗(yàn),上面的結(jié)果如何?字符原碼加上奇校驗(yàn)碼之后B42H,01000010BC2H,11000010B434H,00110100B34H,00110100B737H,00110111B37H,00110111B=3DH,00111101B3DH,00111101B!21H,00100001BA1H,10100001B?3FH00111111BBFH,10111111B1.16計(jì)算下式:1)B/2+ABH-11011001B*0.010B1CD=(42H/2

8、+ABH-D9H)*0.21BCD=F3H*0.21BCD=(-DH)*0.21BCD=-2.73D3CH-(84D”(16Q)+8/8D=6-08D4D/14D+(56/8)=60D-13D=47D1.17 對下列十進(jìn)制數(shù),用八位二進(jìn)制數(shù)寫出其原碼、反碼和補(bǔ)碼:(正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼除符號位之外其余各位按位取反。正數(shù)的補(bǔ)碼與原碼相同;負(fù)數(shù)的補(bǔ)碼除符號位以外,其余各位按位取反之后再加一。)數(shù)據(jù)原碼反碼補(bǔ)碼+99011000110110001101100011-99111000111001110010011101+127011111110111111101111111-1271111

9、11111000000010000001+0000000000000000000000000-01000000011111111000000001.18 8位二進(jìn)制數(shù)原碼可表示數(shù)的范圍是+127-128;8位二進(jìn)制數(shù)補(bǔ)碼可表示的數(shù)的范圍是+127-127;8位二進(jìn)制數(shù)反碼可表示的數(shù)的范圍是:+127-128;1.19 16位二進(jìn)制數(shù)的原碼、補(bǔ)碼、反碼可表示的數(shù)的范圍是多少?+32767-32768、+32767-32768、+32767-32768;1.20 至少寫出3種用二進(jìn)制編碼狀態(tài)表示十進(jìn)制數(shù)字的編碼方式。8421碼、5421碼2421碼余3碼十進(jìn)制數(shù)000000000000001100

10、00100010001010010010001010000101200110011100101103010001001010011140101100010111000501101001110010016011110101101101071000101111101011810011100111111009李伯成微機(jī)原理習(xí)題第二章 薛鈞義主編微型計(jì)算機(jī)原理與應(yīng)用Intel80X86系列機(jī)械工業(yè)出版社2002年2月第一版 陸一倩編微型計(jì)算機(jī)原理及其應(yīng)用(十六位微型機(jī))哈爾濱工業(yè)大學(xué)出版社1994年8月第四版 王永山等編微型計(jì)算機(jī)原理與應(yīng)用西安電子科技大學(xué)出版社2OOO年9月洪志全等編現(xiàn)代計(jì)算機(jī)接口技

11、術(shù)電子工業(yè)出版社2002年4月仇玉章主編術(shù)32位微型計(jì)算機(jī)原理與接口技清華大學(xué)出版社2000年9月2.1 8086CPU的RESE引腳的功能是什么?答:RESET引腳稱為復(fù)位引腳,輸入、三態(tài)、高電平有效;RESET引腳將使CPU立即結(jié)束當(dāng)前操作,處理器要求RESET信號至少要保持4個(gè)時(shí)鐘周期的高電平,才能結(jié)束它正在進(jìn)行的操作。CPU復(fù)位以后,除了代碼段寄存器CS的值為FFFFH外,其余所有寄存器的值均為零,指令隊(duì)列為空。當(dāng)RESET回到低電平時(shí),CPU開始執(zhí)行“熱啟動”程序,由于此時(shí)CS的值為FFFFHIP的值為0000H所以CPU復(fù)位以后執(zhí)行的第一條指令的物理地址為FFFF0H該單元通常放置

12、一條段間直接轉(zhuǎn)移指令JMPSS:OOss:OO即為系統(tǒng)程序的實(shí)際起始地址。2.2 在8086CPU工作在最小模式時(shí),(1)當(dāng)CPU訪問存儲器時(shí),要利用哪些信號?當(dāng)CPU訪問存儲器時(shí),要利用ADOAD15WR*RD*IO/M*以及A16A19(2)當(dāng)CPI訪問外設(shè)接口時(shí),要利用哪些信號?當(dāng)CPU訪問外設(shè)接口時(shí),同樣要利用AD0-AD15、WR*RD*以及10/M*,但不使用高端地址線A16-A19;(3) 當(dāng)HOLD有效并得到響應(yīng)時(shí),CPU哪些引腳置高阻?當(dāng)HOLDt效并得到響應(yīng)時(shí),CPU除HOLDHOLDA引腳外其余所有的信號引腳均為高阻態(tài)。2.3 略2.4 說明8086CPUREADY言號的

13、功能。見P232.5 8086CPU的NMI和INTR引腳的不同有幾點(diǎn)?兩點(diǎn):(1)INTR是可以由用戶用指令禁止的,(通過中斷允許標(biāo)志IF的開-STI和關(guān)CLI進(jìn)行);而NMI不能由用戶禁止;(2)INTR是可以區(qū)分優(yōu)先級別的,NMI是最高級的,沒有中斷優(yōu)先級的排隊(duì)。2.6 說明8086CPI內(nèi)部標(biāo)志寄存器各位的含義。8086CPU的標(biāo)志寄存器(PSW或FLAG共有9個(gè)標(biāo)志位,分別是:CF(CarryFlag)-進(jìn)位或借位標(biāo)志;PF(ParityFlag)-奇偶標(biāo)志;AF(auxiliaryFlag)半進(jìn)位標(biāo)志;ZF(ZeroFlag)結(jié)果為零標(biāo)志;SF(SignFlag)符號標(biāo)志;OF(O

14、verflowFlag)溢出標(biāo)志;IF(InterruptEnableFlag)中斷允許標(biāo)志;DF(DirectionFlag)方向標(biāo)志;TF(TrapFlag)陷阱標(biāo)志。2.7說明8086CPI內(nèi)部14個(gè)寄存器的作用。8086內(nèi)部的寄存器可以分為3類:第一類:通用寄存器:AXBXCXDXSI、DI、SPBP,共8個(gè)可以存儲數(shù)據(jù)或者地址的低16位;AXBXCX和DX可以分成8個(gè)8位的寄存器使用;SIDI又稱變址寄存器,用于存儲變址地址;SP和BP存放指針變量值。第二類:段寄存器:CSDSSSES共4個(gè)寄存器,只能存放對應(yīng)段的段地址;第三類為IP和FLAG,IP在通常情況下不允許用戶訪問,而FL

15、AG是用以向用戶提供了解ALU工作狀態(tài)或者控制CPUX作方式的標(biāo)志寄存器。2.8試畫出8086CPUE作在最小模式時(shí)的總線形成示意圖。(注:BHE引腳為34腳-即SSQ參見P25狀態(tài)編碼表)i-IBIn四點(diǎn)說明:AMN/M端接+5V,決定了8086工作在最小模式。B、有一片8234A作為時(shí)鐘發(fā)生器。C、有三片8282或74LS373,用來作為地址鎖存器。D當(dāng)系統(tǒng)中所連接的存儲器和外設(shè)比較多時(shí),需要增加系統(tǒng)數(shù)據(jù)總線的驅(qū)動能力,這時(shí),要用兩片8286/8287(74LS244或74LS245)作為總線收發(fā)器。2.9 8086/8088為什么采用地址/數(shù)據(jù)引線復(fù)用技術(shù)?答:考慮到芯片成本,8086/

16、8088采用40條引線的封裝結(jié)構(gòu)。40條引線引出8086/8088的所有信號是不夠用的,采用地址/數(shù)據(jù)線復(fù)用引線方法可以解決這一矛盾,從時(shí)序邏輯的角度,地址與數(shù)據(jù)信號不會同時(shí)出現(xiàn),二者可以分時(shí)復(fù)用同一組引線。2.10 怎樣確定8086的最大或最小工作模式?最大、最小模式產(chǎn)生控制信號的方法有何不同?答:引線MN/MX*的邏輯狀態(tài)決定8086的工作模式,MN/MX*引線接高電平,8086被設(shè)定為最小模式;MN/MX*引線接低電平,8086被設(shè)定為最大模式。最小模式下所有的控制信號由CPU相關(guān)引線直接提供;最大模式下控制信號由8288專用芯片譯碼后提供,8288的輸入由8086的S2-S0三條狀態(tài)信

17、號引線提供。李伯成微機(jī)原理習(xí)題第三章清華大學(xué)出版社1991西安電子科大出版社1998電子工業(yè)出版社1990本章作業(yè)參考書目:1周明德:微型計(jì)算機(jī)IBM-PC系統(tǒng)原理與應(yīng)用2王永山等:微型計(jì)算機(jī)原理與應(yīng)用3張懷蓮:IBMPC匯編語言程序設(shè)計(jì)注:本習(xí)題解中的程序僅為代碼片段,可在Emu8086version2.57環(huán)境下仿真運(yùn)行,如果在mmrrrLirrfLmirr-llll-nrrll*rirrfwErrrfellle-fEFFriLAefr_LL=rflErrMASM下進(jìn)行匯編,需添加段設(shè)置以及相應(yīng)的偽指令。3.13.2若1KB的數(shù)據(jù)存放在TABLE以下,試編寫程序?qū)⒃摂?shù)據(jù)拌到NEXT之下。M

18、OVAX,00H;立即尋址SUBAX,AX;寄存器尋址MOVAX,BX;寄存器間接尋址MOVAX,TABLE;直接尋址MOVAL,ARAY1SI;寄存器相對尋址MOVAX,BX+6;寄存器相對尋址程序片段如下:ORG100hMOVCX,03FFH;數(shù)據(jù)個(gè)數(shù)LEASI,TABLE;源區(qū)首地址LEADI,NEXT;目的區(qū)首地址AGAIN:MOVAL,SI;MOVDI,AL;搬移INCSIINCDI;移動地址指針DECCX;循環(huán)計(jì)數(shù)器遞減JNZAGAIN;循環(huán)未結(jié)束轉(zhuǎn)HLT;暫停TABLEDB1024dup(A);源數(shù)據(jù)區(qū)NEXTDB1024dup(0);目的數(shù)據(jù)區(qū)3.3編寫10個(gè)字(16位二進(jìn)制數(shù)

19、)之和的程序ORG100hLEASI,ADD1;LEADI,ADD2;LEABX,SUM;MOVCL,CONT;MOVCH,0;循環(huán)初始化CLC;進(jìn)位清零讀加數(shù)1移動源區(qū)地址指針移動目的區(qū)地址指針回存計(jì)算結(jié)果移動“和”存儲區(qū)地址指針循環(huán)控制暫停MADD1:MOVAX,SI;ADCAX,DIADDSI,2;ADDDI,2;MOVBX,AX;ADDBX,2;LOOPMADD1;HLT;ADD1DB0FEH,86H,7CH,44h,56H,1FH,24H,01H,02H,33H;加數(shù)1ADD2DB56H,49H,4EH,0FH,9CH,22H,45H,11H,45H,21H;加數(shù)2SUMDB10DU

20、P(0);和存儲單元CONTDB5;循環(huán)次數(shù)3.4某16位二進(jìn)制數(shù),放在DATA連續(xù)的兩個(gè)單元中,試編程求其平方根和余數(shù),將其分別存放在ANS和REMAIN中。ORG100hMOVBL,2;AGAIN:MOVCX,NUM;除數(shù)初值預(yù)計(jì)最大循環(huán)次數(shù)EXIT:MOVAL,BL;0、1的平方根除外MULBL;得到2的平方CMPAX,CX;大于原始數(shù)據(jù)么?JGEXIT;若原始數(shù)據(jù)小于4轉(zhuǎn)EXITMOVAX,CX;讀數(shù)DIVBL;試除INCBL;除數(shù)遞增JMPAGAIN;繼續(xù)除DECBL;去除除數(shù)自加MOVANS,BL;存商MOVAL,BL;恢復(fù)余數(shù)MULBL;SUBCX,AX;MOVREMAIN,CL

21、;HLTNUMDW7;ANSDB?;REMAINDB?;3.5在DATA1之下順序存放著以ASCII碼表示的千位數(shù),將其轉(zhuǎn)換成二進(jìn)制數(shù)。MOVCL,4;移位次數(shù)MOVCH,CL;循環(huán)次數(shù)MOVSI,OFFSETASCBINCLDXORAX,AXXORDX,DXASCB1:LODSBANDAL,7FHCMPAL,0;不大于0結(jié)束轉(zhuǎn)換JLERRCMPAL,9JGASCB2;大于9轉(zhuǎn)ASCB2SUBAL,30H;數(shù)字形式二進(jìn)制數(shù)減30HJMPASCB3ASCB2:CMPAL,A;大于9又小于A結(jié)束轉(zhuǎn)換JLERRCMPAL,FJGERR;大于F為不合理數(shù),結(jié)束轉(zhuǎn)換SUBAL,37H;字符形式ASCII

22、數(shù)減37HASCB3:ORDL,ALROLDX,CLDECCHJNZASCB1ROLDX,CLMOVBIN,DX;存儲轉(zhuǎn)換結(jié)果ERR:NOPHLTASCBINDB1,B,4,3BINDW?3.7編寫程序?qū)OLT中的一個(gè)8位數(shù)乘以20,乘積放在ANS中(用3種方式)。解:第一種方法:常規(guī)乘法運(yùn)算ORG100hMOVMOVMULMOVHLTAL,MOLTBL,20BLANS,AXMOLTDB2ANSDW?第二種方法,將MOLT連加20次ORG100hMOVCX,20MOVBX,MOLTXORAX,AXCLCADD1:ADCAX,BXLOOPADD1MOVANS,AXHLTMOLTDW5ANSDW

23、?第三種方法,將“20”連加OLT次ORG100hMOVCX,MOLTMOVBX,20XORAX,AXCLCADD1:ADCAX,BXLOOPADD1MOVANS,AXHLTMOLTDW5ANSDW?3.8元。在DATA之下存放100個(gè)無符號的8位數(shù),找出其最大者并將其存放在KVFF單ORG100hXORDL,DLLEADI,KVFF;NEXT0:LEASI,BUFFER;MOVCL,99;NEXT1:MOVAL,SI;INCSI;CMPDL,AL;JNCNEXT2;MOVDL,AL;NEXT2:DECCL;JNZNEXT1;MOVDI,DL;HLT比較次數(shù)為N-1次DL中始終存目前最大值最大

24、值存儲BUFFERDB;自行定義100個(gè)數(shù)據(jù)KVFFDB?3.9若將數(shù)據(jù)按大小順序排序,試編寫程序解:此處采用“冒泡法”予以處理:ORG100hLEADI,BUFFER;數(shù)據(jù)區(qū)MOVBL,99;外循環(huán)次數(shù)NEXT0:MOVSI,DI;MOVCL,BL;內(nèi)循環(huán)次數(shù)NEXT3:MOVAL,SI;讀數(shù)INCSI;移動指針CMPAL,SI;比較JNCNEXT5;大于轉(zhuǎn)NEXT5NEXT5:MOVDL,SI;MOVSI-1,DL;MOVSI,AL;不大于互換DECCL;內(nèi)循環(huán)次數(shù)減一JNZDECJNZNEXT3;BL;外循環(huán)次數(shù)減一NEXT0HLTBUFFERDB自行定義100個(gè)字節(jié)型數(shù)據(jù)3.10在BV

25、FF單元中有一個(gè)BCD數(shù)A,試根據(jù)下列關(guān)系編寫程序,計(jì)算結(jié)果存在DES中.A20,Y=3*A;A=60,Y=80.MOVAL,BVFFCMPAL,20JLEX1CMPAL,60JLEX2MOVAL,80JMPSTOPORG100hMOVEX1:MULBL,3BLEX2:SUBAL,20STOP:MOVDES,ALHLTJMPSTOPBVFFDB8DESDB?3.11址為DATAB開始的80個(gè)單元中,存放某班80個(gè)學(xué)生的某課程成績,要求:統(tǒng)計(jì)=90分、8089分、7079分、6069分、60分以下的人數(shù),結(jié)果存放在BTRX開始的5個(gè)單元中求平均成績,結(jié)果存放在LEVEL中。解:寄存器使用分配:9

26、0分以上在DH,80分以上在DL,70分以上在BH,60分以上在BL,60分以下在AH,總分、均分都在DI。ORG100hXORAH,AHXORDX,DX;統(tǒng)計(jì)結(jié)果清零XORBX,BX;統(tǒng)計(jì)結(jié)果清零LEASI,DATALEADI,LEVELMOVCL,CONT;總?cè)藬?shù)送循環(huán)計(jì)數(shù)器goon:MOVAL,SI;讀原始數(shù)據(jù)ADCDI,AL;累加總分ADCDI+1,0;計(jì)算進(jìn)位CXCMPAL,90JLPP8;不高于90分者轉(zhuǎn)PP8INCDH;90-100分的人數(shù)加一JMPSTORPP8:CMPAL,80JLPP7;不高于80分轉(zhuǎn)PP7INCDL;8089分的人數(shù)加一JMPSTORPP7:INCBH;7

27、0-79分的人數(shù)加一JMPSTORCMPAL,60JLPP5;不高于60分者轉(zhuǎn)PP5INCBL;60-69分的人數(shù)加一JMPSTORINCAH;低于60分的人數(shù)加一SI;讀下一個(gè)分?jǐn)?shù)LOOPGOON;CX=CX-1,CX不為零轉(zhuǎn)GOON,繼續(xù)統(tǒng)計(jì)LEASI,BUFFER;回存統(tǒng)計(jì)結(jié)果MOVSI,DHINCSIMOVSI,DLINCSIMOVSI,BHINCSIMOVSI,BLINCSIMOVSI,AHPP6:PP5:STOR:INCMOVCMPAL,70JLPP6;不高于70分者轉(zhuǎn)PP6AX,WORDPTRDI;計(jì)算平均成績CL,CONTMOVDIVCLMOVLEVEL,AL;回存平均成績HL

28、TCONTDB10DATADB30,65,99,80,75,89,100,45,60,70BUFFERDB?,?,?,?,?LEVELDB?,?3.12求兩個(gè)有符號數(shù)(DATA1,DATA2)差的絕對值,結(jié)果存入DATA3.ORG100hMOVAL,DATA1;讀入被減數(shù)SUBAL,DATA2;減去減數(shù)JCCHANGE;JMPSTORCHANGE:NEGALSTOR:MOVDATA3,ALHLTDATA1DB3DATA2DB5DATA3DB?3.13存從40000H到4BFFH的個(gè)單元均寫入55H,并再逐個(gè)讀出,驗(yàn)證是否一致若一致,置AL為7EH,否則置AL為81H.ORG100hMOVAX,

29、4000H;MOVDS,AX;MOVSI,0START:MOVCX,0BFFFHBEGIN:MOVSI,55HMOVAL,SIINCSICMPAL,55HJNZERRLOOPBEGINMOVAL,7EHJMPSTOPERR:MOVAL,81HSTOP:HLT3.143.15端口03FBH的BIT5為狀態(tài)標(biāo)志,當(dāng)該位為1時(shí),表示外設(shè)忙,不能接收數(shù)據(jù);當(dāng)為0時(shí),表示外設(shè)閑,可以接收數(shù)據(jù);當(dāng)CPU向端口03F8H寫入一個(gè)字節(jié)的數(shù)據(jù)時(shí),03FBH的BIT5置1,當(dāng)它變?yōu)?狀態(tài)時(shí),又可以寫入下一個(gè)數(shù)據(jù)。據(jù)此編寫將起始地址為SEDAT的50個(gè)數(shù)據(jù)輸出到03F8H端口的程序。WAIT:MOVDX,03FBH

30、INAL,DXTESTAL,00100000B;(20H)JZSENDJMPWAITSEND:MOVDX,3F8HMOVAL,SI;CMPAL,0AH;輸出字串結(jié)束標(biāo)志符JZSTOPOUTDX,ALJMPWAITSTOP:HLT3.16口02E0H的BIT2和BIT5同時(shí)為1,表示端口02E7H有一個(gè)字節(jié)型數(shù)據(jù)準(zhǔn)備好可以用以輸入,當(dāng)CPU從該端口讀入數(shù)據(jù)后,02E0端口的BIT2和BIT5就不再同時(shí)為1;只有當(dāng)02E7H端口的數(shù)據(jù)再次準(zhǔn)備好時(shí),它們才會再次同時(shí)為1,據(jù)此編寫從02E7H端口輸入32個(gè)數(shù)據(jù)然后存入A1000H單元開始的區(qū)域。MOVAX,0A000HMOVDS,AXMOVSI,10

31、00H;設(shè)置存儲區(qū)地址MOVCL,20H;輸入數(shù)據(jù)個(gè)數(shù)BEGIN:MOVDX,0E20HINAL,DXTESTAL,00100100B;測試狀態(tài)位BIT5、BIT2JZBEGIN;不同時(shí)為1繼續(xù)測試MOVDX,02E7HINAL,DX;輸入數(shù)據(jù)MOVSI,AL;存到指定區(qū)域INCSI;移動地址指針LOOPBEGIN;循環(huán)HLT3.17在內(nèi)存40000H開始的16K的單元中存放著一組數(shù)據(jù),將其順序搬移到起始地址為A0000H的區(qū)域。解:利用字符串操作指令MOVSB,16K即16*1024=3FFFH。MOVAX,4000HMOVDS,AXMOVAX,A000HMOVES,AXMOVSI,0MOV

32、DI,0MOVCX,3FFFHCLDREPMOVSBHLT3.18上題的基礎(chǔ)上,將兩個(gè)區(qū)域的數(shù)據(jù)逐個(gè)進(jìn)行比較,若有錯(cuò)將BL置0,全對將BL置FFH。MOVAX,4000HMOVDS,AXMOVAX,A000HMOVES,AXMOVSI,0MOVDI,0MOVCX,03FFHCLDAAB:CMPSBJNZSTOPLOOPAABMOVBL,0FFHJMPEX1STOP:MOVBL,0;EX1:NOPHLT3.19統(tǒng)計(jì)由40000H單元開始的16K個(gè)單元中所存字符A的個(gè)數(shù),統(tǒng)計(jì)結(jié)果存放在DX寄存器中。AAB:AAC:MOVAX,4000HMOVDS,AXMOVSI,0;MOVCX,3FFFH;數(shù)據(jù)個(gè)

33、數(shù)MOVDX,0;統(tǒng)計(jì)結(jié)果寄存器清零XORDX,DXCLDLODSBCMPALA;比較JZAAC;字符為A轉(zhuǎn)計(jì)數(shù)LOOPAAB;循環(huán)JMPSTOP;處理完畢轉(zhuǎn)結(jié)束INCDX;統(tǒng)計(jì)結(jié)果加1DECCX;循環(huán)次數(shù)減1JCXNZAAB;CX0繼續(xù)STOP:HLT3.20編寫對AL中的數(shù)據(jù)進(jìn)行“偶校驗(yàn)”的一個(gè)過程,并將校驗(yàn)結(jié)果放入AL寄存器。PJYPROCNEARPUSHAXPUSHBXPUSHCXPUSHDXMOVAL,DATANDAL,ALJNPPJY1MOVAL,00H;表示為偶JMPEXITPJY1:MOVAL,F(xiàn)FH;表示為奇EXIT:POPDXPOPCXPOPBXPOPAXRETPJYEND

34、PDATDB?3.21對80000H開始的256個(gè)單元的數(shù)據(jù)加上偶校驗(yàn)。PAR0:PAR1:ORG100hMOVAX,8000HMOVDS,AXMOVSI,0MOVCX,100HCLDLODSB;(MOVAL,SI;INCSI)TESTAL,ALJNPPAR1LOOPPAR0JMPSTOPORAL,80H;MOVSI-1,ALDECCXJNZPAR0STOP:HLT4-1某以8088為CPU的微型計(jì)算機(jī)內(nèi)存RAM區(qū)為00000H3FFFFH,若采用626462256、2164或21256各需要多片芯片?解答:8088內(nèi)存單元為8bit,所以,從00000H到3FFFFH,共需要214個(gè)byte

35、,共214*8bit,也就是共占用16Kbyte空間。由于各種芯片的數(shù)據(jù)總線根數(shù)不同,所以在連接時(shí)要特別注意芯片的位數(shù);對于如下芯片:6264有8根數(shù)據(jù)線,13根地址線,故其容量為213*8bit,即8Kbyte,所以需要2片;62256有8根數(shù)據(jù)線,15根地址線,故其容量為215*8bit,即32Kbyte,所以僅需要1片;盡管題目要求只需要16K的空間,但在使用62256時(shí)不得不使用1片。2164有8根數(shù)據(jù)線,12根地址線,故其容量為212*8bit,即4Kbyte,所以需要4片;21256有1根數(shù)據(jù)線,10根地址線(實(shí)際為20根,分兩組),但由于僅有一根數(shù)據(jù)線,要構(gòu)成八位的存儲器至少需要

36、8片,但總?cè)萘繛?*256Bit,遠(yuǎn)遠(yuǎn)超過題目的要求。4.2 利用全地址譯碼將6264接在8088的系統(tǒng)總線上,其所占的地址范圍為BE000HBFFFFH,試畫出連接圖。解答:6264有13根地址線,連接時(shí)接到系統(tǒng)總線的低13位,即A0A12,其他7根地址線A19A13的地址譯碼輸入應(yīng)該為:1011111B,故而有如下的連接:地址總線肌皿VCCA13A14A15A1&14.3 試?yán)?264芯片,在8088系統(tǒng)總線上實(shí)現(xiàn)0000H03FFFH的內(nèi)存區(qū)域,試畫出電路連接圖。解答:0000H03FFFH的地址范圍為214=16K,而6264芯片的容量為8*8K,所以需要連接2片,其中,第一片的地址

37、為00000H0仆FFH,第二片的地址為02000H03FFFH,這里用74LS138的Y0、Y1作為兩個(gè)芯片的片選。MEMVi做岳總播D0礦K社瓷錢人片型DFmLLu:*rr!-kY5IJV1訃Lujlll0一斗244山3尸4片】切口AMAIDA17AI6I5A14AJ34.4 敘述EPROM的編程過程,說明EEPROM的編程過程。EPROM編程通常采用兩種模式:標(biāo)準(zhǔn)編程和快速編程:標(biāo)準(zhǔn)編程是在VCC、VPP、CE、OE、地址信號、數(shù)據(jù)信號有效并穩(wěn)定后加入50毫秒的PGM編程負(fù)脈沖,可以在寫入一個(gè)數(shù)據(jù)后使OE變高而立即校驗(yàn),也可以在所有數(shù)據(jù)寫入后逐一校驗(yàn)。標(biāo)準(zhǔn)編程有兩大缺陷:一是時(shí)間過長,比

38、如2764全片編程約需7分鐘,時(shí)間過長;再是編程脈沖寬度稍大容易造成芯片因功耗過大而燒毀??焖倬幊虒GM的寬度減小到100微妙左右,顯然速度加快了500倍左右。能否使用快速編程取決于芯片的型號。EEPROM由于可以在線擦除信息,所以可以單字節(jié)編程或自動按頁編程。在單字節(jié)寫入時(shí),CE為低,OE為高,在WE加入100納秒的負(fù)脈沖,寫入時(shí)間包括擦除原有內(nèi)容和寫入新內(nèi)容的時(shí)間,一般為10毫秒以內(nèi),可以通過查詢READY/BUSY的狀態(tài)判定。自動按頁編程用高位線決定頁地址,低位線決定頁容量,然后一次寫入一頁內(nèi)容,寫完后查詢READY/BUSY狀態(tài),此一過程耗時(shí)在300微秒左右,所以速度較快。4.5已有

39、兩片6116,現(xiàn)欲將其接到8088系統(tǒng)中去,其地址范圍為40000H40FFFH,試畫出電路連接圖;寫入某數(shù)據(jù)并讀出與之比較,若有錯(cuò),則在DL中寫入01H,若全對,在DL中寫入EEH,試編寫此檢測程序。解答:電路連接如圖示:BiKdgL.cgisb7*l:2u-2MM亍=研-IJHI-MIJUIJUzIJL-MIMllgatf淸豈一一QHQ二檢測程序定義為一個(gè)過程,編程如下:CHKRAMPROCFARPUSHSI;PUSHDL;PUSHCX;PUSHAX;MOVCX,10000H;待檢驗(yàn)的單元個(gè)數(shù)MOVSI,4000H;存儲體段地址MOVDS,SI;MOVSI,0000H;存儲體首地址CHK:

40、MOVAL,OFFH;MOVSI,AL;寫入檢驗(yàn)數(shù)據(jù)FFHMOVAL,SI;讀出ADDAL,01HJNZRAMERRMOVAL,0;MOVSI,AL;寫入另一格檢驗(yàn)數(shù)據(jù)MOVAL,SI;讀出ANDAL,ALJNZRAMERRMOVDL,OEEH;所有單兀全對JMPRAMCHKOUTRAMERR:MOVDL,01H;發(fā)現(xiàn)錯(cuò)誤單元RAMCHKOUT:POPAX;POPCX;POPDL;POPSI;RETENDPCHKRAM4.6利用全地址譯碼將EPROM27128接到首地址為A0000H的內(nèi)存區(qū),試畫出電路圖。解答:EPROM27128的容量為8*16K,所以有14根地址線,那么如果將其接到首地址

41、為A0000H內(nèi)存區(qū),高6位地址線的排列應(yīng)該為:101000B,所以有如下的連接:D1224cl-r7QDDD口DEI0AtlKl誥M誥蠱K?慫罌霧vtc4.7內(nèi)存地址從40000H至UBBFFFH共有多少K?解答:從40000H至UBBFFFH的地址空間應(yīng)該為BBFFFH-40000H=7BFFFH每K為210,即即3FFH,7BFFFH/3FFH=1F0H=496D所以,該地址空間的范圍應(yīng)該為496KByte。4.8試判斷8088系統(tǒng)中存儲器譯碼器74LS138的輸出Y0、Y4、Y6和Y7所決定的內(nèi)存地址范圍,電路連接見附圖。解答:E3QE1根據(jù)示意圖,A19、A18、A17、A16的電平

42、值為1X00B,由于采用的是部分譯碼(A18未使用),所以每個(gè)地址譯碼輸出對應(yīng)的兩個(gè)地址范圍。Y0對應(yīng)A15、A14、A13均為0,所以其地址范圍應(yīng)該為:當(dāng)A18=0時(shí),地址范圍為:100000000000000010000001111111111111B即80000H81FFFH當(dāng)A18=1時(shí),地址范圍為:110000000000000011000001111111111111B即C0000HC1FFFFHY4對應(yīng)的A15、A14、A13為100,所以其地址范圍應(yīng)該為:當(dāng)A18=0時(shí),地址范圍為:10001000000000000000B10001001111111111111B即88000

43、H89FFFH當(dāng)A18=1時(shí),地址范圍為:1100100000000000000011001001111111111111B即C8000HC9FFFHY6對應(yīng)的A15、A14、A13為110,所以其地址范圍為:當(dāng)A18=0時(shí),地址范圍為:10001100000000000000B10001101111111111111B即8C000H8DFFFH當(dāng)A18=1時(shí),地址范圍為:11001100000000000000B11001101111111111111B即CC000HCDFFFHY7對應(yīng)的A15、A14、A14為111,所以其地址范圍為:當(dāng)A18=0時(shí),地址范圍為:1000111000000

44、0000000B10001111111111111111B即8E000H8FFFFH當(dāng)A18=1時(shí),地址范圍為:11001110000000000000B11001111111111111111B即CE000HCFFFFH。李伯成微機(jī)原理習(xí)題第五章本章作業(yè)參考書目:1.王永山等:微型計(jì)算機(jī)原理與應(yīng)用西安電子科大出版社19983.洪志全等編現(xiàn)代計(jì)算機(jī)接口技術(shù)電子工業(yè)出版社2002年4月5-1滿足那些條件8086CPU才能響應(yīng)中斷源的中斷請求?參考答案:8088/8086的中斷承認(rèn)需要滿足4個(gè)條件:(1)一條指令執(zhí)行之后-因?yàn)?088/8086CPU只在指令周期的最后一個(gè)時(shí)鐘周期檢測INTR信號;

45、(2)中斷允許標(biāo)志IF=1;(3)沒有發(fā)生NMI、HOLD和RESET;(4)指令STI、IREI指令執(zhí)行之后須再執(zhí)行一條其他指令,但一些指令組合(如REP)要視為一個(gè)指令總體。5-2說明8088/8086軟件中斷指令I(lǐng)NTn的執(zhí)行過程。由指令I(lǐng)NTn引起的中斷也稱為“異?!?,即軟件中斷或內(nèi)部中斷。這里,INT為指令操作碼,n是中斷類型號(中斷向量碼);當(dāng)該指令執(zhí)行時(shí),CPU根據(jù)中斷向量碼的數(shù)值在中斷向量表(IDT-InterruptDirectionTable)找到相應(yīng)的中斷服務(wù)程序入口地址,在對CS、IP和FLAG進(jìn)行入棧保護(hù)之后,進(jìn)而轉(zhuǎn)向指定程序的運(yùn)行。5-3用三態(tài)門74LS244作為輸

46、入接口,接口地址規(guī)定為04E5H,試畫出其與8088的總線連接圖。解:根據(jù)題意,當(dāng)?shù)刂肪€上的電平為0000010011100101且IOR信號為低(IOR低電平有效)時(shí),74LS244的門控信號E1、E2應(yīng)該為低,據(jù)此畫出下列電路:iw-ir締入遜徉敷據(jù)億些5-4利用具有三態(tài)輸出的鎖存器74LS374作為輸出接口,就接口地址為0E504H,試畫出連接圖。若5-3題中的輸入接口的BIT3、BIT4、BIT7同時(shí)為1時(shí),將DATA為首地址的10個(gè)內(nèi)存數(shù)據(jù)連續(xù)由輸出接口輸出。若不滿足則等待,試編寫程序。解:根據(jù)題意,當(dāng)?shù)刂肪€上的電平為1110010100000100且IOW信號為低(IOW低電平有效

47、)時(shí),74LS374的時(shí)鐘端CP應(yīng)該為低,而74LS374的OE始終為低,據(jù)此畫出下列電路:JL賽5Q器益IQKDDDnDDn口11-根據(jù)題5-3和題5-4電路,如果題5-3電路中的BIT3、BIT4和BIT7同時(shí)為1則將以DATA為首地址的10個(gè)數(shù)據(jù)連續(xù)由0E504H輸出口輸出,不滿足條件等待,對應(yīng)的程序段如下:5-5若要求8259的地址為E010H和E011H,試畫出與8080總線的連接圖。若系統(tǒng)中只有OUTWAIT:MOVDX,04E5HINAL,DXTESTAL,98H;10011000BJZOUTWAIT;MOVSI,OFFSETDATAMOVCL,0AH;數(shù)據(jù)個(gè)數(shù)MOVDX,0E504HOUTPUT:MOVAL,SIINCSIOUTDX,ALLOOPOUTPUT1片825

溫馨提示

  • 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

提交評論