ASSUMECS:CODE
BUF DW1234,5678
MAX DW?
MIN DW?
START: PUSH CS
POP DS
PUSH CS
POP ES
LEA SI,BUF
MOV AX,[SI]
MOV BX,[SI+2]
CMP AX,BX
JA@1
MOV MAX,BX
MOV MIN,AX
JMP @2
@1:
MOV MAX,AX
MOV MIN,BX
@2:
MOV AH,4CH
INT 21H
CODE ENDS
END START
1、已知AX=0FF60H,CF=1MOV DX,96
XOR DH,0FFH
SBB AX,DX
执行上述指令序列后,AX=_ffffh,CF=__1
2、设寄存器AL,BL,CL中内容均为76H,
XOR AL,0FH
AND BL,0FH
OR CL,0FH
执行上述指令序列后,AL=__79h
BL=______06h_____,CL=_____7fh_____
3、已知AX=0A33AH,DX=0F0F0H
AND AH,DL ah=a0h
XOR AL,DH al=cah
NEG AH
NOT AL
执行上述指令序列后,AH=___60h___,AL=____35h____
4、DATA SEGMENT
S9 DB0,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 1,0,3,2,5,4,7,6,9,8
5、MOV AL,38H
MOV BL,49H
CALL SUBO
INC AL
DEC CL
┇
SUBO PROC
ADD AL,BL
MOV CL,AL
DAA
RET
SUBO ENDP
上述程序段运行后,AL=______88h___,CL=____80h___
6、DA3 EQU WORD PTR DA4
DA4 DB 0ABH,89H
┇
SHR DA3,1
MOV DX,DA3
SHL DA4,1
MOV CX,DA3
上述程序段运行后,CX=___10ccH______,DX=_____1066H___
四、程序填空题(注意:下列各小题中,每空只能填一条指令!每小题6分,共12分)
1、下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置0,否则AH置全1。试把空白处填上适当指令。
xor ah,al_____
AND AH,08H
jnz zero_____
MOV AH,OFFH
JMP NEXT
ZERO:MOV AH,0
NEXT:……
2、以BUF为首址的字节单元中,存放了COUNT个无符号数,下面程序段是找出其中最大数并送入MAX单元中。
BUF DB 5,6,7,58H,62,45H,127,……
COUNT EQU $-BUF
MAX DB?
┇
MON BX,OFFSET BUF
MOV CX,COUNT-1
MOV AL,[BX]
LOP1:INC BX
cmp al,[bx]____
JAE NEXT
MOV AL,[BX]
NEXT:DEC CX
jz lop1____
MOV MAX,AL
五、编制程序题(第1小题6分,第2小题14分,共20分)
1、编定程序段,用DOS的1号功能调用通过键盘输入一字符,并判断输入的字符。如字符是"Y",则转向YES程序段;如字符是"N",则
转向NO程序段;如是其他字符,则转向DOS功能调用,重新输入字符。(考生勿需写出源程序格式,只需写出与试题要求有关的指令序
列)
(YES和NO分别是两程序段入口处的标号)
CODE SEGMENT
ASSUME CS:CODE
BEGIN:
MOV AH,01h
INT 21H
CMP AL,'Y'
JZ YES
CMP AL,'N'
JZ NO
JMP BEGIN
YES:..
...
...
NO:...
...
...
MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
2、在BUF1和BUF2两个数据区中,各定义有10个带符号字数据,试编制一完整的源程序,求它们对应项的绝对值之和,并将和数存入以
SUM为首址的数据区中。
DATA SEGMENT
BUF1 DW-56,24,54,-1,89,-8……
BUF2 DW45,-23,124,345,-265,……
SUM DW10DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BEGIN:
MOV AX,DATA
MOV ES,AX
MOV DS,AX
LEA SI,BUF1
MOV BX, OFFSET BUF2
LEA DI,SUM
MOV CX,10
L1:
MOV AX,[SI]
ROL AX,1
JC L2
ROR AX,1
L4:
MOV DX,AX
MOV AX,[BX]
ROL AX,1
JC L3
ROR AX,1
L5:
ADD AX,DX
MOV [DI],AX
INC BX
INC BX
INC SI
INC SI
INC DI
INC DI
LOOP L1
JMP LAST
L2:
ROR AX,1
NEG AX
JMP L4
L3:
ROR AX,1
NEG AX
JMP L5
LAST:
MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)