资源描述:
《微机原理课程设计 键盘接收日期并显示.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、微机综合实验课程设计报告书姓名:班级:08级电信班学号:成绩:设计题目分析:通过课程设计使学生更进一步了解掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学的知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法用汇编语言设计一数字时钟程序,基于8086微型计算机,利用汇编设计系统时间显示,该设计为软件设计,旨在锻炼同学们编程能力和加深对汇编程序的理解。要求:(1)实现年月日时分秒的计时,并显示于屏幕中央(2)软件设计1.功能简介2.流程图3.程序(3)显示界面设计步骤详细介绍:本课程
2、设计任务要求在运行时,屏幕分时显示“年、月、日”的形式来显示本机的系统的日期,在按大写字母D时。由此可知,首先定义光标显示界面,然后调用BIOS中断,读取系统日期,并将调用的二进制表示的日期转换成ASCLL码,并将日期数存入显存区,最后将存在系统内存区的时间用字符串的形式显示出来。在按下T之后,屏幕将以“时:分:秒”的形式显示本机的系统的时间,首先定义光标显示界面,然后调用BIOS中断,读取系统时间,然后将调用的二进制转换成ASCLL码,最后在系统的内存区以字符串的形式显示,由于获取了的系统时间不会自动的刷新,所以我们要设计成循环的方式来不断获取系统的
3、时间,这样就形成了会跳动的电子钟了。程序一旦进入运行,就将不间断的在显示屏显示时间,要想程序停止运行,按esc即可退出。关键技术分析:设计中遇到的问题和解决的步骤、方法:设计结果:可以显示日期和时间调用转换子程序将年份数值转换成相应的ASCII码字符调用系统日期MOVAH,2AHINT21HCX年号DH月份DL日期BXDBUFFER的偏移地址ALCHAH00H调用显示月份子程序调用显示日期子程序调用显示分子程序开始调用转换子程序将月份数值转换成相应的ASCII码字符调用转换子程序将日数值转换成相应的ASCII码字符调用系统时间MOVAH,2CHINT2
4、1HCH小时CL分钟DH秒数BXDBUFFER1的偏移地址调用显示小时子程序调用显示年份子程序调用显示秒子程序调用转换子程序将小时转换成相应的ASCII码字符调用转换子程序将分钟数值转换成相应的ASCII码字符调用转换子程序将秒数值转换成相应的ASCII码字符用9号功能显示日期用9号功能显示时间SHIJIAN是否有输入Y结束ANA调用转换子程序将年份数值转换成相应的ASCII码字符调用系统日期MOVAH,2AHINT21HCX年号DH月份DL日期BXDBUFFER的偏移地址ALCHAH00H调用显示月份子程序调用显示日期子程序调用显示分子程序开始调用转
5、换子程序将月份数值转换成相应的ASCII码字符调用转换子程序将日数值转换成相应的ASCII码字符调用系统时间MOVAH,2CHINT21HCH小时CL分钟DH秒数BXDBUFFER1的偏移地址调用显示小时子程序调用显示年份子程序调用显示秒子程序调用转换子程序将小时转换成相应的ASCII码字符调用转换子程序将分钟数值转换成相应的ASCII码字符调用转换子程序将秒数值转换成相应的ASCII码字符用9号功能显示日期用9号功能显示时间SHIJIAN是否有输入Y结束ANA附录1:程序运行截图(2张)日期显示:时间显示:附录2:源程序列表(带注释)STACKSEG
6、MENTSTACKDW200DUP(?)STACKENDSDATASEGMENTSPACEDB1000DUP('')PATTERNDB6DUP(''),0C9H,26DUP(0CDH),0BBH,6DUP('')DB6DUP(''),0BAH,26DUP(20H),0BAH,6DUP('')DB6DUP(''),0C8H,26DUP(0CDH),0BCH,6DUP('')DBUFFERDB8DUP(':'),12DUP('')DBUFFER1DB20DUP('')STRDB0DH,0AH,'PLEASEINPUTDATE(D)ORTIME(T)ORQU
7、IT(Q):$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,0001H;设置显示方式为40*25彩色文本方式INT10HMOVAX,DATAMOVDS,AXMOVES,AXMOVBP,OFFSETSPACEMOVDX,0B00HMOVCX,1000MOVBX,0040HMOVAX,1300HINT10HMOVBP,OFFSETPATTERN;显示矩形条MOVDX,0B00HMOVCX,120MOVBX,004EHMOVAX,1301HINT10HLEADX,S
8、TR;显示提示信息MOVAH,9INT21HMOVAH,1;从键盘输入单个字符INT21HCM