微機(jī)原理答案_第1頁(yè)
微機(jī)原理答案_第2頁(yè)
微機(jī)原理答案_第3頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第3章8086/8088 指令系統(tǒng)與尋址方式習(xí)題3 3 8086 系統(tǒng)中,設(shè) DS=1000H, ES=2000H,SS=1200H,BX=0300H,SI=0200H, BP=0100H VAR的偏移量為0600H,請(qǐng)指出下列指令的目標(biāo)操作數(shù)的尋址方式,若目標(biāo)操作 數(shù)為存儲(chǔ)器操作數(shù),計(jì)算它們的物理地址。1) MOV BX,12;目標(biāo)操作數(shù)為寄存器尋址2)MOVBX ,12;目標(biāo)操作數(shù)為寄存器間址PA=10300H3)MOVES: SI, AX;目標(biāo)操作數(shù)為寄存器間址PA=20200H4)MOVVAR , 8;目標(biāo)操作數(shù)為存儲(chǔ)器直接尋址PA=10600H5)MOVBXSI, AX;目標(biāo)操作數(shù)為

2、基址加變址尋址PA=10500H6)MOV6BPSI, AL;目標(biāo)操作數(shù)為相對(duì)的基址加變址尋址PA=12306H7)MOV1000H, DX;目標(biāo)操作數(shù)為存儲(chǔ)器直接尋址PA=11000H8)MOV6BX ,CX;目標(biāo)操作數(shù)為寄存器相對(duì)尋址PA=10306H9)MOVVAR+5 ,AX;目標(biāo)操作數(shù)為存儲(chǔ)器直接尋址PA=10605H34 下面這些指令中哪些是正確的?那些是錯(cuò)誤的?如果是錯(cuò)誤的,請(qǐng)說(shuō)明原因。1)XCHGCS , AX;錯(cuò),CS不能參與交換2)MOVBX, 1000;錯(cuò),存儲(chǔ)器之不能交換3)XCHGBX ,IP;錯(cuò),IP 不能參與交換4)PUSHCS5)POPCS;錯(cuò),不能將數(shù)據(jù)彈到

3、CS中6) IN BX , DX;輸入 / 輸出只能通過(guò) AL/AX7) MOV BYTEBX , 1000 ;1000大于 255,不能裝入字節(jié)單元(8) MOV CS,1000; CS不能作為目標(biāo)寄存器(9) MOV BX,OFFSET VARSI ; OFFSET只能取變量的偏移地址10) MOV AX, SIDI; SI 、DI 不能成為基址加變址(11) MOV COUNTBXSI,ES: AX ; AX是寄存器,不能加段前綴3. 7 設(shè)當(dāng)前SS=2010H, SP=FE00H BX=3457H計(jì)算當(dāng)前棧頂?shù)牡刂窞槎嗌???dāng)執(zhí)行PUSH BX 指令后,棧頂?shù)刂泛蜅m?2 個(gè)字節(jié)的內(nèi)容分

4、別是什么?當(dāng)前棧頂?shù)牡刂?=2FF00H當(dāng)執(zhí)行 PUSH BX 指令后,棧頂?shù)刂?=2FEFEH( 2FEFEH) =57H( 2FEFFH) =34H3. 8設(shè) DX=78C5H, CL=5,CF=1,確定下列各條指令執(zhí)行后,DX和CF中的值。(1)SHRDX , 1;DX=3C62HCF=1(2)SARDX , CL;DX=03C6HCF=0(3)SHLDX , CL;DX=18A0HCF=1(4)RORDX , CL;DX=2BC6HCF=0(5)RCLDX , CL;DX=18B7HCF=1(6)RCRDH , 1;DX=BCC5HCF=0;3.9 設(shè)AX=0A69H VALUE字變量

