|
假定(DS)=2050H,(ES)=3600H,(SI)=00A0H,(BX)=0100H,(BP)=1020H,(SS)=2100H数据变量VAL的偏移地址为0050H,请指出下列指令的源操作数的EA及PA.
1.MOV AX,[100H]
2.MOV AX,[BX]
3.MOV AX,ES:[BX]
4.MOV AX,VAL[BP][SI]
5.MOV AX,VAL
四.(12分)已知某数据段的定义如下,画出变量在内存中的存储情况
DSEG SEGMENT
X1 DB 0,’1’,-1,31H
X2 DW 10,’ABCD’
X3 DW X2
DSEG ENDS
五.(10分)假如在程序的括号中分别填入指令: LOOP L20
试说明程序执行完后AX,BX,CX,DX四个寄存器的内容分别是什么?
CSEG SEGMENT
ASSUME CS:CSEG
BEGIN: MOV AX,01H
MOV BX,02H
MOV DX,0AH
MOV CX,03H
L20: INC AX
ADD BX,AX
SHR DX,1
( )
MOV AH,4CH
INT 21H
CSEG ENDS
END BEGIN
六.(10分)根据给定功能,填写方框中的指令。
1 X>1
以下程序实现Y=X -1≤X≤1
-1 x<-1
DATA SEGMENT
X DB ?
Y DB ?
DATA ENDS
STACK SEGMENT STACK
DB 100 DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV AL,X
JG NEXT1
CMP AL,-1
MOV Y,AL
NEXT1: MOV Y,1
JMP EXIT
NEXT2: MOV Y,-1
EXIT: MOV AH,4CH
INT 21H
CODE ENDS
END START
七.(10分)用非压缩BCD码,实现23+15的运算。试编写程序。
|
|