DATA SEGMENT
S0 DB 0DH,0AH,'1.Set Password 2.Input Password 3.Exit $'
S1 DB 0DH,0AH,'Set Password: $'
S2 DB 0DH,0AH,'Input Password: $'
BUFF1 DB 255,255 DUP(0)
BUFF2 DB 255,255 DUP(0)
NEXT_H DB 0DH,0AH
S3 DB 0DH,0AH,'Password error!',0DH,0AH,'$'
S4 DB 0DH,0AH,'Password correct!',0DH,0AH,'$'
ERR_N DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
MAIN PROC FAR
START:
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
PUSH DS
POP ES
MENU:
MOV AH,09
MOV DX ,OFFSET s0
INT 21H
AGAIN:
MOV AH,08
INT 21H
CMP AH,'1'
JE SET_P
CMP AL,'2'
JE IN_P
CMP AL,'3'
JE EXIT_DOS1
JMP AGAIN
EXIT_DOS1:
RET
SET_P:
MOV AH,09
MOV DX,OFFSET S1
INT 21H
MOV AH,0AH
MOV DX ,OFFSET BUFF1
INT 21H
MOV AL,0
MOV ERR_N,AL
JMP MENU
IN_P:
MOV AH,09
MOV DX,OFFSET S2
INT 21H
MOV AH,OAH
MOV DX ,OFFSET BUFF2
INT 21H
MOV BX ,OFFSET BUFF1+1
MOV AL,[BX]
MOV BX ,OFFSET BUFF2+1
MOV AH,[BX]
XOR AH,AL
JNZ ERR
MOV CH,0
MOV CL,AL
MOV SI,OFFSET BUFF1+2
MOV DI,OFFSET BUFF2+2
CLD
REPE CMPSB
JNZ ERR
MOV AH,09
MOV DX,OFFSET S4
INT 21H
JMP MENU
ERR:
MOV AH,09
MOV DX,OFFSET S3
INT 21H
INC ERR_N
MOV AL,ERR_N
CMP AL,3
JE EXIT_DOS
JMP MENU
EXIT_DOS:
RET
MAIN ENDP
CODE ENDS
END START
没人会么??跪求。