5、中存放的內(nèi)容為1927H,寫出下列各條指令執(zhí)行后寄存器和CF ZF、OF SF、PF 的值。AX CFZF OFSFPF(1)XORAX ,VALUE ;134EH00001(2)ANDAX ,VALUE ;0821H00001(3)SUBAX ,VALUE ;F142H10011(4)CMPAX,VALUE ;0A69H10011(5)NOTAX;F596HXXXXX(6)TESTAX,VALUE ;0A69H000013. 10設(shè)AX和BX中是符號(hào)數(shù),CX和DX是無(wú)符號(hào)數(shù),請(qǐng)分別為下列各項(xiàng)確定CMP和條件轉(zhuǎn)移指令。(1)CX值超過(guò)DX轉(zhuǎn)移。(2)AX未超過(guò)BX轉(zhuǎn)移。(3)DX為0轉(zhuǎn)移。(4

6、)CX值等于小于DX轉(zhuǎn)移。(1)CMPCX ,DXJANEXT(2)CMPAX ,BXJLE NEXT(3)CMPDX ,0JZNEXT(4)CMPCX ,DXJBIE NE:XT3. 11閱11閱讀分析下列指令序列:ADDAX ,BXJNOL1JNCL2SUBAX ,BXJNCL3JNOL4JMPL5若AX和BX的初值分別為以下 5種情況,則執(zhí)行該指令序列后,程序?qū)⒎謩e轉(zhuǎn)向何處(L1L5中的一個(gè))。(1)AX=13C6HBX=80DCH(2)AX=0B568HBX=54B7H(3)AX=42C8HBX=608DH(4)AX=0D023HBX=9FD0H(5)AX=9FD0HBX=0D023H

7、(1)轉(zhuǎn)L1(2)轉(zhuǎn)L1(3)轉(zhuǎn)L2(4)轉(zhuǎn)L5(5)轉(zhuǎn)L5第四章匯編語(yǔ)言程序設(shè)計(jì)習(xí)題4. 5畫出下列語(yǔ)句中的數(shù)據(jù)在存儲(chǔ)器中的存儲(chǔ)情況。VARBVARWVARCDB 34 , 34H , ' GOOD 2 DUP (1 , 2 DUP ( 0)DW 5678H , ' CD , $+2 , 2 DUP (100)EQU 1210010078H56H DC12H00H64H0064HVARBVARW4. 6按下列要求,寫出各數(shù)據(jù)定義語(yǔ)句。(1) DB1為10H個(gè)重復(fù)的字節(jié)數(shù)據(jù)序列:1, 2, 5個(gè)3, 4。(2) DB2為字符串STUDENT'(3) DB3為十六進(jìn)制數(shù)序

