2021-02-20第8章汇编测试题目
第8章汇编测试题目
共4道单选题目
【王爽-汇编语言】第八章检测题分析 _fcrane学习博客-CSDN博客
https://blog.csdn.net/fcrane/article/details/4351940
下列指令序列不能够实现把内存地址0:202h中的字节数据送入al功能的是___3___。
1、mov ax,0
mov ds,ax
mov bx,202h
mov al,[bx]
2、mov ax,0
mov ds,ax
mov bx,200h
mov al,[bx+2]
3、mov ax,0
mov ds,ax
mov bp,202h
mov al,[bp]
4、mov ax,0
mov ds,ax
mov bp,200h
mov al,ds:[bp+2]
1/4
分析:参考《汇编语言》第一版第149页,只要在[...]中使用寄存器bp,而指令中没有显性地给出段地址,段地址默认在ss中,所以,选项3不能实现。
下列指令不合理的是___(3)___。1、 mov ds:[0ffh],al
2、 mov ds:[0ffh],ax
3、 mov ds:[0ffh],0ffh
4、 push ds:[0ffh]
分析:
不支持把立即数放到内存中。
题3是二进制数,不是十进制数,更不是16进制数。
mov dx,0
mov ax,1001
mov bx,100
div bl
以上四条指令执行完后,ah值是__(1)___。
1、 1
2、 10
3、 1001
4、 0
分析:
因为bl是8位数,即除数为8位,则被除数为ax,运完完毕后,al中放的是商,ah中放的是余数。
1001/100 余数为1
共4道单选题目
对如下程序:
assume cs:codesg,ds:datasg
datasg segment
dd 123456h
dw 789h,0h
datasg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov ax,ds:[0]
mov dx,ds:[2]
div word ptr ds:[4]
mov ds:[6],ax
mov ax,4c00h
int 21h
codesg ends
end start
下列说法正确的是___4___。
1、该程序实现的功能是计算123456h与78900h相除。
2、该程序由于数据定义非法,无法通过编译。
3、指令div word ptr ds:[4]可改为div near ptr ds:[4],不影响程序功能。
4、指令div word ptr ds:[4]采用了直接寻址方式。
4/4
分析:
1、错误,计算的是123456h与789h相除
2、数据定义不非法
3、两个指令的含义不同 word ptr指明了内存单元的长度 near ptr用在跳转指令中
4、正确