《考研资料》《微机原理及应用》习题答案.doc

上传人:周** 文档编号:72594695 上传时间:2023-02-13 格式:DOC 页数:11 大小:117.54KB
返回 下载 相关 举报
《考研资料》《微机原理及应用》习题答案.doc_第1页
第1页 / 共11页
《考研资料》《微机原理及应用》习题答案.doc_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《《考研资料》《微机原理及应用》习题答案.doc》由会员分享,可在线阅读,更多相关《《考研资料》《微机原理及应用》习题答案.doc(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、微机原理及应用习题答案教材:80X86/Pentium微型计算机原理及应用答案第一章计算机基础 1-3(1) 01101110真值110 (2) 10001101真值-13 1-4(1)010111+010111原+010111反+010111补00010111 (2) +101011 +101011原+101011反+101011补00101011(3) 101000 -101000原10101000-101000反11010111-101000补11011000(4) -111111-111111原10111111-111111反11000000 -111111补11000001 1-6

2、(1) x1+y1补=x1补+ y1补=00010100+00100001=00110101(2)x2-y2补=x2补+ -y2补=11101100+00100001=00001101 1-7 (1) 85+60 解:-85补=10101011 60补=00111100 -85补+60补=10101011+00111100=11100111(11100111)补10011001真值 25 CS0,CP=0,CSCP0无溢出 (4)-85-60 -85补=10101011-60补=11000100-85补+-60补=10101011+11000100=101101111CS=1,CP=0 CSC

3、P=1有溢出 1-8 (1) x补+ y补=01001010+01100001=10101011CS=0,CP=1 CSCP=1有溢出 (2) x补- y补=x补+ -y补 =01001010- 01100001=01001010+10101010 =100010110CS=1,CP=1 CSCP=0无溢出 1-9 (1)(127)10=(000100100111)BCD(2)(74)H=(116)10=(000100010110)BCD 1-10 (1) 41H代表 A (2) 72H代表 r (3) 65H代表 e (4) 20H代表 SP1-14 (1) 69.57 (69.57)10=

4、(1000101.100)B=0.1000101100 X 27=0.1000101100 X 2+111浮点规格数为 011101000101 (2)-38.405 (-38.405)10=(-100110.011)B -100110.011= -0.100110011 x 26= - 0.100110011 x 2110 浮点规格数为 011011001100 (3)- 0.3125(-0.3125)10=(-0.0101)2=(-0.101)2 x 2-001浮点规格数为 1111110100001. +0.00834 2. (+0.00834)10=(0.000000100010001

5、)2=(0.100010001)2 x 2-110 3. 浮点规格数为 101001000100 4. 1-15 5. (1) (69.57)10=(1000101.10010001111010111)2 6. =(1.00010110010001111010111)2 x 2110 7. p=6+127=133=(10000101)2 8. 单精度浮点数为01000010100010110010001111010111 9. (2)(-38.405)10=(-100110.011001111010111000)2 10. = - (1.00110011001111010111000)2 x

6、2101 11. p=5+127=132=(10000100)2 12. 单精度浮点数为11000010000110011001111010111000 13. (3) (-0.3125)10=(-0.0101)2=(-1.01)2 x 2-10 14. p=-2+127=125=(1111101)2 15. 单精度浮点数为10111110101000000000000000000000 第二章80X86/Pentium 微处理器 2-3 IO/MDT/RDENRDWR 读存储器0 0 001 写存储器0 1 010 2-17PA=CS x 16+IPIP的范围为0000HFFFFH 而CS为

7、A000H 因此PA的范围即现行代码段可寻址的存储空间范围为A0000HAFFFFH 2-20 1234ABCDH=00010010001101001010101111001101 B PA=SS x 16SP=A0000H+0100H=A0100H 栈顶SP0100H-4=00FCH 11001101A00FCH 10101011 00110100 00010010A0100F 2-21 (1) 1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001 SF=0 ZF=0 AF=1 PF=1 CF=0 OF

8、=0 (2) 54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000 =1 0010 1101 0100 0011 SF=0 ZF=0 AF=1 PF=0 CF=0 OF=0 当进行16位或8位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。 2-29 答:存储慢速设备(存储器或I/O设备)的数据时,必须插入等待周期TW来延长总线周期,插入TW多少取决于CPU完成

9、独立操作所需时间。 第三章80X86/Pentium指令系统 3-5 (1) 源操作数为立即寻址方式;目标操作数为寄存器寻址方式 (2) 源操作数为基址寻址方式;目标操作数为寄存器寻址方式 EA=BX+DISP PA=DS16+BX+DISP (3) 源操作数为寄存器寻址方式;目标操作数为寄存器间接寻址方式 EA=SI PA=DS16+SI (4) 源操作数为基址加变址寻址方式;目标操作数为寄存器寻址方式 EA=BX+SI PA=DS16+BX+SI (5) 源操作数、目标操作数都为寄存器寻址方式 (6) 源操作数为基址寻址方式;目标操作数为寄存器寻址方式 EA=BX+10H PA=DS16+

10、BX+10H (7) 源操作数为寄存器间接寻址方式;目标操作数为寄存器寻址方式 EA=BX PA=ES16+BX (8) 源操作数为带位移量基址加变址寻址方式;目标操作数为寄存器寻址方式 EA=BX+SI+20H PA=DS16+BX+SI+20H (9) 源操作数为寄存器寻址方式;目标操作数为寄存器间接寻址方法 A=BP PA=SS16+BP (10) 源操作数为寄存器寻址方式 3-6 (1) 源操作数为寄存器间接寻址方式 (2) 源操作数为基址加变址寻址方式 (3) 源操作数为基址加比例变址寻址方式 (4) 源操作数为比例变址寻址方式 3-7 (1) 有错。没有两个基址寄存器相加的寻址方式

11、 (2) 有错。两个操作数不能同时为存储器 (3) 有错。立即数不能直接送到段寄存器 (4) 有错。段寄存器CS不能作为目标操作数 (5) 有错。目标操作数不能为立即数 (6) 正确。 (7) 有错。两段寄存器间不能传送数据 (8) 有错。不能直接用“3”表示移3位 (9) 有错。NOT指令中只有一个目标操作数 (10) 正确。 (11) 有错。源操作数不能为立即数 (12) 有错。格式为INAL,I/O端口地址,且100H255,应放在DX中,DX在指令中出现 (13) 有错。源操作数应为存储器操作数 (14) 有错。对16位寻址时,存储器操作数应为SI、DI、BP、BX,不能为CX 3-8

12、 (1) AX=3355H SP=1FFEH (2) AX=3355H DX=4466H SP=1FFEH 3-9 PA=SS16+BP+SI=2F000H+0200H+0046H=2F246H 执行XCHG BX, BP+SI后 BX=4154H 2F246H=6F30H 3-12 (1) PA=DS16+BX+SI+20H=09226HCL=F6H (2) PA=SS16+BP+DI=1E4F6H 1E4F6H=5678H (3) BX=BX+SI+20H=0056H PA=DS16+BX+2=09228H AX=1E40H (4) PA=DS16+BX+DI=09226H SI=00F6

13、H SI=0024H (5) PA=DS16+BX+32H=09226H CX=00F6H 09226=5678H(执行XCHG CX,32HBX后) E再执行XCHG 20BXSI AX后 PA=DS16BX+SI+20H=09226 AX=5678H 09226H=1234H 3-14 (2) MOV CL, 4 ROL BL, CL (4) AND BX, 0F7AFH (6) TEST DX, 0201H 3-16 (2)端口,(580H)=60H (581H)=80H (4)寄存器,AL=4FH AH=(41H) (5)端口,(45H)=60H 3-17 参考程序如下: (1) MO

14、V AX, NUM2 ADD NUM1, AX (2) MOV AL, NUM1 ADD AL, NUM1+1 ADD AL, NUM1+2 ADD AL, NUM1+3 MOV RES, AL (3) MOV AL, NUM1 MOV AH, 0MOV CX, 7 LEA DI, NUM1 MOV DX, 0 NEXT: INC DI MOV DL, DI ADD AX, DXDEC CX JNZ NEXT MOV RES, AX (4) MOV AX, NUM1 ADD AX, NUM2 MOV NUM2, AX MOV AX, NUM1+2 ADC AX, NUM2+2 MOV NUM2

15、+2, AX 3-18 参考程序如下: (1) MOV AL, NUM1 MOV AH, 0 MOV CX, 7 LEA DI, NUM1NEXT: INC DI MOV DL, DI ADD AL, DL DAA MOV DH, AL ;DAA只能对AL中数加以调整,DH为暂存用 MOV AL, AH ADC AL, 0 DAA ;题目中只有8个数相加,所以这里也可以不作调整 MOV AH, AL MOV AL, DH DEC CXJNZ NEXT MOV RES, AX 3-21 (1)009AH (2)0061H (3)8071H (4)10F7H (5)FF1CH 3-22 (1) D

16、X=0006HBX=0004H (2) SP=1FFEHSP=FEH(3) CX=0004HBX=0004H (4) AX=8094HCF=0 (5) AL=87H (6) AL=CCHCF=0AL=32H (7) SI=0009H (8) DI=0009H (9) DI=94H (10)AX=17C6HDX=8094H (11)AH=84HBL=04H (12)IP=17C6H 3-23 (1)将FIRST为首地址的内存单元中的10个字节传送到SECOND为首地址的内存单元。 (2)将0404H到0503H的内存单元清0。 3-25 OF SF ZF PF CF(1) 0 0 0 0 1 (

17、2) 0 0 0 0 无影响 (3) 0 0 0 0 1 (4) 0 1 0 0 1 (5) 0 0 0 0 1 (6) 1 不定 不定 不定 1 (7) 0 0 0 1 0 (8) 0 不定 不定 不定 0 (9) 0 1 0 1 0 (10) 0 0 0 1 0 (11) 0 0 1 1 0 (12) 0 1 0 1 1 (13) 1 0 0 0 1 3-27 (1) IP=1256H (2) IP =3208H (3) IP =2450H 3-28 IP=009AH, CS=2000H, SP=0F178H, SP=8FH, SP+1=3DH SP+2=50H, SP+3=40H 3-2

18、9CMP AL, 01H JZ LAB1 CMP AL, 02H JZ LAB2 CMP AL, 04H JZ LAB3TEST AL, 07H JNZ LAB4 LAB1: LAB2: LAB3: LAB4:1. 汇编语言程序设计 4-2 12 VAR1-12H 0 FFH 0 FFH 0 FFH 0 VAR2 1 2 1 2 0 3 . 重复上面0到3部分内容99次 WVAR3 E L C O M E T O VAR36的VAR4偏移地址 VAR3的偏移 地址 VAR3的段基 地址 4-3 (1)DATA1DB86H, 27H, 23H, 00H, 24H, 1AH (2)DATA2DW0

19、B430H, 1062H 或者 (1)DATA1 LABEL BYTE ARRAY DW 2786H,23H,1A24H (2) DATA2 LABEL WORD ARRAY DB 30H,0B4H,62H,10H 4-5 (1) VAR1的偏移量是30H,VAR2的偏移量是3AH (2) CNT=10H (3) VAR2+2单元的内容为02H 4-6 AAA MACRO PUSH DS SUB AX,AX PUSH AX MOV AX,DATA MOV DS,AX ENDM 4-7 TRAN MACRO X, Y, Z;X, Y为源、目标数据块的首地址,Z为数据块的长度 MOVCX, Z M

20、OVSI, OFFSET X MOVDI, OFFSET Y CLD ;设置方向标志为0 REPMOVSB ENDM 4-8 (1)错 源操作数和目标操作数长度不匹配 (2) 对 (3) 错 两个存储器操作数之间不可直接传送 (4) 错 CS不可作为MOV指令的目标操作数 (5) 对 (6) 错 没有SIDI的寻址方式 (7) 错 BX-SI不是正确的寻址方式 (8) 错 操作数没指明类型 (9) 错 立即数不可作为MOV指令的目标操作数 (10) 错 8-BX不是正确的寻址方式 4-9 MOV BX, OFFSET ARRAY ;将ARRAY的偏移地址传给BX MOV CX, LENGTH

21、ARRAY ;将ARRAY用DUP重复定义的数据项总数传给CX MOV SI, 0 ;将0传给SI ADD SI, TYPE ARRAY ;将SI的内容与ARRAY的类型值相加,返回给SI指令执行后 BX:数组ARRAY的首地址 CX=100 SI=2 4-10MOV AX, WORD PTRX ADDAX, WORD PTRY MOV WORD PTR Z, AX MOVAX, WORD PTRX+2 ADC AX, WORD PTRY+2 MOV WORD PTR Z+2,AX 4-12 (1) DATA SEGMENT DATAENDS CODESEGMENT MOV AH, 01H;

22、从键盘输入一个字符,其ASC码值在AL中 INT 21H CMP AL, 41H JZ P0 CMP AL, 42H JZ P1 CMPAL, 4AH JZ P9 JMP EXIT P1: RET P2: RET P9: RET EXIT:MOVAH, 4CH INT21H. (2) DATA SEGMENT BASEDWP0, P1, ,P9 DATAENDS CODESEGMENT MOV AH, 01H; 从键盘输入一个字符,其ASC码值在AL中 INT 21HCMPAL, A; 判别字符是否位于A到J之间JBEXITCMP AL, JJAEXIT SUBAL, A ;在正确范围之内,根

23、据表内地址分支 MOVBL, ALMOV BH, 0SHLBX, 1JMPBASEBX P1: RET P2: RET P9: RET EXIT:MOVAH, 4CH INT21H . 4-14 LEA BX, x LEA SI, y LEA DI, sum ADD BX, 7ADD SI, 7 ADD DI, 8 ;和可能要9个字节 MOV CX, 8 LOP: MOV AL, BX ADC AL, SI DAA MOV DI, AL DEC BX DEC SI DEC DI DEC CX JNZ LOP MOV AL, 0 ADC AL, 0 MOV DI, AL 4-15 MOV SI,

24、 OFFSET FIRST MOV CX, 0 ;CX中存放A的个数 LOOP: MOV AL, SI CMP AL, $ JZ NEXTCMP AL, A JNE LP INC CX LP: INC SI JMP LOOP NEXT: 4-16 MOV BX, 0 MOV CX, 16 NEXT: RCL AX, 1 JC P1 INC BH JMP OK P1: INC BL OK: LOOP NEXT MOV CX, BX 4-17 DATA SEGMENT DATA_W DW ;若干个数 COUT EQU ($-DATA_W)/2 COUT1 DB 0 COUT2 DB 0 COUT3

25、 DB 0 DATA ENDS STACK SEGMENT PARA STACK STACK DB 100 DUP(0) STACK ENDS CODE SEGMENT ASSAUM CS:CODE,DS:DATA START PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX MOV DX, 0 ;正数、负数、0暂时分别存在BL、BH、DL中 MOV BX, 0LEA SI, DATA_W MOV CX, COUT NEXT: MOV AX, SI CMP AX, 0 JG LP1 JL LP2 INC DL JMP OK L

26、P1: INC BL JMP OK LP2: INC BH OK: ADD SI, 2LOOP NEXT RET START ENDP CODE ENDS END START 4-18 DATA SEGMENT ARRAY DW ;若干个数 COUT EQU $-ARRAY MAX DB MIN DB DATA ENDSSTACK SEGMENT PARA STACK STACK DB 100 DUP(0) STACK ENDS CODE SEGMENT ASSAUM CS:CODE,DS:DATA START PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX

27、, DATA MOV DS, AX LEA BX, ARRAY MOV CX, COUT MOV AH, BX MOV AL, BX DEC CX INC BX LOP: CMP AH, BX JA NEXT1 MOV AH, BX JMP NEXT2 NEXT1: CMP AL, BX JB NEXT2 MOV AL, BX NEXT2: INC BX LOOP LOP MOV MAX AH MOV MIN AL RET START ENDP CODE ENDS END START 4-22 LEA BX, STRING MOV CX, 80 NEXT: CMP BX, 20H JZ OK

28、INC BX LOOP NEXT MOV CL, -1 JMP FIN OK: NEG CX ADD CX, 80 FIN: 4-24 (1) LEA SI,STRING1 LEA DI,STRING2MOV CX,20 CLD REP MOVSB (2) LEA SI,STRING1 LEA DI,STRING2 ADD SI,19 ADD DI,19 MOV CX,20 STD REP MOVSB (3) MOV AL,20H LEA DI, STRING1 MOV CX,20 CLD REPNZ SCASB JZ FOUND MOV DL,0 ;未找到 JMP EXIT FOUND:DE

29、CDI MOV BX,DI MOV DL,01H ;找到 EXIT: (4) LEA SI,STRING1 LEA DI,STRING2 MOV CX,20 CLD REP CMPSB JNZ NEQ MOV BL,0 ;相同 JMP EXIT NEQ: MOV BL,01H ;不相同 EXIT: 4-25 ; MODULE_1 EXTRN VAR3: DWORD PUBLIC VAR1, LABEL_1 ; MODULE_2 EXTRN VAR1: WORD, LABEL_1: FAR, LABEL_3: FAR PUBLIC VAR3, LABEL_2; MODULE_3 EXTRN VA

30、R1: WORD, LABEL_1: FAR, LABEL_2: FAR PUBLIC LABEL_3 4-26 ;模块1,文件名MAIN.ASM EXTRNDISPLAY: FAR ;引用外部符号 PUBLIC MESG ;定义外部符号 DATA1 SEGMENT MESG DB ASSEMBLER$ DATA1 ENDS CODE1 SEGMENT ASSUME CS: CODE1, DS: DATA1 MAIN: MOV AX, DATA1 MOV DS, AX ;装入段基址 PUSHDS CALL DISPLAY MV AH, 4CH INT 21H CODE1 ENDS END MA

31、IN ;模块2,文件名 DISPLAY.ASM EXTRNMESG PUBLIC DISPLAY ;定义外部符号 DATA2 SEGMENT DB 100UP() DATA2 ENDS CODE2 SEGMENT ASSUME CS: CODE2, DS: DATA2 DISPLAY PROC FAR MOV AX, DATA2 MOV DS, AX ;装入段基址 MOV DX, OFFSET MESG MOV AH, 9 ;屏幕显示 INT 21H RET DISPLAY ENDP CODE2 ENDS 4-27 STACK SEGMENT PARA STACK STACK DB 100 D

32、UP (0) STACK ENDS CODE SEGMENT ASSAUM CS: CODE START PROC FAR PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX MOV CX, 4 MOV DX, 0. MOV BL, 2 LOP1: MOV AH, 1 INT 21H CMP AL, 46H JA EXIT ;字符ASCII码不在09,AF之间 CMP AL, 40H JA LOP2 CMP AL, 39H JA EXIT ;字符ASCII码不在09,AF之间 CMP AL, 30H JB EXIT ;字符ASCII码不在09,A

33、F之间 SUB AL, 30H JMP NEXT LOP2: SUB AL, 37H NEXT: OR DL, AL MOV AL, CL MOV CL, 4 ROL DX, CL MOV CL, AL LOOP LOP1 EXIT: RET START ENDP CODE ENDS END START 1. 半导体存储器 5-4 1K X 8 : 末地址=1000H+3FFH=13FFH 2K X 8 : 末地址=1000H+7FFH=17FFH 4K X 8 : 末地址=1000H+FFFH=1FFFH 8K X 8 : 末地址=1000H+1FFFH=2FFFH 5-5所占地址空间为:2

34、0000H27FFFH 5-6 1#8000H87FFH 2#8800H8FFFH 3#9000H97FFH 4#A000HA3FFH 5#A400HA7FFH 6#A800HABFFH 7#AC00HAFFFH 5-7 111. 输入/输出和中断技术 6-4IN AL, PORT_T CMP AL, 0FEH;k0单独被按下,即最低位为0,其余位为高 JZ NEXT1 CMP AL, 0FDHJZ NEXT2 MOV AL, 00H ;其他的情况,将灯全部不点亮 OUT PORT_T, ALJMP EXITNEXT1: MOV AL, 01H ;K0被按下,LED0LED7顺次点亮,送1则对

35、应的灯亮 MOV CX, 8 LOOP1: OUT PORT_T, AL CALL DELAY ROLAL, 1 LOOP LOOP1 JMP EXIT NEXT2: MOV AL, 80H ;K1被按下,LED0LED7反序点亮,送1则对应的灯亮 MOV CX, 8 LOOP2: OUT PORT_T, AL CALL DELAY ROR AL, 1 LOOP LOOP2 EXIT:.1. 解: MOV BX, OFFSET STRING WAIT:IN AL, STATUS AND AL, 80H JNZWAIT MOVAL, BX OUTDATAS,AL CMPAL,0DH JZ END

36、 INCBX JMPWAIT END: 1. 解: MOVCX, 100 MOVBX, OFFSET DATABUF IN-TEST:IN AL, STATUS TEST AL, 80H JZ ,IN-TEST IN AL,DATAS MOVBX,AL INCBX LOOP IN-TEST 6-13 执行INT 8后CPU将PSW, IP, CS压入堆栈,堆栈的情况如下图: A2H 00H 00H 09H 40H 02H SP00FAH 00FBH 00FCH 00FDH 00FEH 00FFH SP=00FAH, SS=0300H, IP=0040H, CS=0100H 因为IF,.TF进入

37、中断后自动为零,所以PSW=0040H. 6-15 IRR中断请求寄存器用来寄存所有要求服务的中断请求 IMR中断屏蔽寄存器用来存放须屏蔽的中断请求 ISR中断服务寄存器用来寄存所有正在被服务的中断请求 6-16 IRQ3申请中断, IRQ3正在被服务, 20H,05H 6-18 CLI MOV DX, FFDCH MOV AL, 00010011B ;ICW1 OUT DX, AL MOV DX, FFDDH MOV AL, 90H;ICW2 OUT DX, AL MOV AL, 00000001B;ICW4 OUT DX, AL STI 6-21 RRREGDBSRREG DBIMREG

38、DB MOV AL, 00001010B;读IRR OUT 20H, AL IN AL, 20H MOV RRREG, AL MOV AL, 00001011B;读ISR OUT 20H, AL IN AL, 20H MOV SRREG, AL IN AL, 21H ;读IMR MOV IMREG, AL第七章 习题解答 7-1 MOV AL, 00110111B OUT 83H, AL MOV AL, 0DH OUT 80H, AL MOV AL, 07H OUT 80H, AL 7-2见习题课内容(电子教案) 7-5 见习题课内容(电子教案) 7-6见习题课内容(电子教案) 7-7、79见习题课内容(电子教案)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 成人自考

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