汇编语言 用户名密码登录验证程序 (dos调用)

来源:互联网 发布:协同过滤推荐算法 编辑:程序博客网 时间:2024/05/16 08:35

用户输入用户名密码,验证成功则显示welcome!

主要是dos功能的调用。

2号调用 输入参数dl 显示在屏幕上

9号调用 输出ds:dx指向的字符串 必须以‘$'结尾

a号调用 把用户的输出保存起来 注意定义的时候   db 长度 ,?,长度 dup (?) 

代码:

;登陆验证程序data segmentfirst db 'usename:',0dh,0ah,'$'second db 'password:',0dh,0ah,'$'databasename db 'think'databasepassword db '123456'tempname db 15,?, 15 dup (?)countname db $-tempname-02h,'$'temppassword db 15,?,15 dup (?)countpassword db $-temppassword-02hwelcomedb 'welcome!','$'data endscode segment assume cs:code,ds:data,es:datastart:mov ax,datamov ds,ax;dos 调用显示欢迎界面mov ah,09hmov dx,offset firstint 21h;dos 0ah 调用用户输入mov ah,0ahmov dx,offset tempnameint 21hcmp byte ptr tempname+1,05h  ;验证长度jnz exitmov cx,5;字符串比较mov si,offset databasenamemov di,offset tempname+2mov ax,datamov es,axcldrepe cmpsbjnz exitmov dx,offset tempname+2   ;显示输入的字符串mov byte ptr tempname[7],'$'call dosshow;提示输入passwordmov ah,09hmov dx,offset secondint 21h;dos 0ah 调用用户输入mov ah,0ahmov dx,offset temppasswordint 21hcmp byte ptr temppassword+1,06hjnz exitmov cx,6mov si,offset databasepasswordmov di,offset temppassword+2mov ax,datamov es,axcldrepe cmpsbjnz exitmov dx,offset temppassword+2mov byte ptr temppassword[8],'$'call dosshowmov ah,09hmov dx,offset welcomeint 21hexit:mov ax,4c00hint 21hdosshow procmov ah,09hint 21hmov dl,0dhmov ah,02hint 21hmov dl,0ahmov ah,02hint 21hretdosshow endpcode endsend start

结果:


0 0
原创粉丝点击