用emu8086编写程序实现账号、密码的注册和登录设置。要求:(1)程序运行时首先提示“PLEASEINPUT’L’TOLOGINOR‘R’TOREGISTRATION!”
时间: 2024-04-02 16:35:34 浏览: 15
好的,我来为您解答这个问题。
首先,您需要了解一下emu8086是什么,它是一款8086汇编语言的模拟器,可以在Windows环境下运行。接下来,我将提供一份账号、密码的注册和登录设置的汇编程序代码,您可以在emu8086中运行。
```
.model small
.stack 100h
.data
msg1 db 'PLEASEINPUT ''L'' TO LOGIN OR ''R'' TO REGISTRATION!',0dh,0ah,'$'
msg2 db 'PLEASE INPUT YOUR USERNAME:',0dh,0ah,'$'
msg3 db 'PLEASE INPUT YOUR PASSWORD:',0dh,0ah,'$'
msg4 db 'REGISTRATION SUCCESSFUL!',0dh,0ah,'$'
msg5 db 'LOGIN SUCCESSFUL!',0dh,0ah,'$'
msg6 db 'INVALID INPUT! PLEASE TRY AGAIN!',0dh,0ah,'$'
usr1 db 'admin',0
psw1 db '123456',0
usr2 db 20 dup('$')
psw2 db 20 dup('$')
.code
main proc
mov ax,@data
mov ds,ax
mov ah,9
lea dx,msg1
int 21h
mov ah,1
int 21h
cmp al,'r'
je register
cmp al,'l'
je login
jmp invalid
register:
mov ah,9
lea dx,msg2
int 21h
mov ah,0ah
lea dx,usr2
int 21h
mov ah,9
lea dx,msg3
int 21h
mov ah,0ah
lea dx,psw2
int 21h
mov ah,9
lea dx,msg4
int 21h
jmp exit
login:
mov ah,9
lea dx,msg2
int 21h
mov ah,0ah
lea dx,usr2
int 21h
mov ah,9
lea dx,msg3
int 21h
mov ah,0ah
lea dx,psw2
int 21h
cmp usr1,usr2
jne invalid
cmp psw1,psw2
jne invalid
mov ah,9
lea dx,msg5
int 21h
jmp exit
invalid:
mov ah,9
lea dx,msg6
int 21h
exit:
mov ah,4ch
int 21h
main endp
end main
```
程序的具体实现过程如下:
1. 首先,输出提示信息“PLEASEINPUT 'L' TO LOGIN OR 'R' TO REGISTRATION!”,并等待用户输入。
2. 如果用户输入了“R”,就表示用户要进行注册,程序会提示用户输入用户名和密码,并将用户输入的用户名和密码保存到程序中。
3. 如果用户输入了“L”,就表示用户要进行登录,程序会提示用户输入用户名和密码,并与程序中预设的用户名和密码进行比较,如果匹配成功,则表示登录成功。
4. 如果用户输入了无效的字符,则程序会提示“INVALID INPUT! PLEASE TRY AGAIN!”。
5. 程序执行完毕后,通过调用int 21h中断退出程序。
希望这个程序能够对您有所帮助!