汇编语言题库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二、填空题
1.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么该字的字地址是________。
2.“SHL OPR,CNT”指令中OPR可以是除______以外的任何寻址方式。
3.“VAR DB 5 DUP(8,2 DUP(5))”语句汇编应分配______个字节单元。
4.指令“MOV AX,20H[SI]”中源操作数的物理地址表达式是______。
5.乘法指令语句“MUL CL”,16位的乘积存放在______中。
1.在8086/8088系统中,存储器是分段的,每段最大长度是_______字节,段内偏移地址从_______到_______。
2.在程序调试时,显示某指令存放地址是2340H:0056H,则物理地址是_______。
3.汇编语言源程序中的语句有三种类型,它们是_______语句,_______语句和_______语句。4.指令MOV AX,[BX+SI+10H]源操作数寻址方式是_______。
5.执行段间返回指令RET时,将栈顶的一个字弹出到_______后,又弹出一个字到_______寄存器中。
6.已知DS=3000H,DI=1200H,(31200H)=64H,(31201H)=93H,执行NEG WORD PTR [DI]后,(31200H)=_______,(31201H)=_______。
7.执行下列指令序列
MOV AL,80H
MOV BL,08H
CBW
IDIV BL
则AH=_______AL=_______。
8.已知数据定义语句
ORG 120H
VECT1 DW 200H
VECT2 DW VECT1
执行MOV AX,VECT1 AX=_______
MOV BX,VECT2 BX=_______。
三、简答题
1、在指令系统中,段内、段间返回均为RET指令。试回答:
(1)执行段内返回RET指令时,执行的操作是:
(2)执行段间返回RET指令时,执行的操作是:
2、用两种办法,分别只用一条指令实现将DA1数据区中数据个数送入CX。
DA1 DB 20H DUP(?)
DA2 DW 10H,45H,7856H
3、已知:BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数的物理地址。
MOV AL,[BP+20H]的物理地址是:
MOV [BX+DI-80H],AL的物理地址是:
MOV BL,ES:[SI+40H]的物理地址是:
4、请指出下列指令错误原因:
A. OR AX,[CX]
B. ADD [SI],[BX][DI]
C. JMP BYTE PTR LOOPS
D. SAR AX,4
E. RCL DX
5、DS=2000H,AX=2000H,BX=5030H,(25030H)=03H,(25031H)=05H,那么执行下列语句,A.MOV AX,BX AX= ;B.MOV AX,[BX] AX=
6、数据定义如下
X1 DB 10H,100,-1
X2 DW 10H,100,-1
X3 DD ?
COUNT EQU X3-X1
变量COUNT的值是,其表示的意义是。
7、A DW 1234H
B DW 5678H
┇
PUSH A
PUSH B
POP A
POP B
试回答:上述程序段执行后(A)= ;(B)= 。
8、设某数据段:
DA TA SEGMENT
ORG 20H
NUM1=8
NUM2=NUM1+10H
DA1 DB 'COMPUTER'
DB 0AH,0DH
COUNT EQU $-DA1
DA2 DW 'CO','MP','UT','ER'
DA TA ENDS
试回答:
(1)DA1的偏移地址是:()
(2)COUNT的值是:()
(3)DA2+5字节单元的内容是:()
9、下列程序段完成什么工作?
DAT1 DB 30 DUP(?)
DAT2 DB 10 DUP(?)
┇
MOV CX,10
MOV BX,20
MOV SI,0
MOV DI,0
NEXT:MOV AL,DAT1[BX][SI]
MOV DAT2[DI],AL
INC SI
INC DI
LOOP NEXT
10、下列语句在存储器中分别为变量数据区分配多少个字节单元?
(1)V AR3 DD 10
(2)V AR4 DW 4 DUP(?),2
11、设DS=2000H,BX=1256H,变量TABLE的偏移地址为20A1H,(232F7H)=3280H.下列指令分别执行后,IP的值各是多少?
(1)JMP BX IP=___________________
(2)JMP TABLE[BX] IP=___________________
12、选用NOT,AND,OR XOR逻辑指令编写一指令序列,实现将AL第0位,第2位同时置1,其他位变反。
13、在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。例如:
PUSH AX
PUSH BX
PUSH CX
PUSH DX
:
恢复现场
试写出恢复现场时的指令序列。
14、完成下列操作,选用什么指令:
(1)将AX的内容,减去0520H,和上次运算的借位;
(2)将变量名TABL的段地址送AX;
15、D1 DB 20H DUP(?)
D2 DW D1
请写出用一条指令实现取D1的偏移地址送给SI中的三种方法。
16、在8086/8088系统中,存储器是分段组织的,按各段实际长度定位。已知(DS)=2150H,(CS)=2640H,(SS)=2250H,SP=100H,问题:
(1)数据段起始地址是多少?
(2)计算数据段中最多可以存放多少个字节数据?(要有具体计算式)
(3)代码段最多可以存放多少个字节程序代码?说明理由。
17、已知数据段定义如下:
DATA SEGMENT
ORG 100H
BUF DW 'CD',1,3 DUP(4,2 DUP(8,6))
VRA DB 4AH
DATA ENDS
单独执行下列语句
LEA BX,BUF BX=_______
MOV CX,VRA-BUF CX=_______(用十六进制数表示)。
18、分别说明下列两组指令中两条指令操作的相同点和不同点
(1)SUB AX,BX CMP AX,BX