微机应用系统课程设计--密码校验程序_第1页
微机应用系统课程设计--密码校验程序_第2页
微机应用系统课程设计--密码校验程序_第3页
微机应用系统课程设计--密码校验程序_第4页
微机应用系统课程设计--密码校验程序_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课 程 设 计课程设计名称: 微机应用系统课程设计 专 业 班 级 : 计科1204班 学 生 姓 名 : 学 号 : 指 导 教 师 : 课程设计时间: 2014.12.22-2015.1.3 计算机科学与技术 专业课程设计任务书学生姓名 专业班级计科204班学号 题 目密码校验程序课题性质A.工程设计课题来源自拟课题指导教师王 锋同组姓名无主要内容1、菜单 内容包括:输入密码(字符串);密码校验;退出. 2、输入字符串 选择该项后,可以输入一个字符串.该字符串作为密码校验中的已知密码.3、密码校验 输入字符串,若所输入的字符串与密码不一致则提示:Password error!,并重新提示

2、输入密码,当错误输入三次时退出软件返回 DOS.若所输入的字符串与密码一致则提示: Password correct!,并返回主菜单. 4、在主菜单中选择退出项,则结束程序返回 DOS.任务要求一切以设计内容为前提进行课程设计实验:1.按设计的内容的菜单要求完成菜单的设计。2.设计已知的字符串密码,作为完成以下校验操作的前提。3.校验密码的程序尽量要求精辟,并按校验的要求完成密码校验成功与不成功时的设计要求。4.设计菜单中的退出选择项时,必须按照设计内容进行。参考文献1.16/32位微机原理、汇编语言及接口技术(第2版)-(北京电子工业出版社 2003)钱晓捷,陈涛 编著2.32位微型计算机原

3、理与接口技术-(北京清华大学出版社 2000)仇玉章等 编著审查意见指导教师签字:教研室主任签字: 2015年 1 月 10日 信息科学与工程学院课程设计成绩评价表课程名称: 微机应用系统课程设计设计题目: 密码校验程序专业:计算机科学与技术 班级:计科F1204 姓名: 学号: 序号评审项目分 数满分标准说明1内 容思路清晰;语言表达准确,概念清楚,论点正确;实验方法科学,分析归纳合理;结论严谨,设计有应用价值。任务饱满,做了大量的工作。(20分)2创 新内容新颖,题目能反映新技术,对前人工作有改进或突破,或有独特见解。(10分)3完整性、实用性整体构思合理,理论依据充分,设计完整,实用性强

4、(10分)4数据准确、可靠数据准确,公式推导正确(10分)5规 范 性设计格式、绘图、图纸、实验数据、标准的运用等符合有关标准和规定(10分)6纪 律 性能很好的遵守各项纪律,设计过程认真(20分)7答 辩准备工作充分,回答问题有理论依据,基本概念清楚。主要问题回答简明准确。在规定的时间内作完报告。(20分)总 分综合意见指导教师:王 锋 2015 年 1 月 10 日一 课程设计实验的目的 就对于计算机专业的学生而言,每个学期开展的课程设计实验是检验自己本学期所学知识的一次特别宝贵的机会,我们可以运用自己所学到实践检验中去,从而可以获得更加深刻的理解与感悟。实践是检验真理的唯一标准,更是磨砺

5、理论知识与学生自身技术修养的试金石,只有勇于实践并且精于实践的人才可以让自己获得更加宝贵的知识财富与实践精神。就本次的课程设计而言,我的题目是-密码校验程序。而设计的主要目的是要求我在会设计相关的密码校验菜单的同时学会相关串操作的程序的设计与使用,更重要的是, 我必须在此课程设计的实验当中会更加合理的运用我所学过的知识与学习一些我所没有接触过却对我的实验有所帮助的知识,在其中对其加以理解与与实践相结合,达到真正融会贯通的目的。课程设计的真正精华所在就是让学生做到真正的理论实践结合,明白老师的教授,与学会去认识与学习我们所没有接触过的广大的相关技术领域。二 实验设计的任务与要求 我的课程设计的题

6、目是-密码校验程序。在这次的试验中,我主要的设计内容与要求是在设计好密码校验程序的菜单的前提下,运用所学过的有关于串操作的相关知识来完成密码的校验工作,再联系本学期所学的汇编的相关知识来进行运行页面的相关处理与键盘操作等工作。具体的内容设计要求任务如下: 1、菜单 内容包括:输入密码(字符串);密码校验;退出。 2、输入字符串 选择该项后,可以输入一个字符串.该字符串作为密码校验中的已知密码。3、密码校验 输入字符串,若所输入的字符串与密码不一致则提示:Password error!,并重新提示 输入密码,当错误输入三次时退出软件返回 DOS.若所输入的字符串与密码一致则提示: Passwor

7、d correct!,并返回主菜单。4、在主菜单中选择退出项,则结束程序返回 DOS。 所以,在这次课程设计中的我最主要做的就是按照设计的主要内容的相关任务要求来仔细、认真、规范的完成自己的任务。三 实验设计的思想本次的密码校验程序的设计,主要的工作是设计菜单,设计密码,密码校验,退出菜单。其中设计菜单时我主要是在数据段中定义了相关的字符串stringstring6,再巧用回车换行与“*”,所以在代码段我对它们进行调用的时候就可以将菜单设计的美观与简练一点;在设计密码时我首先在数据段中定义了一个缓冲区password用于临时接收我用键盘设计输入的字符串,再用回车键完成设计操作;在密码校验阶段时