8、列:12H, ABCDH(4) 用等值語(yǔ)句給符號(hào) COUNTS以DB1數(shù)據(jù)區(qū)所占字節(jié)數(shù),該語(yǔ)句寫在最后。DB1DB2DB 16 DUP ( 1,2,5 DUP( 3,4)DB 'STUDENTSDB3DW 12H , 0ABCDHCOUNT EQU DB2 DB14. 8對(duì)于下面的數(shù)據(jù)定義,各條 MOV旨令單獨(dú)執(zhí)行后,有關(guān)寄存器的內(nèi)容是什么?PREPDB?TABADW5 DUP (?)TABBDB'NEXTTABCDD12345678H(1)MOV AX,TYPE PREP;AX=1MOVAXTYPE TABA;AX=2(3)MOVAXLENGTH TABA;AX=5MOVAX

9、SIZE TABA?AX=10(5)MOVAXLENGTH TABB;AX=1MOVDXSIZE TABC;AX=44 . 10若自STRING單元開始存放有一個(gè)字符串(以字符$'結(jié)束);(1) 編程統(tǒng)計(jì)該字符串長(zhǎng)度(不包含$字符,并假設(shè)長(zhǎng)度為兩字節(jié))(2) 把字符串長(zhǎng)度放在 STRING單元,把整個(gè)字符串往下移兩個(gè)單元。程序段為:1)MOVSI , OFFSETSTRINGXOR BX,BXCON:TMOV AL,SICMP AL, $'JZNEXTINCBXINCSIJMPCONTNEXT:MOVAH, 4CHINT21H2)STRING DB($COUNT EQU $-S

10、TRINGMOVSI , OFFSET STRINGMOVCX, COUNTADDSI, CXCONT: DEC SIMOVAL, SIMOVSI+2, ALLOOPCONTMOVCX, COUNTMOVSTRING, CXMOV AH , 4CHINT 21H4. 11 將字符串 STRING中的&' 字符用空格代替,字符串STRING"The data isFEB&03”。程序?yàn)椋篋ATA SEGMENTSTRING DB The data is FEB&03 'COUNT EQU $-STRINGDATAENDSCODESEGMENTAS

11、SUME CS:CODE, DS: DATASTART:MOVAX ,DATAMOVDS,AXMOVSI ,OFFSET STRINGMOVCX,COUNTMOVAL , $'CONT:CMPAL ,SIJNZNEXTMOVBYTE PTRSI , 'NEXT:INCSILOOPCONTMOVAH, 4CHINT 21HCODE ENDSEND START4. 16 鍵盤輸入十個(gè)學(xué)生的成績(jī),試編制一個(gè)程序統(tǒng)計(jì) 6969 分, 7079 分, 8089 分,9099分及100分的人數(shù),分別存放到S6, S7, S8, S9及S10單元中。程序?yàn)椋篋ATA SEGMENTBUF56

12、575859S10DATACODEDB10 DUP(?)DB?DB?DB?DB?DB?ENDSSEGMENTASSUME CS: COD,E DS:DATASTART:MOV AX, DATAMOV DS, AXMOVSI , OFFSET S6XOR AL, ALMOV CX, 0504HCONT :MOV SI , ALINCSILOOP CONTMOV CX, 10MOV SI, OFFSET BUFCONT1 :MOV AH, 1INT 21HSHLAL, CLMOV BL, ALMOV AH, 1INT 21HSUBAL, 30HOR AL, BLMOV SI , ALCMP AL,

13、 70HJAENEXT1INCBYTE PTR S6NEXT1 :CMP AL, 80HJAENEXT2INCBYTE PTR S7NEXT2 :CMP AL, 90HJAE NEXT3INCBYTE PTR S8NEXT3 :CMP AL, 99HJANEXT4INCBYTE PTR S9JMP NEXT5NEXT4 ;NEXT5 :INCBYTE PTR S10INCSILOOP CONT1MOV AH, 4CHINT 21HCODEENDSEND START第 7 章 基本輸入 / 輸出接口習(xí)題7. 4 現(xiàn)有一輸入設(shè)備,其數(shù)據(jù)端口地址為FFEOH狀態(tài)端口地址為FFE2H當(dāng)其 DO為 1

14、時(shí)表明輸入數(shù)據(jù)準(zhǔn)備好。 試采用查詢方式, 編程實(shí)現(xiàn)從該設(shè)備讀取 100 個(gè)字節(jié)數(shù)據(jù)并保 存到2000H: 2000H開始的內(nèi)存中。程序段為:MOVAX, 2OOOHMOVDS, AXMOV SI , 2OOOHMOVCX, 1OOCONT:MOV DX,OFFE2HCONT:1IN AL ,DXTESTAL, O1JZCONT1MOVDX, OFFEOHINAL, DXMOVSI , ALINCSILOOPCONTMOVAH , 4CHINT21H7 . 5硬件如圖7. 5所示,試編程實(shí)現(xiàn):SO控制8個(gè)發(fā)光二極管1亮7暗,S1控制8 個(gè) 8 個(gè)發(fā)光二極管 7 亮 1 暗, S2 控制某一亮點(diǎn)(

15、或暗點(diǎn))以一定時(shí)間間隔循環(huán)向左移動(dòng), S3 控制某一亮點(diǎn)(或暗點(diǎn))以一定時(shí)間間隔循環(huán)向右移動(dòng),兩個(gè)或兩個(gè)以上開關(guān)閉合,則 結(jié)束程序。程序段為: (省略偽指令)BUF1DBO1HBUF2DB8OHMOV DX,2OOHAGAIN:INAL, DXXOR BL , BLMOV CX,8CONT:ROR AL,1JNCNEXTINCBLNEXT:LOOP CONTCMP BL,2JAEEXITCMP AL, OFEHJZ1L7ACMPAL , OFDJZ1A7LCMP AL,OFBHJZZSHLCMP AL,OF7HJZYSHR1L7A: MOVAL , 80HOUT DXALJMPAGAIN7A7

16、L: MOV AL,7FOUT DXALJMPAGAINZSHL: MOVAL , BUF1ROL AL, 1MOV BUF1 ALOUT DX ALCALLD500MSJMPAGAINYSHR MOVAL , BUF2ROR AL 1MOV BUF1 ALOUT DX ALCALLD500MSJMPAGAINEXIT : MOV AH,4CHINT21H第8章中斷習(xí)題8 . 2 已知中斷向量表表中地址 0020H 0023H的單元中依次是 40H , OOH, 00H, 0伯, 并知INT 08H指令本身所在的地址為 9000H: 00A0H=若SP=0100H SS=0300H標(biāo)志寄存器

17、內(nèi)容為0240H,試指出在執(zhí)行INT 08H指令,剛進(jìn)入它的中斷服務(wù)程序時(shí),SP, SS, IP,CS和堆棧頂上三個(gè)字的內(nèi)容(用圖表示) 。執(zhí)行后 SS=0300H SP=00FAHCS=0100H IP=0040H,堆棧頂上三個(gè)字的內(nèi)容如下所示:00FAH00FCH執(zhí)行后:0300H: 00FEH初始:0300H : 01000H8. 3 某一用戶中斷源的中斷類型號(hào)為INTR40,請(qǐng)用兩種不同的方法設(shè)置它的中斷向量。方法一:MOV AX , 0MOV DS AXMOV AX OFFSET INTR40MOV 00C0H , AXMOV AX SEG INTR40MOV 00C2H , AX4

18、0H ,其中斷服務(wù)程序名為方法二:MOV AX, 0MOV ES, AXMOV DI, 40H*4CLDMOV AX,OFFSET INTR40STOSWMOV AX,SEG INTR40STOSW8 5 某一 8086CPU 系統(tǒng)中, 采用一片 8259A 進(jìn)行中斷管理。 設(shè) 8259A 工作在全嵌套方 式,發(fā)送EIO命令結(jié)束中斷,邊沿觸發(fā)方式,IRO對(duì)應(yīng)的中斷向量號(hào)為 90H, 8259A在系統(tǒng)中的端口地址為 FFDCH( A0=0)和FFDDH( A0=1),試編寫8259A的初始化程序段。初試化程序段為:MOV DX , 0FFDCHMOV AL, 13H OUT DX, ALINCD

19、XINCDXMOV AL, 90HOUT DX, ALMOV AL, 01OUT DX, AL第9章可編程接口芯片及應(yīng)用習(xí)題9 1 試按如下要求分別編寫初始化程序,已知計(jì)數(shù)器 0 2 和控制字寄存器的端口地址依次為 204H 207H 。( 1)使計(jì)數(shù)器 1 工作在方式 0,僅用 8 位二進(jìn)制計(jì)數(shù),計(jì)數(shù)初值為 128。(2) 使計(jì)數(shù)器0工作在方式1,按BCD碼計(jì)數(shù),計(jì)數(shù)值為 3000。( 3)使計(jì)數(shù)器 2 工作在方式 2,按二進(jìn)制計(jì)數(shù),計(jì)數(shù)值為02F0H。初始化程序?yàn)椋篗OV DX, 207HMOV AL, 50HOUT DX, ALMOV DX, 205HMOV AL, 80HOUT DX,

