微机原理开卷考试题.docVIP

  • 24
  • 0
  • 约 8页
  • 2017-02-09 发布于河南
  • 举报
微机原理开卷考试题

2. 已知:DS=1000H, BX=0200H, SI=02H, 内存10200H~10205H单元的内容分别为10H, 2AH, 3CH, 46H, 59H, 6BH。下列每条指令执行完后AX寄存器的内容各是什么? AX 内容 (1)MOV AX, 0200H (AX)=0200H (2) MOV AX, [200H] (AX)=10H (3) MOV AX, BX (AX)=0200H (4) MOV AX, 3[BX] (AX)=46H (5) MOV AX, [BX+SI] (AX)=3CH (6) MOV AX, 2[BX+SI] (AX)=59H 6.指出下列指令中哪些是错误的,错在什么地方 (3)MOV DS, 0200H 错误,不能用立即数直接给段寄存器赋值。 (8)MOV AL, ES:[BP] 正确。。 (11) MOV AL, OFFSET TABLE 错误,操作数类型不匹配。 (13)IN BL, 05H 错误,IN指令的源操作数必须是累加器 13.编程将AX寄存器中的内容以相反的次序传送到DX寄存器中,并要求AX中的内容不被破坏,然后统计DX寄存器中1的个数是多少。 解:将AX的内容用ROR循环右移,其最低位移入CF中,再使用RCL循环左移将CF中的值移入DX中。并且,如果CF的值为1,则将BL加1。 MOV CX, 16 MOV BL, 00H ; LP1: ROR AX, 1 JNC AA INC BL AA: RCL DX LOOP LP1 HLT 15.如在下列程序段的括号中分别填入以下指令: (1)LOOP NEXT (2) LOOPE NEXT (3) LOOPNE NEXT 试说明在这三种情况下,程序段执行完后,AX, BX, CX, DX寄存器的内容分别是什么 START: MOV AX, 01H MOV BX, 02H MOV DX, 03H MOV CX, 04H NEXT: INC AX ADD BX, AX SHR DX, 1 ( ) 解: LOOP过程: AX BX CX DX 初始值 01H 02H 04H 03 H 循环1次 02H 04H 03H 01H 循环2次 03H 07H 02H 00H 循环3次 04H 0BH 01H 00H 循环4次 05H 10H 00H 00H 结果: AX BX CX DX (1) 05H 10H 00H 00H (2) 02H 04H 03H 01H 执行一次,ZF=0,退出循环。 (3) 03H 07H 02H 00H 执行两次,ZF=1,退出循环。 1. 试分析下列程序段: ADD AX,BX JNC L2 SUB AX,BX JNC L3 JMP SHORT L5 L2:… … L3:… … L5:… … 如果AX、BX的内容给定如下: AX BX (2)B568H 54B7H (2)转向L5 因为(AX)+(BX)= 0A1FH,有进位。然后(AX)-(BX)有进位。 2. 编写程序,使用三种以上的方法,将存储器中DS:2000H开始的地址单元中的100字节数据复制到ES:3000H开始的存储器地址单元中。 解: DATA SEGMENT ORG 2000H D1 DB 100 DUP(?) DATA ENDS EXTRA SEGMENT ORG 3000H D2 DB 100 DUP(0) EXTRA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:EXTRA START: MOV AX, DATA MOV DS, AX MOV AX, EXTRA MOV ES, AX LEA SI, D1 LEA DI, ES:D2 MOV CX, 100 ;L1: MOV AL, [SI]

文档评论(0)

1亿VIP精品文档

相关文档