版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
李伯成《微機(jī)原理》習(xí)題第一章本章作業(yè)參考書(shū)目:①薛鈞義主編《微型計(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*21=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=256D+0D+64D+32D+0D+16D+4D+0D=364DX=1101101B=1*26+1*25+0*24+1*23+1*22+0*21+1*20=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.101101B=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〔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)680.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=101’011’1’101’(3)X=110B=6Q1.8將以下八進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):〔1〕X=760Q=111'110'000B〔2〕X=32415Q=11'010'100'001'101B1.9將以下二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù):X=101010111101101B=55EDHX=1100110101'1001B=11001101011001B=3359HX=1000110001B=1000110001B=231H1.10將以下十六進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù):X=ABCH=101010111100BX=3A6FX=F1C3.4B=1111000111000011.01001011B1.11將以下二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼:(1)X=1011011.101B=1'011'011.101B=91.625d=10010001.0110BCD(2)X=1010110.001B=1’010’110.001=126.11.12將以下十進(jìn)制數(shù)轉(zhuǎn)換成BCD碼:〔1〕X=1024D=0001000000100100BCD〔2〕X=632=011000110010BCD〔3〕X=103=000100000011BCD1.13寫(xiě)出以下字符的ASCII碼:A41H65D01000001B939H47D*2AH42D=3DH45D!21H33D1.14假設(shè)加上偶校驗(yàn)碼,以下字符的ASCII碼是什么?字符原碼加上偶校驗(yàn)碼之后 B42H,01000010B 42H,01000010B434H,00110100BB4H,10110100B737H,00110111BB7H,10110111B=3DH,00111101BBDH,10111101B!21H,00100001B21H,00100001B?3FH00111111B3FH,00111111B1.15加上奇校驗(yàn),上面的結(jié)果如何?字符原碼加上奇校驗(yàn)碼之后 B42H,01000010B C2H,11000010B434H,00110100B34H,00110100B737H,00110111B37H,00110111B=3DH,00111101B3DH,00111101B!21H,00100001BA1H,10100001B?3FH00111111BBFH,10111111B1.16計(jì)算下式:〔1〕[‘B’/2+ABH-11011001B]*0.0101BCD=(42H/2+ABH-D9H)*0.21BCD==F3H*0.21BCD=(-DH)*0.21BCD=-2.73D(2)3CH–[(84D)/(16Q)+’8’/8D]=60D-[84D/14D+(56/8)]=60D-[13]D==47D1.17對(duì)以下十進(jìn)制數(shù),用八位二進(jìn)制數(shù)寫(xiě)出其原碼、反碼和補(bǔ)碼:(正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼除符號(hào)位之外其余各位按位取反。正數(shù)的補(bǔ)碼與原碼相同;負(fù)數(shù)的補(bǔ)碼除符號(hào)位以外,其余各位按位取反之后再加一。)數(shù)據(jù)原碼反碼補(bǔ)碼+99011000110110001101100011-99111000111001110010011101+12701111111 0111111101111111-127111111111000000010000001+0000000000000000000000000-01000000011111111000000001.188位二進(jìn)制數(shù)原碼可表示數(shù)的范圍是+127~-128;8位二進(jìn)制數(shù)補(bǔ)碼可表示的數(shù)的范圍是+127~-127;8位二進(jìn)制數(shù)反碼可表示的數(shù)的范圍是:+127~-128;16位二進(jìn)制數(shù)的原碼、補(bǔ)碼、反碼可表示的數(shù)的范圍是多少?+32767~-32768、+32767~-32768、+32767~-32768;1.20至少寫(xiě)出3種用二進(jìn)制編碼狀態(tài)表示十進(jìn)制數(shù)字的編碼方式。8421碼、5421碼2421碼余3碼0000000000000011 00001000100010100 10010 001010000101 20011 001110010110 30100 010010100111 40101 100010111000 50110 100111001001 6011110101101101071000101111101011810011100111111009李伯成《微機(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é)出版社2000年9月④洪志全等編《現(xiàn)代計(jì)算機(jī)接口技術(shù)》電子工業(yè)出版社2002年4月⑤仇玉章主編《32位微型計(jì)算機(jī)原理與接口技術(shù)》清華大學(xué)出版社2000年9月2.18086CPU的RESET引腳的功能是什么?答:RESET引腳稱為復(fù)位引腳,輸入、三態(tài)、高電平有效;RESET引腳將使CPU立即結(jié)束當(dāng)前操作,處理器要求RESET信號(hào)至少要保持4個(gè)時(shí)鐘周期的高電平,才能結(jié)束它正在進(jìn)行的操作。CPU復(fù)位以后,除了代碼段存放器CS的值為FFFFH外,其余所有存放器的值均為零,指令隊(duì)列為空。當(dāng)RESET回到低電平時(shí),CPU開(kāi)始執(zhí)行“熱啟動(dòng)”程序,由于此時(shí)CS的值為FFFFH,IP的值為0000H,所以CPU復(fù)位以后執(zhí)行的第一條指令的物理地址為FFFF0H,該單元通常放置一條段間直接轉(zhuǎn)移指令JMPSS:OO,SS:OO即為系統(tǒng)程序的實(shí)際起始地址。2.2在8086CPU工作在最小模式時(shí),〔1〕當(dāng)CPU訪問(wèn)存儲(chǔ)器時(shí),要利用哪些信號(hào)?當(dāng)CPU訪問(wèn)存儲(chǔ)器時(shí),要利用AD0~AD15、WR*、RD*、IO/M*以及A16~A19;〔2〕當(dāng)CPU訪問(wèn)外設(shè)接口時(shí),要利用哪些信號(hào)?當(dāng)CPU訪問(wèn)外設(shè)接口時(shí),同樣要利用AD0---AD15、WR*、RD*以及IO/M*,但不使用高端地址線A16---A19;〔3〕當(dāng)HOLD有效并得到響應(yīng)時(shí),CPU哪些引腳置高阻?當(dāng)HOLD有效并得到響應(yīng)時(shí),CPU除HOLD、HOLDA引腳外其余所有的信號(hào)引腳均為高阻態(tài)。略說(shuō)明8086CPUREADY信號(hào)的功能。見(jiàn)P232.58086CPU的NMI和INTR引腳的不同有幾點(diǎn)??jī)牲c(diǎn):〔1〕INTR是可以由用戶用指令禁止的,〔通過(guò)中斷允許標(biāo)志IF的開(kāi)---STI和關(guān)CLI進(jìn)行〕;而NMI不能由用戶禁止;(2)INTR是可以區(qū)分優(yōu)先級(jí)別的,NMI是最高級(jí)的,沒(méi)有中斷優(yōu)先級(jí)的排隊(duì)。2.6說(shuō)明8086CPU內(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)-----符號(hào)標(biāo)志;OF〔OverflowFlag〕-----溢出標(biāo)志;IF〔InterruptEnableFlag〕-----中斷允許標(biāo)志;DF(DirectionFlag)----方向標(biāo)志;TF(TrapFlag)-----陷阱標(biāo)志。2.7說(shuō)明8086CPU內(nèi)部14個(gè)存放器的作用。8086內(nèi)部的存放器可以分為3類:第一類:通用存放器:AX、BX、CX、DX、SI、DI、SP、BP,共8個(gè)可以存儲(chǔ)數(shù)據(jù)或者地址的低16位;AX、BX、CX和DX可以分成8個(gè)8位的存放器使用;SI、DI又稱變址存放器,用于存儲(chǔ)變址地址;SP和BP存放指針變量值。第二類:段存放器:CS、DS、SS、ES,共4個(gè)存放器,只能存放對(duì)應(yīng)段的段地址;第三類為IP和FLAG,IP在通常情況下不允許用戶訪問(wèn),而FLAG是用以向用戶提供了解ALU工作狀態(tài)或者控制CPU工作方式的標(biāo)志存放器。2.8試畫(huà)出8086CPU工作在最小模式時(shí)的總線形成示意圖。(注:BHE*引腳為34腳---即SS0,參見(jiàn)P25狀態(tài)編碼表)四點(diǎn)說(shuō)明:A、MN/MX端接+5V,決定了8086工作在最小模式。B、有一片8234A,作為時(shí)鐘發(fā)生器。C、有三片8282或74LS373,用來(lái)作為地址鎖存器。D、當(dāng)系統(tǒng)中所連接的存儲(chǔ)器和外設(shè)比擬多時(shí),需要增加系統(tǒng)數(shù)據(jù)總線的驅(qū)動(dòng)能力,這時(shí),要用兩片8286/8287(74LS244或74LS245)作為總線收發(fā)器。2.98086/8088為什么采用地址/數(shù)據(jù)引線復(fù)用技術(shù)?答:考慮到芯片本錢,8086/8088采用40條引線的封裝結(jié)構(gòu)。40條引線引出8086/8088的所有信號(hào)是不夠用的,采用地址/數(shù)據(jù)線復(fù)用引線方法可以解決這一矛盾,從時(shí)序邏輯的角度,地址與數(shù)據(jù)信號(hào)不會(huì)同時(shí)出現(xiàn),二者可以分時(shí)復(fù)用同一組引線。2.10怎樣確定8086的最大或最小工作模式?最大、最小模式產(chǎn)生控制信號(hào)的方法有何不同?答:引線MN/MX*的邏輯狀態(tài)決定8086的工作模式,MN/MX*引線接高電平,8086被設(shè)定為最小模式;MN/MX*引線接低電平,8086被設(shè)定為最大模式。最小模式下所有的控制信號(hào)由CPU相關(guān)引線直接提供;最大模式下控制信號(hào)由8288專用芯片譯碼后提供,8288的輸入由8086的S2─S0三條狀態(tài)信號(hào)引線提供。李伯成《微機(jī)原理》習(xí)題第三章本章作業(yè)參考書(shū)目:1.周明德:微型計(jì)算機(jī)IBM-PC系統(tǒng)原理與應(yīng)用清華大學(xué)出版社19912.王永山等:微型計(jì)算機(jī)原理與應(yīng)用西安電子科大出版社19983.張懷蓮:IBMPC匯編語(yǔ)言程序設(shè)計(jì)電子工業(yè)出版社1990注:本習(xí)題解中的程序僅為代碼片段,可在Emu8086version2.57環(huán)境下仿真運(yùn)行,如果在MASM下進(jìn)行匯編,需添加段設(shè)置以及相應(yīng)的偽指令。MOV AX,00H; 立即尋址SUB AX,AX; 存放器尋址MOV AX,[BX]; 存放器間接尋址MOV AX,TABLE; 直接尋址MOV AL,ARAY1[SI]; 存放器相對(duì)尋址 MOV AX,[BX+6]; 存放器相對(duì)尋址假設(shè)1KB的數(shù)據(jù)存放在TABLE以下,試編寫(xiě)程序?qū)⒃摂?shù)據(jù)拌到NEXT之下。程序片段如下:ORG100h MOV CX,03FFH;數(shù)據(jù)個(gè)數(shù) LEA SI,TABLE;源區(qū)首地址 LEA DI,NEXT;目的區(qū)首地址AGAIN: MOV AL,[SI]; MOV [DI],AL;搬移 INC SI INC DI; 移動(dòng)地址指針 DEC CX; 循環(huán)計(jì)數(shù)器遞減 JNZ AGAIN; 循環(huán)未結(jié)束轉(zhuǎn) HLT; 暫停 TABLEDB1024dup('A');源數(shù)據(jù)區(qū) NEXT DB1024dup(0); 目的數(shù)據(jù)區(qū)編寫(xiě)10個(gè)字〔16位二進(jìn)制數(shù)〕之和的程序ORG100h LEA SI,ADD1; LEA DI,ADD2; LEA BX,SUM; MOV CL,CONT; MOV CH,0;循環(huán)初始化 CLC; 進(jìn)位清零MADD1: MOV AX,[SI]; 讀加數(shù)1 ADC AX,[DI] ADD SI,2; 移動(dòng)源區(qū)地址指針 ADD DI,2; 移動(dòng)目的區(qū)地址指針 MOV [BX],AX; 回存計(jì)算結(jié)果 ADD BX,2; 移動(dòng)“和”存儲(chǔ)區(qū)地址指針 LOOP MADD1; 循環(huán)控制 HLT; 暫停ADD1 DB 0FEH,86H,7CH,44h,56H,1FH,24H,01H,02H,33H;加數(shù)1ADD2 DB 56H,49H,4EH,0FH,9CH,22H,45H,11H,45H,21H;加數(shù)2SUM DB 10DUP(0);和存儲(chǔ)單元CONT DB 5;循環(huán)次數(shù)3.4某16位二進(jìn)制數(shù),放在DATA連續(xù)的兩個(gè)單元中,試編程求其平方根和余數(shù),將其分別存放在ANS和REMAIN中。ORG100h MOV BL,2; 除數(shù)初值 AGAIN: MOV CX,NUM; 預(yù)計(jì)最大循環(huán)次數(shù) MOV AL,BL; 0、1的平方鏟除外 MUL BL; 得到2的平方 CMP AX,CX; 大于原始數(shù)據(jù)么? JG EXIT; 假設(shè)原始數(shù)據(jù)小于4轉(zhuǎn)EXIT MOV AX,CX; 讀數(shù) DIV BL; 試除 INC BL; 除數(shù)遞增 JMP AGAIN; 繼續(xù)除 EXIT: DEC BL; 去除除數(shù)自加 MOV ANS,BL; 存商 MOV AL,BL; 恢復(fù)余數(shù) MUL BL; SUB CX,AX; MOV REMAIN,CL; HLT NUM DW 7; ANS DB ?; REMAIN DB ?;3.5在DATA1之下順序存放著以ASCII碼表示的千位數(shù),將其轉(zhuǎn)換成二進(jìn)制數(shù)。MOV CL,4; 移位次數(shù) MOV CH,CL; 循環(huán)次數(shù) MOV SI,OFFSETASCBIN CLD XOR AX,AX XOR DX,DXASCB1: LODSB AND AL,7FH CMP AL,'0' ;不大于‘0’結(jié)束轉(zhuǎn)換 JL ERR CMP AL,'9' JG ASCB2 ;大于‘9’轉(zhuǎn)ASCB2 SUB AL,30H ;數(shù)字形式二進(jìn)制數(shù)減30H JMP ASCB3ASCB2: CMP AL,'A' ;大于‘9’又小于‘A’結(jié)束轉(zhuǎn)換 JL ERR CMP AL,'F' JG ERR ;大于‘F’為不合理數(shù),結(jié)束轉(zhuǎn)換 SUB AL,37H ;字符形式ASCII數(shù)減37HASCB3: OR DL,AL ROL DX,CL DEC CH JNZ ASCB1 ROL DX,CL MOV BIN,DX;存儲(chǔ)轉(zhuǎn)換結(jié)果ERR: NOP HLTASCBIN DB'1','B,'4','3'BIN DW ?3.7編寫(xiě)程序?qū)OLT中的一個(gè)8位數(shù)乘以20,乘積放在ANS中〔用3種方式〕。解:第一種方法:常規(guī)乘法運(yùn)算 ORG100h MOV AL,MOLT MOV BL,20 MUL BL MOV ANS,AX HLT MOLT DB 2 ANS DW ?第二種方法,將MOLT連加20次ORG100h MOV CX,20 MOV BX,MOLT XOR AX,AX CLC ADD1:ADC AX,BX LOOP ADD1 MOV ANS,AX HLT MOLTDW 5 ANS DW ?第三種方法,將“20”連加MOLT次ORG100h MOV CX,MOLT MOV BX,20 XOR AX,AX CLC ADD1:ADC AX,BX LOOP ADD1 MOV ANS,AX HLT MOLTDW 5 ANS DW ?3.8 在DATA之下存放100個(gè)無(wú)符號(hào)的8位數(shù),找出其最大者并將其存放在KVFF單元。ORG100h XOR DL,DL LEA DI,KVFF; NEXT0: LEA SI,BUFFER; MOV CL,99; 比擬次數(shù)為N-1次 NEXT1: MOV AL,[SI]; INC SI; CMP DL,AL; JNC NEXT2; MOV DL,AL; DL中始終存目前最大值NEXT2: DEC CL; JNZ NEXT1; MOV [DI],DL;最大值存儲(chǔ) HLT BUFFERDB;自行定義100個(gè)數(shù)據(jù) KVFFDB ?3.9假設(shè)將數(shù)據(jù)按大小順序排序,試編寫(xiě)程序..解:此處采用“冒泡法”予以處理: ORG100h LEA DI,BUFFER; 數(shù)據(jù)區(qū) MOV BL,99; 外循環(huán)次數(shù) NEXT0: MOV SI,DI; MOV CL,BL; 內(nèi)循環(huán)次數(shù) NEXT3: MOV AL,[SI]; 讀數(shù) INC SI; 移動(dòng)指針 CMP AL,[SI]; 比擬 JNC NEXT5; 大于轉(zhuǎn)NEXT5 MOV DL,[SI]; MOV [SI-1],DL; MOV [SI],AL; 不大于互換 NEXT5: DEC CL; 內(nèi)循環(huán)次數(shù)減一 JNZ NEXT3; DEC BL; 外循環(huán)次數(shù)減一 JNZ NEXT0 HLT BUFFERDB自行定義100個(gè)字節(jié)型數(shù)據(jù)3.10在BVFF單元中有一個(gè)BCD數(shù)A,試根據(jù)以下關(guān)系編寫(xiě)程序,計(jì)算結(jié)果存在DES中.A<20,Y=3*A;A<60,Y=A-20;A>=60,Y=80. ORG100h MOV AL,BVFF CMP AL,20 JL EX1 CMP AL,60 JL EX2 MOV AL,80 JMP STOP EX1: MOV BL,3 MUL BL JMP STOP EX2: SUB AL,20 STOP: MOV DES,AL HLT BVFF DB8 DES DB?3.11址為DATAB開(kāi)始的80個(gè)單元中,存放某班80個(gè)學(xué)生的某課程成績(jī),要求:統(tǒng)計(jì)>=90分、80~89分、70~79分、60~69分、60分以下的人數(shù),結(jié)果存放在BTRX開(kāi)始的5個(gè)單元中求平均成績(jī),結(jié)果存放在LEVEL中。解:存放器使用分配:90分以上在DH,80分以上在DL,70分以上在BH,60分以上在BL,60分以下在AH,總分、均分都在[DI]。 ORG100h XOR AH,AH XOR DX,DX ;統(tǒng)計(jì)結(jié)果清零 XOR BX,BX ;統(tǒng)計(jì)結(jié)果清零 LEA SI,DATA LEA DI,LEVEL MOV CL,CONT;總?cè)藬?shù)送循環(huán)計(jì)數(shù)器CX goon: MOV AL,[SI] ;讀原始數(shù)據(jù) ADC [DI],AL; 累加總分 ADC [DI+1],0 ;計(jì)算進(jìn)位 CMP AL,90 JLPP8 ;不高于90分者轉(zhuǎn)PP8 INC DH;90--100分的人數(shù)加一 JMP STOR PP8: CMP AL,80 JL PP7 ;不高于80分轉(zhuǎn)PP7 INC DL ;80----89分的人數(shù)加一 JMP STOR PP7: CMP AL,70 JL PP6 ;不高于70分者轉(zhuǎn)PP6 INCBH ;70---79分的人數(shù)加一 JMP STOR PP6: CMP AL,60 JL PP5 ;不高于60分者轉(zhuǎn)PP5 INCBL ;60---69分的人數(shù)加一 JMP STOR PP5: INC AH ;低于60分的人數(shù)加一 STOR:INC SI ;讀下一個(gè)分?jǐn)?shù) LOOP GOON ;CX=CX-1,CX不為零轉(zhuǎn)GOON,繼續(xù)統(tǒng)計(jì) LEA SI,BUFFER ;回存統(tǒng)計(jì)結(jié)果 MOV [SI],DH INC SI MOV [SI],DL INC SI MOV [SI],BH INC SI MOV [SI],BL INC SI MOV [SI],AH MOV AX,WORDPTR[DI] ;計(jì)算平均成績(jī) MOV CL,CONT DIV CL MOV LEVEL,AL ;回存平均成績(jī) HLTCONT DB10DATA DB30,65,99,80,75,89,100,45,60,70BUFFERDB?,?,?,?,?LEVEL DB?,?求兩個(gè)有符號(hào)數(shù)(DATA1,DATA2)差的絕對(duì)值,結(jié)果存入DATA3. ORG 100h MOV AL,DATA1;讀入被減數(shù) SUB AL,DATA2;減去減數(shù) JC CHANGE; JMP STORCHANGE: NEG ALSTOR: MOV DATA3,AL HLT DATA1 DB 3 DATA2 DB 5 DATA3 DB ?3.13存從40000H到4BFFH的個(gè)單元均寫(xiě)入55H,并再逐個(gè)讀出,驗(yàn)證是否一致,假設(shè)一致,置AL為7EH,否那么置AL為81H. ORG100h MOV AX,4000H; MOV DS,AX; MOV SI,0 START: MOV CX,0BFFFH BEGIN: MOV [SI],55H MOV AL,[SI] INC SI CMP AL,55H JNZ ERR LOOP BEGIN MOV AL,7EH JMP STOP ERR: MOV AL,81H STOP: HLT 3.14~3.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寫(xiě)入一個(gè)字節(jié)的數(shù)據(jù)時(shí),03FBH的BIT5置1,當(dāng)它變?yōu)?狀態(tài)時(shí),又可以寫(xiě)入下一個(gè)數(shù)據(jù)。據(jù)此編寫(xiě)將起始地址為SEDAT的50個(gè)數(shù)據(jù)輸出到03F8H端口的程序。 WAIT: MOV DX,03FBH IN AL,DX TEST AL,00100000B;〔20H〕 JZ SEND JMP WAIT SEND:MOV DX,3F8H MOV AL,[SI]; CMP AL,0AH;輸出字串結(jié)束標(biāo)志符 JZ STOP OUT DX,AL JMP WAIT STOP:HLT口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í),它們才會(huì)再次同時(shí)為1,據(jù)此編寫(xiě)從02E7H端口輸入32個(gè)數(shù)據(jù)然后存入A1000H單元開(kāi)始的區(qū)域。 MOV AX,0A000H MOV DS,AX MOV SI,1000H; 設(shè)置存儲(chǔ)區(qū)地址 MOV CL,20H; 輸入數(shù)據(jù)個(gè)數(shù)BEGIN:MOV DX,0E20H IN AL,DX TEST AL,00100100B; 測(cè)試狀態(tài)位BIT5、BIT2 JZ BEGIN; 不同時(shí)為1繼續(xù)測(cè)試 MOV DX,02E7H IN AL,DX; 輸入數(shù)據(jù) MOV [SI],AL; 存到指定區(qū)域 INC SI; 移動(dòng)地址指針 LOOP BEGIN; 循環(huán) HLT3.17在內(nèi)存40000H開(kāi)始的16K的單元中存放著一組數(shù)據(jù),將其順序搬移到起始地址為A0000H的區(qū)域。解:利用字符串操作指令MOVSB,16K即16*1024=3FFFH。 MOV AX,4000H MOV DS,AX MOV AX,A000H MOV ES,AX MOV SI,0 MOV DI,0 MOV CX,3FFFH CLD REP MOVSBHLT上題的根底上,將兩個(gè)區(qū)域的數(shù)據(jù)逐個(gè)進(jìn)行比擬,假設(shè)有錯(cuò)將BL置0,全對(duì)將BL置FFH。 MOV AX,4000H MOV DS,AX MOV AX,A000H MOV ES,AX MOV SI,0 MOV DI,0 MOV CX,03FFH CLDAAB: CMPSB JNZ STOP LOOP AABMOV BL,0FFH JMP EX1 STOP: MOV BL,0; EX1:NOP HLT3.19統(tǒng)計(jì)由40000H單元開(kāi)始的16K個(gè)單元中所存字符‘A’的個(gè)數(shù),統(tǒng)計(jì)結(jié)果存放在DX存放器中。 MOV AX,4000H MOV DS,AX MOV SI,0; MOV CX,3FFFH; 數(shù)據(jù)個(gè)數(shù) MOV DX,0;統(tǒng)計(jì)結(jié)果存放器清零XORDX,DX CLDAAB: LODSB CMP AL,‘A’; 比擬 JZ AAC;字符為‘A’轉(zhuǎn)計(jì)數(shù) LOOP AAB; 循環(huán) JMP STOP; 處理完畢轉(zhuǎn)結(jié)束 AAC: INC DX; 統(tǒng)計(jì)結(jié)果加1 DEC CX; 循環(huán)次數(shù)減1 JCXNZ AAB; CX<>0繼續(xù) STOP: HLT3.20編寫(xiě)對(duì)AL中的數(shù)據(jù)進(jìn)行“偶校驗(yàn)”的一個(gè)過(guò)程,并將校驗(yàn)結(jié)果放入AL存放器。 PJY PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX MOV AL,DAT AND AL,AL JNP PJY1 MOV AL,00H; 表示為偶 JMP EXIT PJY1: MOV AL,F(xiàn)FH; 表示為奇 EXIT: POP DX POP CX POP BX POP AX RET PJY ENDP DAT DB?3.21 對(duì)80000H開(kāi)始的256個(gè)單元的數(shù)據(jù)加上偶校驗(yàn)。 ORG100h MOV AX,8000H MOV DS,AX MOV SI,0 MOV CX,100H CLD PAR0: LODSB;〔MOV AL,[SI];INC SI〕 TEST AL,AL JNP PAR1 LOOP PAR0 JMP STOP PAR1: OR AL,80H; MOV [SI-1],AL DEC CX JNZ PAR0 STOP: HLT某以8088為CPU的微型計(jì)算機(jī)內(nèi)存RAM區(qū)為00000H~3FFFFH,假設(shè)采用6264、62256、2164或21256各需要多片芯片?解答:8088內(nèi)存單元為8bit,所以,從00000H到3FFFFH,共需要214個(gè)byte,共214*8bit,也就是共占用16Kbyte空間。由于各種芯片的數(shù)據(jù)總線根數(shù)不同,所以在連接時(shí)要特別注意芯片的位數(shù);對(duì)于如下芯片: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)成八位的存儲(chǔ)器至少需要8片,但總?cè)萘繛?*256Bit,遠(yuǎn)遠(yuǎn)超過(guò)題目的要求。利用全地址譯碼將6264接在8088的系統(tǒng)總線上,其所占的地址范圍為BE000H~BFFFFH,試畫(huà)出連接圖。解答:6264有13根地址線,連接時(shí)接到系統(tǒng)總線的低13位,即A0~A12,其他7根地址線A19~A13的地址譯碼輸入應(yīng)該為:1011111B,故而有如下的連接:試?yán)?264芯片,在8088系統(tǒng)總線上實(shí)現(xiàn)0000H~03FFFH的內(nèi)存區(qū)域,試畫(huà)出電路連接圖。解答:0000H~03FFFH的地址范圍為214=16K,,而6264芯片的容量為8*8K,所以需要連接2片,其中,第一片的地址為00000H~01FFFH,第二片的地址為02000H~03FFFH,這里用74LS138的Y0、Y1作為兩個(gè)芯片的片選。表達(dá)EPROM的編程過(guò)程,說(shuō)明EEPROM的編程過(guò)程。EPROM編程通常采用兩種模式:標(biāo)準(zhǔn)編程和快速編程:標(biāo)準(zhǔn)編程是在VCC、VPP、CE、OE、地址信號(hào)、數(shù)據(jù)信號(hào)有效并穩(wěn)定后參加50毫秒的PGM編程負(fù)脈沖,可以在寫(xiě)入一個(gè)數(shù)據(jù)后使OE變高而立即校驗(yàn),也可以在所有數(shù)據(jù)寫(xiě)入后逐一校驗(yàn)。標(biāo)準(zhǔn)編程有兩大缺陷:一是時(shí)間過(guò)長(zhǎng),比方2764全片編程約需7分鐘,時(shí)間過(guò)長(zhǎng);再是編程脈沖寬度稍大容易造成芯片因功耗過(guò)大而燒毀??焖倬幊虒GM的寬度減小到100微妙左右,顯然速度加快了500倍左右。能否使用快速編程取決于芯片的型號(hào)。EEPROM由于可以在線擦除信息,所以可以單字節(jié)編程或自動(dòng)按頁(yè)編程。在單字節(jié)寫(xiě)入時(shí),CE為低,OE為高,在WE參加100納秒的負(fù)脈沖,寫(xiě)入時(shí)間包括擦除原有內(nèi)容和寫(xiě)入新內(nèi)容的時(shí)間,一般為10毫秒以內(nèi),可以通過(guò)查詢READY/BUSY的狀態(tài)判定。自動(dòng)按頁(yè)編程用高位線決定頁(yè)地址,低位線決定頁(yè)容量,然后一次寫(xiě)入一頁(yè)內(nèi)容,寫(xiě)完后查詢READY/BUSY狀態(tài),此一過(guò)程耗時(shí)在300微秒左右,所以速度較快。4.5已有兩片6116,現(xiàn)欲將其接到8088系統(tǒng)中去,其地址范圍為40000H~40FFFH,試畫(huà)出電路連接圖;寫(xiě)入某數(shù)據(jù)并讀出與之比擬,假設(shè)有錯(cuò),那么在DL中寫(xiě)入01H,假設(shè)全對(duì),在DL中寫(xiě)入EEH,試編寫(xiě)此檢測(cè)程序。解答:電路連接如圖示:檢測(cè)程序定義為一個(gè)過(guò)程,編程如下:CHKRAM PROCFARPUSH SI;PUSH DL;PUSH CX;PUSH AX; MOV CX,10000H; 待檢驗(yàn)的單元個(gè)數(shù) MOV SI,4000H;存儲(chǔ)體段地址 MOV DS,SI; MOV SI,0000H; 存儲(chǔ)體首地址CHK: MOV AL,0FFH; MOV [SI],AL; 寫(xiě)入檢驗(yàn)數(shù)據(jù)FFH MOV AL,[SI]; 讀出 ADD AL,01H JNZ RAMERR MOVAL,0; MOV [SI],AL; 寫(xiě)入另一格檢驗(yàn)數(shù)據(jù) MOV AL,[SI]; 讀出 AND AL,AL JNZ RAMERR MOVDL,0EEH; 所有單元全對(duì) JMP RAMCHKOUTRAMERR: MOV DL,01H; 發(fā)現(xiàn)錯(cuò)誤單元RAMCHKOUT: POP AX; POP CX; POPDL; POPSI;RETENDPCHKRAM4.6利用全地址譯碼將EPROM27128接到首地址為A0000H的內(nèi)存區(qū),試畫(huà)出電路圖。解答:EPROM27128的容量為8*16K,所以有14根地址線,那么如果將其接到首地址為A0000H內(nèi)存區(qū),高6位地址線的排列應(yīng)該為:101000B,所以有如下的連接:內(nèi)存地址從40000H到BBFFFH共有多少K?解答:從40000H到BBFFFH的地址空間應(yīng)該為BBFFFH-40000H=7BFFFH每K為210,即3FFH,7BFFFH/3FFH=1F0H=496D所以,該地址空間的范圍應(yīng)該為496KByte。試判斷8088系統(tǒng)中存儲(chǔ)器譯碼器74LS138的輸出Y0、Y4、Y6和Y7所決定的內(nèi)存地址范圍,電路連接見(jiàn)附圖。解答:根據(jù)示意圖,A19、A18、A17、A16的電平值為1X00B,由于采用的是局部譯碼〔A18未使用〕,所以每個(gè)地址譯碼輸出對(duì)應(yīng)的兩個(gè)地址范圍。Y0對(duì)應(yīng)A15、A14、A13均為0,所以其地址范圍應(yīng)該為:當(dāng)A18=0時(shí),地址范圍為:1000000000000000~10000001111111111111B即80000H~81FFFH當(dāng)A18=1時(shí),地址范圍為:1100000000000000~11000001111111111111B即C0000H~C1FFFFHY4對(duì)應(yīng)的A15、A14、A13為100,所以其地址范圍應(yīng)該為:當(dāng)A18=0時(shí),地址范圍為:10001000000000000000B~10001001111111111111B即88000H~89FFFH當(dāng)A18=1時(shí),地址范圍為:11001000000000000000~11001001111111111111B即C8000H~C9FFFHY6對(duì)應(yīng)的A15、A14、A13為110,所以其地址范圍為:當(dāng)A18=0時(shí),地址范圍為:10001100000000000000B~10001101111111111111B即8C000H~8DFFFH當(dāng)A18=1時(shí),地址范圍為:11001100000000000000B~11001101111111111111B即CC000H~CDFFFHY7對(duì)應(yīng)的A15、A14、A14為111,所以其地址范圍為:當(dāng)A18=0時(shí),地址范圍為:10001110000000000000B~10001111111111111111B即8E000H~8FFFFH當(dāng)A18=1時(shí),地址范圍為:11001110000000000000B~11001111111111111111B即CE000H~CFFFFH。李伯成《微機(jī)原理》習(xí)題第五章本章作業(yè)參考書(shū)目:1.王永山等:微型計(jì)算機(jī)原理與應(yīng)用西安電子科大出版社19983.洪志全等編《現(xiàn)代計(jì)算機(jī)接口技術(shù)》電子工業(yè)出版社2002年4月滿足那些條件8086CPU才能響應(yīng)中斷源的中斷請(qǐng)求?參考答案:8088/8086的中斷成認(rèn)需要滿足4個(gè)條件:〔1〕一條指令執(zhí)行之后---因?yàn)?088/8086CPU只在指令周期的最后一個(gè)時(shí)鐘周期檢測(cè)INTR信號(hào);〔2〕中斷允許標(biāo)志IF=1;〔3〕沒(méi)有發(fā)生NMI、HOLD和RESET;〔4〕指令STI、IREI指令執(zhí)行之后須再執(zhí)行一條其他指令,但一些指令組合〔如REP〕要視為一個(gè)指令總體。5-2說(shuō)明8088/8086軟件中斷指令I(lǐng)NTn的執(zhí)行過(guò)程。由指令I(lǐng)NTn引起的中斷也稱為“異常”,即軟件中斷或內(nèi)部中斷。這里,INT為指令操作碼,n是中斷類型號(hào)〔中斷向量碼〕;當(dāng)該指令執(zhí)行時(shí),CPU根據(jù)中斷向量碼的數(shù)值在中斷向量表〔IDT---InterruptDirectionTable〕找到相應(yīng)的中斷效勞程序入口地址,在對(duì)CS、IP和FLAG進(jìn)行入棧保護(hù)之后,進(jìn)而轉(zhuǎn)向指定程序的運(yùn)行。用三態(tài)門74LS244作為輸入接口,接口地址規(guī)定為04E5H,試畫(huà)出其與8088的總線連接圖。解:根據(jù)題意,當(dāng)?shù)刂肪€上的電平為0000010011100101且IOR信號(hào)為低〔IOR低電平有效〕時(shí),74LS244的門控信號(hào)E1、E2應(yīng)該為低,據(jù)此畫(huà)出以下電路:利用具有三態(tài)輸出的鎖存器74LS374作為輸出接口,就接口地址為0E504H,試畫(huà)出連接圖。假設(shè)5-3題中的輸入接口的BIT3、BIT4、BIT7同時(shí)為1時(shí),將DATA為首地址的10個(gè)內(nèi)存數(shù)據(jù)連續(xù)由輸出接口輸出。假設(shè)不滿足那么等待,試編寫(xiě)程序。解:根據(jù)題意,當(dāng)?shù)刂肪€上的電平為1110010100000100且IOW信號(hào)為低〔IOW低電平有效〕時(shí),74LS374的時(shí)鐘端CP應(yīng)該為低,而74LS374的OE始終為低,據(jù)此畫(huà)出以下電路:根據(jù)題5-3和題5-4電路,如果題5-3電路中的BIT3、BIT4和BIT7同時(shí)為1,那么將以DATA為首地址的10個(gè)數(shù)據(jù)連續(xù)由0E504H輸出口輸出,不滿足條件等待,對(duì)應(yīng)的程序段如下: OUTWAIT: MOV DX,04E5H IN AL,DX TEST AL,98H; 10011000B JZ OUTWAIT; MOV SI,OFFSET DATA
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)參考:近代漢文中國(guó)行紀(jì)與全球文學(xué)關(guān)系研究
- 2025年度個(gè)人與公司租賃合同稅費(fèi)承擔(dān)協(xié)議4篇
- 二零二五版金融服務(wù)保密協(xié)議范本修訂6篇
- 2025年保定怎么考貨運(yùn)從業(yè)資格證
- 二零二五年城投小貸與農(nóng)業(yè)產(chǎn)業(yè)合作框架協(xié)議4篇
- 2025年度農(nóng)村土地流轉(zhuǎn)經(jīng)營(yíng)權(quán)抵押貸款合同示范文本4篇
- 二零二五年度充電樁安裝工程知識(shí)產(chǎn)權(quán)保護(hù)合同4篇
- 二零二五年度出境領(lǐng)隊(duì)旅游目的地考察合同4篇
- 二零二五年度城市綜合體建設(shè)項(xiàng)目承包商安全作業(yè)管理協(xié)議4篇
- 2025年度葡萄采摘季節(jié)臨時(shí)工采購(gòu)合同范本3篇
- 垃圾處理廠工程施工組織設(shè)計(jì)
- 天皰瘡患者護(hù)理
- 2025年蛇年新年金蛇賀歲金蛇狂舞春添彩玉樹(shù)臨風(fēng)福滿門模板
- 《建筑制圖及陰影透視(第2版)》課件 4-直線的投影
- 新生物醫(yī)藥產(chǎn)業(yè)中的人工智能藥物設(shè)計(jì)研究與應(yīng)用
- 防打架毆斗安全教育課件
- 損失補(bǔ)償申請(qǐng)書(shū)范文
- 壓力與浮力的原理解析
- 鐵路損傷圖譜PDF
- 裝修家庭風(fēng)水學(xué)入門基礎(chǔ)
- 移動(dòng)商務(wù)內(nèi)容運(yùn)營(yíng)(吳洪貴)任務(wù)二 社群的種類與維護(hù)
評(píng)論
0/150
提交評(píng)論