20、 ALMOV DX, 207HMOV AL, 23HOUT DX, ALMOV DX, 204HMOV AL, 30HOUT DX, ALMOV DX, 207HMOV AL, 0B4HOUT DX, ALMOV DX, 206HMOV AL OFOHOUT DX ALMOV AL 02OUT DX AL9 . 2硬件如題9. 2圖,利用PC內(nèi)部8253定時(shí)器0 ,并用中斷方式實(shí)現(xiàn)每隔 1s使發(fā) 光二極管亮暗交替顯示。(PC內(nèi)部8253輸入時(shí)鐘頻率為1 . 1932MHz 8253定時(shí)器0端口地 址為40H,控制寄存器端口地址為 43H。Y0為350H)。定時(shí)器計(jì)數(shù)值=1. 1932MH芳 5

21、=32864=83D5H軟件計(jì)數(shù)值:50程序?yàn)椋海ㄓ布D見(jiàn)教材 P345題9. 2圖)MOV AL , 34HOUT43H ALMOV AL 0D5HOUT40H ALMOV AL 83HOUT40H ALMOV BL 50T0中斷服務(wù)程序?yàn)椋篋EC BLJNZ EXIT1MOV BL 50MOV AL BUFNOT ALMOVBUF ALMOV DX 350HOUT DX ALEXIT1 : MOV AL , 20HOUT 20H AL;(設(shè) 8259A 的端口地址為 20H, 21H)IRET9. 3硬件如題9 . 3圖,8253采用方式0 , BCD碼計(jì)數(shù)方式,初始值為 1000 ,每按

