请教各位高手一个问题~~~~~
这是一个密码申请时的校验程序,就是有键盘随机输入两个字符串作比较,相同的话就提示密码正确,不同就提示错误。现在存在的问题是,无法实现两个字符串的比较,不论输入是否正确都提示错误,望各位大侠帮忙看看,谢谢了~~~~
data segment
;;;;
inputcount db 0
;;;;
string0 db 'Please input the password:$'
string1 db 'Please input the password again:$'
password db 50,0,50 dup(?)
string2 db 50,0,50 dup(?)
string3 db 'Welcome to use!$'
string4 db 'Password error!$'
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov al,0
;;;;;;;;;;
mov inputcount, al
;;;;;;;;;;
start_2:mov ah,9
lea dx,string0
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
mov ah,0ah
lea dx,password
int 21h
start_1:mov ah,9
lea dx,string1
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
mov ah,0ah
lea dx,string2
int 21h
lea si,string2[1]
lea di,password
mov dl,[si]
cmp dl,9
jne error
mov cx,0
mov cl,9
lop:inc si
mov bh,[si]
mov bl,[di]
cmp bh,bl
jne error
inc di
loop lop
jmp r
error: mov ah,9
lea dx,string4
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
;;;;;;;;;
mov al, inputcount
;;;;;;;;;
inc al
;;;;;;;;;
mov inputcount, al
;;;;;;;;;
cmp al,3
jne start_1
jmp exit
r:mov ah,9
lea dx,string3
int 21h
exit:mov ah,4ch
int 21h
code ends
end start
data segment
;;;;
inputcount db 0
;;;;
string0 db 'Please input the password:$'
string1 db 'Please input the password again:$'
password db 50,0,50 dup(?)
string2 db 50,0,50 dup(?)
string3 db 'Welcome to use!$'
string4 db 'Password error!$'
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov al,0
;;;;;;;;;;
mov inputcount, al
;;;;;;;;;;
start_2:mov ah,9
lea dx,string0
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
mov ah,0ah
lea dx,password
int 21h
start_1:mov ah,9
lea dx,string1
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
mov ah,0ah
lea dx,string2
int 21h
lea si,string2[1]
lea di,password
mov dl,[si]
cmp dl,9
jne error
mov cx,0
mov cl,9
lop:inc si
mov bh,[si]
mov bl,[di]
cmp bh,bl
jne error
inc di
loop lop
jmp r
error: mov ah,9
lea dx,string4
int 21h
mov ah,2
mov dl,10
int 21h
mov ah,2
mov dl,13
int 21h
;;;;;;;;;
mov al, inputcount
;;;;;;;;;
inc al
;;;;;;;;;
mov inputcount, al
;;;;;;;;;
cmp al,3
jne start_1
jmp exit
r:mov ah,9
lea dx,string3
int 21h
exit:mov ah,4ch
int 21h
code ends
end start
...全文