8、我在数据段定义另了一个缓冲区checkp,用于临时接收我用键盘输入的校验密码。校验的主要内容是运用repz cmpsb语句进行的串操作的校验过程。若是密码校验成功,即利用jmp output语句回到主菜单页面,否则,校验失败三次就利用jmp exit语句退出操作,总的来说密码校验你的思想还是很清晰明了的;最后的退出菜单的操作中,由于设计的需要,我直接使用了jmp exit语句来执行,这样可以使退出操作显得更简练一些。除此之外,我还定义了输入错误返回主菜单的操作,利用jmp repeated语句表示,在用户输入13之外的数字进行菜单操作时,显示提示语“The choice you had inp

9、ut error,please press any key return menu to continue!”提示用户重新返回菜单重新输入选择,这样可以将程序菜单的完整性补充完整。四 实验环境 4.1运行环境(1)软件环境 操作系统:Windows 7(2)硬件环境 处理器:Inter Core i5 内存:4.00GB 硬盘空间:500GB4.2开发工具与编程语言 (1)开发工具:Masm for Windows集成实验环境 V2012 (2)编程语言:汇编五 实验方案 先用在数据段定义的字符串stringstring6进行菜单的设计操作;接着定义一个缓冲区password用于临时接收用键盘

10、键入设置的密码并将其作为已知密码在其后进行校验工作;然后再定义一个缓冲区checkp用于临时接收用键盘键入的校验码,在调用cmp cl,checkp+1语句进行初步的位数比较之后再调用repz cmpsb进行深入的校验工作,最后调用jcxz errort1显示校验成功语句的提示,或是调用数据段中定义的error变量进行校验失败的提示或利用jmp exit语句退出操作;再然后我定义了一个exit程序代码用于操作菜单的退出;最后,调用了一个jmp repeate语句完善程序的操作功能,当用户输入13以外的数字操作菜单时,提示用户选择错误,并给予其重新返回菜单重新选择的机会。我本次的课程设计就是按照

11、如上的方案一步步的认真操作的,并在最后取得了任务的基本成功完成。六 实验流程图开始显示菜单输入选择Al=1?调用password1设置光标设置提示信息设置密码回车返回菜单转到nextAl=2转到next1调用ckeckpa设置光标设置es设置错误次数count设置校验提示信息输入校验码密码正确转到correct1Password error!count-1Count=0转到exitAl=3转到exit转到repeatePassword correct!按任意键返回菜单按任意键退出显示提示信息按任意键返回菜单YYYYY七 实验源代码DATAS SEGMENT ;此处输入数据段代码 string

12、db 0dh,0ah,*PASSWORD CHECK MENU*,0dh,0ah,0ah,$string1 db 0dh,0ah,* 1.Input password *,0dh,0ah,0ah,$string2 db 0dh,0ah,* 2.Password check *,0dh,0ah,0ah,$string3 db 0dh,0ah,* 3.Exit programme *,0dh,0ah,0ah,$string4 db 0dh,0ah,Please input choice to continue :,0dh,0ah,$ string5 db 0dh,0ah,*PASSWORD CHE

13、CK *,0dh,0ah,0ah,$string6 db 0dh,0ah,The choice you had input error,please press any key return menu to continue!,0dh,0ah,$inputp db 0dh,0ah,Please input your password:,0dh,0ah,$check db 0dh,0ah,Please input your password again to check:,0dh,0ah,$ correct db 0dh,0ah,Password correct! !,0dh,0ah,$ err

14、or db 0dh,0ah,Password error! !,0dh,0ah,$ password db 255,0 buf1 db 255 dup(0) checkp db 255,0 buf2 db 255 dup(0)count db 0 DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码output: mov ax,3 int 10h mov dx,offset str

15、ing ;提示语,主页面 mov ah,9 int 21h mov dx,offset string1 mov ah,9 int 21h mov dx,offset string2 mov ah,9 int 21h mov dx,offset string3 mov ah,9 int 21h mov dx,offset string5 mov ah,9 int 21h mov dx,offset string4 ;提示语,主页面 mov ah,9 int 21h choice: mov ah,01 int 21h cmp al,1 jnz next call password1 jmp OUT

16、PUTnext: cmp al,2 jnz next2 call checkpa jmp output next2: cmp al,3 jnz repeateexit: mov ah,4ch int 21h repeate: mov ax,3 int 10h mov dx,offset string5 mov ah,9 int 21h mov dx,offset string6 mov ah,9 int 21h mov ah,1 int 21h jmp output password1 proc mov ax,3 int 10h mov dx,offset string5 ;提示语,主页面 m

17、ov ah,9 int 21h mov ah,2 mov dl,0dh int 21h mov ah,2 mov dl,0ah int 21h mov dx,offset inputp mov ah,9 int 21h mov dx,offset password ;输入密码 mov ah,0ah int 21h mov ah,2 mov dl,0dh int 21h mov ah,2 mov dl,0ah int 21h password1 endp jmp OUTPUTcheckpa proc mov ax,3 int 10h mov dx,offset string5 mov ah,9

18、int 21h mov ah,2 mov dl,0dh int 21h mov ah,2 mov dl,0ah int 21h push ds ;si pop es ;di mov count,3 check1: mov dx,offset check mov ah,9 int 21h mov dx,offset checkp mov ah,0ah int 21h lea si,buf1 lea di,buf2 mov ch,0 mov cl, password+1 cmp cl,checkp+1 jnz perror inc cx repz cmpsb jcxz correct1 perror: mov dx,offset error mov ah,9 int 21h dec count jnz check1 jmp exit jmp continue

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论