(1) MOV AX,[1200H];AX=( 4 ) (2) MOV AX,[BX] ;AX=( 5 ) (3) MOV AX,1100[BX] ;AX=( 6 ) (4) MOV AX,[BX][SI] ;AX=( 7 ) (5) MOV AX,1100[BX][SI] ;AX=( 8 ) 5、指示性语句的格式为( 9)。
6、 执行下列程序(AL)=(10)H。
DATA SEGMENT
TAB-DA DB ‘0123456789’ DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA MOV DS,AX
MOV BX,OFSET TAB-DA
MOV AL,04 XLAT TAB-DA 7、 对于下面的数据定义:
A1 DW 20 DUP(?) A2 DB 20 DUP(?) A3 DB‘98765432l’ MOV AX,LENGTH A1 MOV BX,LENGTH A2 MOV CX,LENGTH A3
各条指令执行后,相应寄存器的内容为: AX=( 11 ),BX=( 12 8、 分析以下程序段: SUB AX,BX JNC L3 JNO L4 JMP SHORT
如果AX和BX的内容给定如下: AX BX (1)147B 80DC (2)D023 9FD0 (3)94B7 B568
该程序执行后,程序转向( 14 );(15 );(16 )。
9、执行下列程序段,
MOV SP,2000H MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI
,CX=(13 )
) SHL DX,1 TEST AX,DX PUSH DX
SP=(17);
10、执行下列程序段:
MOV SP,2000H MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX
DH内容所在内存的偏移地址为(18 );
11、有下列数据定义语句: DATA SEGMENT ADDR DW NUMBER NUMBER DB 10
ARRAY DB 5 DUP(0)
TABLE DD RT1,RT2 ;(RT1,RT2是标号) DATA ENDS
则变量ADDR中存储的内容是(19),变量TABLE占用(20)个字节 12、根据下面的指令序列,CX寄存器中的值应该是( 21 )。
SHR1 DW 'AB' SHR2 DB 16 DUP(?) CNT EQU $-STR1 MOV CX,CNT 13、执行下列指令后: MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX
寄存器AH的值是(22),寄存器AL的值是(23).
14、对于下面的数据定义,指令执行后,AX=(24)、BX=(25)、CX=(26)、DX=(27)、SI=
(28)
TABLE1 DB ?
TABLE2 DW 20 DUP(?) TABLE3 DB‘ABCD’
MOV AX,TYPE TABLE1 MOV BX,TYPE TABLE2 MOV CX,LENGTH TABLE2 MOV DX,SIZE TABLE2 MOV SI,LENGTH TABLE3
15、执行下列程序: MOV AX,0 MOV BX,1 MOV CX,100 A:ADD AX,BX INC BX LOOP A HLT
执行后的结果为(BX)=(29),(AX)=(30)。
16、 若定义VAR DB 2 DUP(1,2,2 DUP(3),2 DUP(1)),则在VAL存储区内前5个单元的数据是( 31 )。
17、完成输出显示一个字符的DOS int 21h系统功能调用是( 32)号。
18、执行返回指令,退出中断服务程序,这时返回地址来自(33 )
19、 已知:(AX)=0202H、(ES)=2000H、(BX)=3000H、(SI)=2060H、(25060H)=00B0H,执行指令XCHG AX,ES:[BX+SI],则AX=(34),(25060H)=(35)
20、下列程序段执行后,寄存器AX=(36),BX=(37)和CX=(38)的内容分别是多少? ORG 0202H
DA_WORD DW 20H MOV AX,DA_WORD
MOV BX,OFFSET DA_WORD MOV CL,BYTE PTR DA_WORD MOV CH,TYPE DA_WORD
21、假设数据段的定义如下: P1 DW ?
P2 DB 32 DUP(?) PLENTH EQU $-P1
试问PLENTH的值为(39)它表示的意义是(40)
22、假设BX=54A3H,变量VLAUE中存放的内容为68H,确定下列各条指令单独执行BX的值。 (1)XOR BX,VALUE;BX=(41) (2)OR BX,VALUE;BX=(42) (3)AND BX,00H;BX=(43) (4)SUB BX,VALUE;BX=(44) (5)XOR BX,0FFH;BX=(45) (6)TEST BX,01H;BX=(46) 23、请用DEBUG调试软件的反汇编命令,反汇编在从2060:100H开始的长度为8字节的程序段,该命令为(47)。
24、查看内存数据段中偏移地址为1000H的内容,DEBUG调试命令为(48)
25、在DEBUG调试命令中,N命令是的功能是(49),L命令的功能是(50)。
三、判断题(共30题)
1、 8086/8088微处理器有14个16位寄存器
2、8086/8088微处理器的14个16位寄存器每个都可分成2个8位的寄存器
3、8086/8088微处理器的8个16位的通用寄存器可分为:4个数据寄存器、2个指针寄存器、2个变址寄存器
4、SUB指令和CMP指令的功能相同。 5、MOV AX,0 与XOR AX, AX功能相同。 6、SHL 和SAL指令功能相同。 7、MOV AX,0FFFFH
INC AX 以上两条指令执行后CF=1。
8、有以下定义的数据段,判断该数据段定义下的指令序列正误: DATA SEGMENT
STR1 DB 1,2,3,4,5 STR2 DB ‘12345’ COUNT EQU 20 NUMB DB 3 DUP(6) NUMW DW 20H,80H TABLE DW 0 DATA ENDS
MOV AX,STR1
9、数据定义同第8题,判断该数据段定义下的指令序列正误
MOV BX,OFFSET NUMB
MOV [BX],’+’
10、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV DL,NUMW+2
11、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV BX,OFFSET STR1 MOV DH,BX+3
12、数据定义同第8题,判断该数据段定义下的指令序列正误 INC COUNT
13、数据定义同第8题,判断该数据段定义下的指令序列正误
MOV STR1,STR2
14、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV AX,NUMW+2 MOV DX,0 DIV NUMW
15、数据定义如下,指出指令的正误:
ORG 100H DATA DB 20 DW 30 DD 40
MOV BX,OFFSET DATA MOV AL,[BX+5]
16、数据定义同15题,指令正误: MOV AX,DATA
17、数据定义同15题,指令正误: MOV AX,WORD PTR DATA+1
18、数据定义同15题,指令正误: MOV AX,DATA[BX][SI]
19、数据定义同15题,指令正误: MOV BX,OFFSET DATA[BX][SI] 20、数据定义同15题,指令正误: LEA AX,DATA[BX][SI] MOV AL,[AX]
21、数据定义如下,指出指令的正误: A EQU 500 B DB ? C DW 64H MOV A,AX
22、数据定义如21题,指出指令的正误: MOV B,AX
23、数据定义如21题,指出指令的正误: CMP C,AL
24、数据定义如21题,指出指令的正误: CMP B,C
25、符号及变量定义如下,指出指令的正误: 26、指出指令正误:SAL CL,5 27、指出指令正误:JMP END 28、指出指令正误:JNAB NEXT 29、指出指令正误:LOOP A5
30、指出指令正误:ADD AX,[BX][BP] 四、简答题(共20题)
1、简述汇编语言程序的开发过程。
2、内存操作数有哪几种寻址方式?用MOV 指令的源操作数举例进行说明。 3、简述汇编语言、高级语言、机器语言的区别。