22、一 次按鈕S,計(jì)數(shù)器值減1。試編程實(shí)現(xiàn)顯示 8253當(dāng)前計(jì)數(shù)值,直至計(jì)數(shù)值為 0。8253端口地 址范圍為 80H 83H 。(略。在何處顯示-屏幕/LED/液晶?)9. 4圖9. 4為一簡(jiǎn)化的鍵盤/數(shù)碼管顯示接口電路,假設(shè)端口線a' h '及1、2腳送“1”電平,可使顯示點(diǎn)亮并能實(shí)現(xiàn)掃描,試問(wèn)U1、U2及數(shù)碼顯示器的選用。(1) U1為 (同相驅(qū)動(dòng)器 / 反相驅(qū)動(dòng)器)。(2) U2為 (同相驅(qū)動(dòng)器 / 反相驅(qū)動(dòng)器)。(3) 數(shù)碼顯示器為 (共陰/共陽(yáng))數(shù)碼管。(4)若A鍵閉合,則端口線 3, 4的電平為 。圖9.4見(jiàn)教材P346(1)選用同相驅(qū)動(dòng)器(2)選用反相驅(qū)動(dòng)器(3)選

23、用共陰數(shù)碼管(4)若A鍵閉合,則端口線 3, 4的電平為0, 19. 5硬件如題9 . 5圖,試編程實(shí)現(xiàn)循環(huán)檢測(cè)SO、S1,當(dāng)SO按下,數(shù)碼管顯示 0,當(dāng) S1 按下, 數(shù)碼管顯示 1, S0、S1 同時(shí)按下, 則結(jié)束程序。 8255的端口地址范圍為 80H83H。程序?yàn)椋篗OV AL, 82HOUT 83H, ALAGAIN:INAL, 81HTESTAL, O3JZEXITTESTAL, O1JZNEXTMOVAL, 3FHOUT 8OH, ALJMPAGAINNEXT: TEST AL , O2 JZNEXT1MOV AL,O6OUT 8OH, AL JMPAGAINNEXT1: MOV

24、 AL, OOOUT 8OH, AL JMP AGAINEXIT: MOV AH, 4CHINT 21H第 1O 章 串行通信習(xí)題1O 6 設(shè)異步傳輸時(shí),每個(gè)字符對(duì)應(yīng)一個(gè)起始位, 7 個(gè)信息位, 1 個(gè)奇偶校驗(yàn)位和一個(gè) 停止位,如果波特率為 9600,每秒能傳輸?shù)淖畲笞址麛?shù)為多少個(gè)?字符數(shù)=9600位/ 秒十10位/字符=960 (字符/ 秒)10. 13要求8251A工作于異步方式,波特率系數(shù)為16,字符長(zhǎng)度為7位,奇校驗(yàn),2個(gè)停止位。工作狀態(tài)要求:復(fù)位出錯(cuò)標(biāo)志,使請(qǐng)求發(fā)送信號(hào)RTS有效,使數(shù)據(jù)終端準(zhǔn)備好信號(hào)DTR有效,發(fā)送允許TxEN有效,接受允許RxE有效。設(shè)8251A的兩個(gè)端口地址分別為 0C0H 和0C2H試完成初始化編程。初始化程序?yàn)椋篗OV AL, 11011010B( DAH)OUT 0C2H, ALMOV

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論