2020年春季学期《汇编语言》在线考试(适用于2020年6月份考试)题目
一、单选题 (共 20 道试题,共 40 分)
1.已知(DS)=3000H,(SS)=2500H,(BX)=0100H,(BP)=0040H,指令MOV AX,DS:[BP] 源操作数的物理地址是( )。
A.25040H
B.30040H
C.25100H
D.55040H
2.除法调整指令AAD是对( )调整
A.AX中组合的十进制被除数
B.AL中组合的十进制的商数
C.AX中未组合的十进制被除数
D.AL中未组合的十进制的商数
3.DATA SEGMENT ? ? ?
TA1 ?DW 0102H,0304H,0506H ? ? ?
TA2 ? DB 02H,03H,04H ? ? ? ??
? ? MOV BX,DS:[0006H] ? ? ? ? ??
? AND BX,0FFH ? ? ? ? ??
? OR ?BH,[BX]?
上述指令序列运行后,BX的内容是( )
A.0605H
B.0402H
C.0606H
D.0204H
4.串操作指令中,目标串操作数的段地址一定在( )寄存器中。
A.CS
B.SS
C.DS
D.ES
5.指令ADD ES:[DI],AX 和存放在( )
A.寄存器
B.附加段
C.堆栈段
D.代码段
6.能被计算机直接识别和执行的指令是( )
A.)符号指令
B.机器指令
C.伪指令
D.宏指令
7.执行指令PUCH CX后堆栈指针SP自动( )
A.1
B.不操作
C.-2
D.-1
8.汇编语言指令中唯一不可缺少的域是( )
A.标号名字域
B.助记符域
C.操作数域
D.注释域
9.在计算机的CPU中执行算术逻辑运算的部件是( )
A.ALU
B.PC
C.AL
D.AR
10.下面哪一个命令是显示内存单元的内容( )
A.D命令
B.E命令
C.F命令
D.R命令
11.MOV AX,ES:COUNT[DI] 源操作数的寻址方式是( )
A.基址寻址
B.立即寻址
C.变址寻址
D.基址变址寻址
12.已知X=78,Y=-83则[X+Y]补=( )
A.0F5H
B.0A1H
C.0FBH
D.65H
13.指令MOV BX,MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么物理地址为( )
A.17500H
B.16500H
C.14500H
D.13500H
14.指令MOV DX,DELTA[BX][SI],若DELTA=1300H,SS=7200H,DS=5400H,BX=0500H,SI=4000H,那么物理地址为( )
A.6F300H
B.77800H
C.59800H
D.78700H
15.将125转换成二进制数的结果( )
A.7DH
B.7CH
C.7EH
D.7BH
16.MOV DX,COUNT[BP][DI]的源操作数的寻址方式是( )
A.变址寻址
B.基址寻址
C.直接寻址
D.基址变址寻址
17.已知[X]补=98H, 则[X]补/2=( )
A.0CCH
B.4CH
C.49H
D.31H
18.将93H看成一个组合BCD码,其结果是( )
A.10010101
B.10010011
C.10000011
D.10000001
19.MOV AX,ES:[1000H] 源操作数的寻址方式是( )
A.立即寻址
B.直接寻址
C.变址寻址
D.基址寻址
20.指令MOV AX,COUNT[BX],若COUNT=0400H,SS=1200H,DS=1000H,BX=5000H,那么物理地址为( )
A.17400H
B.17000H
C.15400H
D.14500H
二、问答题 (共 6 道试题,共 30 分)
下列语句在存储器中分别为变量分配多少字节??
(1)V1 DW 10 DUP(?),10?
(2)V2 DD 100 DUP(?)
在某子程序的开始处要保护DX,SI,DI三个寄存器信息,在子程序结束时要恢复这三个寄存器信息。假设恢复现场的指令序列如下,试写出保护现场的指令序列。?
POP ? DX?
POP ? SI ??
POP ? DI
完成下列操作,分别选用什么指令:?
(1)将AX的内容,减去0520H,和上次运算的借位;?
(2)将变量名TABL的段地址送AX;?
(3)将变量名TABL的偏移地址送AX。
试根据以下要求,分别写出相应的汇编语言指令。?
(1) 把AX寄存器和BX寄存器的内容相加,结果存入AX中;?
(2) 用BX和SI的基址变址寻址方式,把存储器中的一个字节与DL的内容相加,并把结果送回DL中;?
(3) 把数5EH与AH内容相加,结果送回AH中。
定义数据段DATA_SEG,数据段中的数据按下列要求依次存储:?
(1)变量BUF,大小为25个字节,初值为0;?
(2)变量ARRAY,类型为字,初值为12H,56H,78H,0AH;?
(3)变量MSG存储字符串 ’yes’。
在某子程序的开始处要保护AX,BX,CX三个寄存器信息,在子程序结束时要恢复这三个寄存器信息。假设保护现场的指令序列为:?
? PUSH AX?
? PUSH BX ??
? PUSH CX?
试写出恢复现场时的指令序列。
三、论述题 (共 3 道试题,共 30 分)
编写完整程序:在给定个数的数中寻找最大值,放至指定的存储单元。假设数据段如下:?
DATA ?SEGMENT?
BUFFER ?DB ?2,4,3,6,1,5?
COUNT ?DW ?6?
MAX ? DB ???
DATA ?ENDS
编程序段:编制将ES段中名为DATA的字存储区清零的程序段。假定DATA存储区定义为: DATA ? DW ?20 ?DUP(?) 要求用循环指令编写,循环控制采用计数寄存器自动控制。(此题勿需书写完整的源程序格式,只需把试题要求的有关指令序列书写出来。)
编写完整程序: 设在内存单元SQTAB首址开始存放了0~15的平方数表。要求用直接查表法编一程序,求出A单元中给定数(<=15)的平方值送B单元保存。