【正确答案】程序如下:
DATA SEGMENT
0RG 100H
BUF1 DB 256DUP(?)
COUNT EQU $-BUF1
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET BUF1
MOV CX,COUNT
PUSH SI
PUSH CX
XOR AL,AL
NEXT: MOV [SI],AL
INC AL
INC SI
LOOP NEXT
POP CX
POP SI
ZRBH: MOV BH,16
NEXT1: MOV AL,[SI]
MOV BL,AL
SHR AL,1
SH RAL,1
SH RAL,1
SHR AL,1
CMP AL,0AH
JC JIA30
ADD AL,7
JIA30: ADD AL,30H
CALL DISP
MOV AL,BL
AND AL,0FH
CMP AL,0AH
JC JIA30A
ADD AL,7
JIA30A:ADD AL,30H
CALL DISP
MOV AL,20H
CALL DISP
INC SI
LOOP NEXT2
JMPSTOP
NEXT2: DECBH
JNZ NEXT1
MOV AL,0AH
CALL DISP
MOV AL,0DH
CALL DISP
JMP ZRBH
DISP PROC NEAR
MOV DL,AL
MOV AH,2
INT 21H
RET
DISP ENDP
STOP: MOV AH,4CH
INT 21H
CODE ENDS
END START
【答案解析】