汇编语言 密码验证代码怎么写
发布网友
发布时间:2022-05-19 13:52
我来回答
共1个回答
热心网友
时间:2023-10-12 21:38
;密码验证代码
;
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
start: MOV AX,CODE
MOV DS,AX
cld
AGAIN: MOV AX,3
INT 10H
lea dx,MENU ;主菜单
mov ah,9
int 21h
input:
mov ah,0
int 16h
cmp al,'1'
jnz cp2
call sub01 ;输入一个字符串
jmp AGAIN
cp2:cmp al,'2'
jnz cp3
call sub02 ;字符串左右移动
jc exit
jmp AGAIN ;返回到主菜单
cp3:cmp al,'3' ;返回DOS
jnz input
exit:
lea dx,MESG
mov ah,9
int 21h
mov ah,1
int 21h
MOV AH,4CH
INT 21H
sub01:
mov ax,3
int 10h
lea dx,tips
mov ah,9
int 21h
lea dx,msg1
mov ah,0ah
int 21h ;输入一个字符串
mov ax,0e0dh
int 10h
mov al,0ah
int 10h
ret
sub02:
mov ax,3
int 10h
clc
push ds
pop es
mov bp,3
sss:
lea dx,Pass
mov ah,9
int 21h
lea dx,msg2
mov ah,0ah
int 21h
lea si,buf1
lea di,buf2
mov ch,0
mov cl,msg1+1
cmp cl,msg2+1
jnz cuowu
repz cmpsb
jcxz right
cuowu:
lea dx,no
mov ah,9
int 21h
dec bp
jnz sss
stc
jmp ok
right:
lea dx,yes
mov ah,9
int 21h
ok:
mov ah,1
int 21h
ret
MENU DB 5 DUP(0AH)
DB 31 DUP(' '),'MAIN MENU',0DH,0AH
DB 25 DUP(' '),201,21 DUP(205),187,0DH,0AH
DB 25 DUP(' '),186,' 1.Shuru Mima',8 p (20h),186,0DH,0AH
DB 25 DUP(' '),186,' 2.Jiaoyan Mima',6 p (20h),186,0DH,0AH
DB 25 DUP(' '),186,' 3.Return to DOS ... ',186,0DH,0AH
DB 25 DUP(' '),200,21 DUP(205),188,0DH,0AH
DB 28 DUP(' '),'Choice(1,2,3):$'
MESG DB 0dh,0ah,0dh,0ah,9,'Press any key to exit ...$'
Pass db 0dh,0ah,9,'Enter your password: $'
yes db 0dh,0ah,9,'password correct$'
no db 0dh,0ah,9,'password error$'
tips db 0dh,0ah,9,'Input a string: $'
msg1 db 255,0
buf1 db 255 p(0)
msg2 db 255,0
buf2 db 255 p(0)
CODE ENDS
END start来自:求助得到的回答