主题:大家帮我看看这程序,为什么运行时DOS窗口一闪而过
DATAS SEGMENT
DATA1 DB 'input numbers:',0dh,0ah,'$'
DATA4 DB 'COMPARE END','$'
DATA2 DB 'RESULT IS:',0DH,0AH,'$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,DATA1
MOV AH,09H
INT 21H
MOV DL,07H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
MOV CX,50
CALL BJ
MOV AH,4CH
INT 21H
BJ PROC NEAR
L1: LEA SI,DATA1
MOV BX,0
PUSH CX
MOV DX,[SI+BX]
CMP DX,[SI+BX+1]
JG L2
XCHG DX,[SI+BX+1]
INC BX
LOOP L1
L2: INC BX
LOOP L1
POP CX
LOOP L1
MOV AL,[DATA1]
MOV DL,[DATA2]
MOV DL,AL
LEA DX,DATA4
MOV AH,09H
INT 21H
LEA DX,DATA2
MOV AH,09H
INT 21H
RET
BJ ENDP
CODES ENDS
END START
DATA1 DB 'input numbers:',0dh,0ah,'$'
DATA4 DB 'COMPARE END','$'
DATA2 DB 'RESULT IS:',0DH,0AH,'$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
LEA DX,DATA1
MOV AH,09H
INT 21H
MOV DL,07H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
MOV CX,50
CALL BJ
MOV AH,4CH
INT 21H
BJ PROC NEAR
L1: LEA SI,DATA1
MOV BX,0
PUSH CX
MOV DX,[SI+BX]
CMP DX,[SI+BX+1]
JG L2
XCHG DX,[SI+BX+1]
INC BX
LOOP L1
L2: INC BX
LOOP L1
POP CX
LOOP L1
MOV AL,[DATA1]
MOV DL,[DATA2]
MOV DL,AL
LEA DX,DATA4
MOV AH,09H
INT 21H
LEA DX,DATA2
MOV AH,09H
INT 21H
RET
BJ ENDP
CODES ENDS
END START