资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
-大学微机原理课程设计报告学院: 电气学院 班级: : *: 指导教师: 时间: 2021年1月15日 一课程设计目的:1.结合微型计算机原理课程的学习,进一步稳固已学的知识,同时针对计算机原理知识的具体应用,学会对系统中DOS和BIOS的使用。学会使用屏幕编辑程序EDIT,弄懂汇编程序的上级过程以及如何运用DEBUG软件进展汇编程序的调试。2.学会将课本上的理论知识和实际有机的结合起来,锻炼自己分析解决实际问题的能力。提高适应实际,实践编程的能力。3.为了进一步稳固学习的理论知识,增强学生对所学知识的实际应用能力和运用所学的知识解决实际问题的能力,开场为期两周的课程设计。通过设计使学生在稳固所学知识的根底之上具有初步的单片机系统设计与应用能力。二课程设计容: 1.承受年、月、日信息并显示的设计 为掌握响铃使用方法,并掌握年、月、日输入方法。编写程序,先显示“WHAT IS THE DATA (MM/DD/YY)?并响铃一次,然后承受键盘输入的月/日/年信息,并显示。2. 字符串匹配设计为掌握提示信息的设置方法及读取键入信息的方法,编写程序实现两个字符串比较,如一样则显示“MATCH,否则显示“NO MATCH。3.从键盘输入数据并显示的设计为掌握键盘承受数据的方法,并了解将键盘数据显示时必须转换为ASCII码的原理,编写程序,将键盘承受到的四位十六进制数据转换为等值的二进制数显示。4.字符和数据的显示设计为掌握字符和和数据的显示方法。编写程序,先显示信息:INPUT STRING,THE END FLAG IS$,再承受字符。如为0-9,则计数器加1,并显示数据;如为非数字,则直接显示,但不计数。三典型题目举例:1接收年月日信息并显示的设计为掌握响铃使用方法,并掌握年、月、日输入方法。编写程序,先显示“WHAT IS THE DATA (MM/DD/YY)?并响铃一次,然后承受键盘输入的月/日/年信息,并显示。返回DOS输出响铃字符显示WHAT IS THE DATA段存放器和堆栈初始化入口流程图:分3次输入月、日、年分3次显示月、日、年程序代码及注释:DATA SEGMENTS1 DB WHAT IS THE DATA (MM/DD/YY)? ,0DH,0AH,$ ;显示字符串S2 DB MONTH,0DH,0AH,$ ;月字符串S3 DB DAY,0DH,0AH,$ ;日字符串S4 DB YEAR,0DH,0AH,$ ;年字符串S5 DB 4 ;存放承受的月DB ?DB 4 DUP($)S6 DB 4 ;存放承受的日 DB ? DB 4 DUP($)S7 DB 6 ;存放承受的年DB ?DB 6 DUP($)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA ;段存放器初始化START:MOV A*,DATA MOV DS,A*MOV D*,OFFSET S1 ;显示提示信息MOV AH,9INT 21HMOV DL,07H ;响铃一次 MOV AH,2 INT 21H MOV C*,0FFFH ;延迟,用外双重循环实现L1:PUSH C* MOV C*,0FFFFHL2: LOOP L2 POP C* LOOP L1MOV D*,OFFSET S5 ;承受月数据,放入变量MOV AH,0AHINT 21H MOV D*,OFFSET S6 ;承受日数据,放入变量 MOV AH,0AHINT 21H MOV D*,OFFSET S7 ;承受年数据,放入变量MOV AH,0AH INT 21HMOV DL,0DH ;显示回车MOV AH,2 INT 21HMOV DL,0AH ;显示换行 MOV AH,2 INT 21HMOV D*,OFFSET S5 ;显示月数据 ADD D*,2MOV AH,9 INT 21HMOV D*,OFFSET S2 ;显示月字符MOV AH,9 INT 21H MOV D*,OFFSET S6 ;显示日数据ADD D*,2MOV AH,9INT 21HMOV D*,OFFSET S3 ;显示日字符 MOV AH,9 INT 21H MOV D*,OFFSET S7 ;显示年数据 ADD D*,2 MOV AH,9 INT 21H MOV D*,OFFSET S4 ;显示年字符 MOV AH,9 INT 21H MOV AH,4CH ;返回DOS INT 21HCODE ENDSEND START结果截图:2字符串的匹配设计为掌握提示信息的设置方法及读取键入信息的方法。编写程序实现两个字符串比较。如一样,则显示“MATCH,否则,显示“NO MATCH。程序清单:CRLF MACRO ;显示回车MOV DL,0DHMOV AH,02HINT 21H MOV AH,02HMOV DL,0AHINT 21HENDMDATA SEGMENTMESS1 DB MATCH,0DH,0AH,$MESS2 DB NO MATCH,0DH,0AH,$MESS3 DB INPUT STRING1!,0DH,0AH,$MESS4 DB INPUT STRING2!,0DH,0AH,$MA*LEN1 DB 100STRING1 DB 100 DUP(?)MA*LEN2 DB 100STRING2 DB 100 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV A*,DATA MOV DS,A* MOV ES,A* MOV AH,09H MOV D*,OFFSET MESS3 INT 21H ;显示提示信息1 MOV AL,MA*LEN1 MOV B*,OFFSET STRING1 MOV B*,AL ;最大字符缓冲 MOV AH,0AH MOV D*,OFFSET STRING1 INT 21H ;接收键入的字符串1 CRLF MOV AH,09H MOV D*,OFFSET MESS4 INT 21H ;显示提示信息2 MOV AL,MA*LEN2 MOV B*,OFFSET STRING2 MOV B*,AL ;最大字符缓冲设置 MOV AH,0AH MOV D*,OFFSET STRING2 INT 21H ;接收键入的字符串2 CRLFCLD LEA SI,STRING1 ;字符串1的地址送给SI MOV CL,SI+1 ;字符串1的字符数送给C* MOV CH,0BEING: LEA DI,STRING2 ;字符串2的地址送给DI MOV DL,DI+1 ;字符串2的字符数送给D* MOV DH,0J1: MOV AL,SI+2 ;字符串1的第一个字符在字符串2中匹配 CMP DI+2,AL JE J3 ;匹配成功则跳转J2: INC DI ;指向字符串2下一个字符 DEC D* JZ NOMAT ;字符串2完,不匹配 JMP J1
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号