|
2017年秋季学期《汇编语言》在线考试(适用于2017年12月份考试)
试卷总分:56 得分:0
一、 单选题 (共 10 道试题,共 20 分)
1. 当一个带符号数大于0FBH时程序转移, 需选用的条件转移指令是( )。
A. JLE
B. JNL
C. JNLE
D. JL
满分:2 分
2. 十六进制数88H,可表示成下面几种形式,请找出错误的表示( )。
A. 无符号十进制数136
B. 带符号十进制数 -120
C. 压缩型BCD码十进制数88
D. 8位二进制数 -8的补码表示
满分:2 分
3. 8086 CPU在基址加变址的寻址方式中,变址寄存器可以为( )。
A. BX或CX
B. CX或SI
C. DX或SI
D. SI或DI
满分:2 分
4. 下列传送指令中,有语法错误的指令是( )。
A. MOV CS,AX
B. MOV DS,AX
C. MOV ES,AX
D. MOV SS,AX
满分:2 分
5. 在汇编语言程序中,对END语句的叙述正确的是( )。
A. END语句是一可执行语句
B. END语句表示程序执行到此结束
C. END语句表示源程序到此结束
D. END语句在汇编后要产生机器码
满分:2 分
6. 在程序状态字寄存器中,当方向标志DF位为0时,每次操作后使变址寄存器SI和DI( )。
A. 减量
B. 增量
C. 保持不变
D. 地址减1
满分:2 分
7. 八位二进制补码整数的最小值是( )。
A. -126D
B. -127D
C. -128D
D. -129D
满分:2 分
8. 条件转移指令JNE的测试条件为 ( )。
A. ZF=0
B. CF=0
C. ZF=1
D. CF=1
满分:2 分
9. 若有BUF DW 1, 2, 3, 4,则可将数据02H取到AL寄存器中的指令是( )。
A. MOV AL?BYTE PTR?BUF+1
B. MOV AL?BYTE PTR?BUF+2
C. MOV AL?BYTE PTR?BUF+3
D. MOV AL?BYTE BUF?2?
满分:2 分
10. 指令指针寄存器是( )。
A. IP
B. SP
C. BP
D. BX
满分:2 分
二、 谋学网(www.mouxue.com) (共 3 道试题,共 18 分)
1. 在某子程序的开始处要保护AX,BX,CX三个寄存器信息,在子程序结束时要恢复这三个寄存器信息。假设保护现场的指令序列为: PUSH AX
PUSH BX
PUSH CX
试写出恢复现场时的指令序列。
2. 完成下列操作,分别选用什么指令: (1)将AX的内容,减去0520H,和上次运算的借位;
(2)将变量名TABL的段地址送AX;
(3)将变量名TABL的偏移地址送AX。
3. 试根据以下要求,分别写出相应的汇编语言指令。 (1) 把AX寄存器和BX寄存器的内容相加,结果存入AX中;
(2) 用BX和SI的基址变址寻址方式,把存储器中的一个字节与DL的内容相加,并把结果送回DL中;
(3) 把数5EH与AH内容相加,结果送回AH中。
三、 计算题 (共 6 道试题,共 36 分)
1. 程序分析(读程序)题: 有下列程序段
MOV CX,1AH
MOV DL,'z'
LAB1: PUSH DX
MOV AH,02H
INT 21H
POP DX
DEC DX
LOOP LAB1
执行后,屏幕输出结果为:____________________
2.
程序分析(读程序)题:
分析下面程序段:
MOV AX,3456
XCHG AX,BX
MOV AX,3456
SUB AX,BX
JE DONE
KK: ADD AX,BX
DONE:
请问该程序段执行完JE DONE语句后,以十六进制表示,
(AX)=_____H, (ZF)=_____H
3.
程序分析(读程序)题:
有下列程序段
DATA SEGMENT
S9 DB 0,1,2,3,4,5,6,7,8,9
DATA ENDS
┆
LEA SI,S9
LEA, DI,S9+1
MOV CX,5
LOP: MOV AL,[SI]
XCHG AL,[DI]
MOV [SI],AL
ADD SI,2
ADD DI,2
LOOP LOP
上述程序段运行后,S9开始的10个字节存储单元内容是什么?
即:S9 DB ________________
4.
程序分析(读程序)题:
程序段如下:
BLK1 DB 15,36,-7,15,-2,122,73,66
………
MOV CX,8
LEA SI,BLK1
NEXT: MOV AL,[SI]
INC SI
TEST AL,80H
LOOPZ NEXT
MOV BL,[SI]
请回答程序段运行后, 以十进制表示,
(AL)=______D, (BL)=______D
5. 程序分析(读程序)题: 有下列程序段:
NUM DB ?
MOV AH,1
INT 21H
CMP AL,39H
JBE NEXT
SUB AL,7
NEXT: SUB AL,30H
MOV NUM,AL
上述程序段运行后,以十进制表示,
若输入’F’,则(NUM)=_______D (十进制表示)
若输入’8’,则(NUM)=_______D (十进制表示)
6.
程序分析(读程序)题:
有下列程序段
MOV CX,1AH
MOV DL,'A'
LAB1: PUSH DX
MOV AH,02H
INT 21H
POP DX
INC DX
LOOP LAB1
执行后,屏幕输出结果为:____________________
四、 论述题 (共 2 道试题,共 26 分)
1. 编程序段 (10分) 编制将ES段中名为DATA的字存储区清零的程序段。假定DATA存储区定义为:
DATA DW 20 DUP(?)
要求用循环指令编写,循环控制采用计数寄存器自动控制。(此题勿需书写完整的源程序格式,只需把试题要求的有关指令序列书写出来。)
2. 编写完整程序:(16分) 设在内存单元SQTAB首址开始存放了0~15的平方数表。要求用直接查表法编一程序,求出A单元中给定数(<=15)的平方值送B单元保存。
|
|