汇编语言 显示系统日期时间

上传人:第*** 文档编号:34035478 上传时间:2018-02-20 格式:DOC 页数:16 大小:144.50KB
返回 下载 相关 举报
汇编语言 显示系统日期时间_第1页
第1页 / 共16页
汇编语言 显示系统日期时间_第2页
第2页 / 共16页
汇编语言 显示系统日期时间_第3页
第3页 / 共16页
汇编语言 显示系统日期时间_第4页
第4页 / 共16页
汇编语言 显示系统日期时间_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《汇编语言 显示系统日期时间》由会员分享,可在线阅读,更多相关《汇编语言 显示系统日期时间(16页珍藏版)》请在金锄头文库上搜索。

1、学 号: 201040410213课 程 设 计题 目 显示系统日期时间程序设计教 学 院 计算机学院专 业 计算机科学与技术班 级 2 班姓 名 杨琛指导教师 姚莉2012 年 6 月 10 日1目 录一 概述 .11.1 课程设计的目的 .11.2 课程设计的要求 .2二 总体方案设计 .2三 详细设计 .43.1 程序流程图 .43.2 时间显示程序代码 .5四 程序的调试与运行结果说明 .104.1 程序运行结果 .10五 课程设计总结 .12参考文献 .142一 概述1.1 课程设计的目的1理解和掌握该课程中的有关基本概念,程序设计思想和方法。2培养综合运用所学知识独立完成课题的能力

2、。3培养勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。4掌握从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。5掌握利用单片机接口技术解决问题的基本方法。6掌握和理解对知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力。1.2 课程设计的要求1查阅相关资料,自学具体课题中涉及到的新知识,能够按照老师的要求对待设计的系统的程序流程图进行正确地绘制。3在老师的指导下,能够写出相应的源程序代码,采用结构化、模块化程序设计方法,功能要完善,界面要美观。4所

3、设计的系统原则上要能够运行无误,结果准确。在条件允许的情况下,能够最终将系统所要实现的功能演示出来。3二 总体方案设计通过主函数中调用 2 种宏和 2 种功能函数分别为调用系统时间的函数和调用系统日期函数来实现全部显示系统时间和日期。功能宏和函数如下:宏 1:CLEAR_SCREEN MACRO:它实现了清屏和修改界面属性的功能,使界面更美观。宏 2:SHOW MACRO:它实现了显示定义在数据段中的字符串的功能,也就是显示提示语句。函数 1:DATEDISPLAY:它实现了显示日期的功能。函数 2:TIMEDISPLAY:它实现了显示时间的功能。函数 EXIT:函数来退出程序。在程序设计中我

4、承担的是系统时间显示的程序设计,通过被主函数调用来显示系统时间。程序中分别用 CH,CL,DH 来存放时分秒,来传入并显示系统时间。4三 详细设计3.1 程序流程图图 1 ;程序流程图53.2 时间显示程序代码STACK SEGMENT STACKDW 200 DUP (?)STACK ENDSDATA SEGMENTSPACE DB 1000 DUP ( )STR1 DB 40 DUP ( ),9 DUP( ),WELCOME TO TIMEMASTER!,52 DUP( )DUICHU DB 240 DUP ( ),9 DUP( ),THANK YOU VERY MUCH!,412 DUP

5、( )PATTERN DB 6 DUP ( ),0C9H,26 DUP (0CDH),0BBH,6 DUP ( )DB 6 DUP ( ),0BAH,26 DUP (20H),0BAH,6 DUP ( )DB 6 DUP ( ),0C8H,26 DUP (0CDH),0BCH,6 DUP ( )DBUFFER DB 8 DUP (:),12 DUP ( )DBUFFER1 DB 20 DUP ( )STR DB 0DH,0AH, PLEASE INPUT DATE(D) OR TIME(T) OR QUIT(Q): $DATA ENDSCODE SEGMENTASSUME CS:CODE,DS

6、:DATA,ES:DATA,SS:STACKSTART: MOV AX,0001H INT 10H ;设置显示方式为 40*25 彩色文本方式MOV AX,DATAMOV DS,AXMOV ES,AXMOV BP,OFFSET SPACE MOV DX,0B00H ;0B00MOV CX,1000MOV BX,0020HMOV AX,1300HINT 10HMOV BP,OFFSET STR1;显示WELCOME TO TIMEMASTER! MOV DX,0600H6MOV CX,120MOV BX,000EHMOV AX,1301HINT 10HMOV BP,OFFSET PATTERN

7、;显示矩形条 MOV DX,0B00HMOV CX,120MOV BX,004EHMOV AX,1301HINT 10HLEA DX,STR ;显示提示信息MOV AH,9INT 21HMOV AH,1 ;从键盘输入单个字符INT 21HCMP AL,44H ;AL=D?JNE ACALL DATE ;显示系统日期A: CMP AL,54H ;AL=T?JNE B CALL TIME ;显示系统时间 B: CMP AL,51H ;AL=Q? JNE STARTMOV BP,OFFSET DUICHU;显示THANK YOU VERY MUCH! MOV DX,0600HMOV CX,520MO

8、V BX,004EHMOV AX,1301HINT 10HMOV AX,4C00H ;返回 dos 状态INT 21HDATE PROC NEAR ;显示日期子程序7DISPLAY:MOV AH,2AH ;取日期INT 21HMOV SI,0MOV AX,CXMOV BX,100DIV BLMOV BL,AH ;AH=12AL=20CALL BCDASC1 ;日期数值转换成相应的 ASCII 码字符MOV AL,BLCALL BCDASC1INC SIMOV AL,DHCALL BCDASC1INC SIMOV AL,DLCALL BCDASC1MOV BP,OFFSET DBUFFER1MO

9、V DX,0C0DHMOV CX,20MOV BX,004EHMOV AX,1301HINT 10HMOV AH,02H ;设置光标位置MOV DX,0300HMOV BH,0INT 10HMOV BX,0018HREPEA: MOV CX,0FFFFH ;延时REPEAT:LOOP REPEATDEC BXJNZ REPEAMOV AH,01H ;读键盘缓冲区字符到 AL 寄存器INT 16HJE DISPLAY8JMP STARTMOV AX,4C00HINT 21HRETDATE ENDPTIME PROC NEAR ;显示时间子程序DISPLAY1:MOV SI,0MOV BX,100

10、DIV BLMOV AH,2CH ;取时间INT 21HMOV AL,CHCALL BCDASC ;将时间数值转换成 ASCII 码字符INC SIMOV AL,CLCALL BCDASCINC SIMOV AL,DHCALL BCDASCMOV BP,OFFSET DBUFFERMOV DX,0C0DHMOV CX,20MOV BX,004EHMOV AX,1301HINT 10HMOV AH,02HMOV DX,0300HMOV BH,0INT 10HMOV BX,0018HRE: MOV CX,0FFFFHREA: LOOP READEC BX9JNZ REMOV AH,01HINT 16HJE DISPLAY1JMP STARTMOV AX,4C00HINT 21HRETTIME ENDPBCDASC PROC NEAR ;时间数值转换成 ASCII 码字符子程序PUSH BXCBWMOV BL,10DIV BLADD AL,0MOV DBUFFERSI,ALINC SIADD AH,0MOV DBUFFERSI,AHINC SIPOP BXRETBCDASC ENDPBCDASC1 PROC NEAR

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号