微机原理与接口技术课程设计报告系统时间显示

上传人:s9****2 文档编号:555370095 上传时间:2024-03-08 格式:DOC 页数:15 大小:171.52KB
返回 下载 相关 举报
微机原理与接口技术课程设计报告系统时间显示_第1页
第1页 / 共15页
微机原理与接口技术课程设计报告系统时间显示_第2页
第2页 / 共15页
微机原理与接口技术课程设计报告系统时间显示_第3页
第3页 / 共15页
微机原理与接口技术课程设计报告系统时间显示_第4页
第4页 / 共15页
微机原理与接口技术课程设计报告系统时间显示_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《微机原理与接口技术课程设计报告系统时间显示》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计报告系统时间显示(15页珍藏版)》请在金锄头文库上搜索。

1、 微机原理与接口技术 课程设计报告设计题目: 系统时间显示 系 别: 年级专业: 学 号:学生姓名:指导教师: 引言汇编语言(Assembly Language)是面向机器的程序设计语。在汇编语合中,用助记符(Mnemonic)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编。目录摘要41微

2、机原理课程设计任务及要求51.1主要内容及目标51.2具有的设计条件51.3计划学生数及任务51.4计划设计进程52总体方案设计62.1 整体设计思想62.2 任务分配62.3 时间安排63详细设计63.1 DOS 功能调用63.2 程序编程84 程序流程图114.1 程序流程114.2 程序显示界面125 程序调试126 实验结果分析127 设计过程与总结138 附源程序149 参考资料15摘要 本文的主要内容是介绍用汇编语言(8086/DOS)实现一个显示系统时间的程序,屏幕中间显示系统时间,本文中的电子时钟还可以用键盘输入的方法修改当前的时间,以便在界面上显示正确的时间。在设计过程中,首

3、先是按照题目所给的具体要求,根据自己的设计思路,画出流程图,然后查阅相关资料,写出流程图中的各段子程序,把子程序放在心研集成环境中进行调试,找出程序中的错误,并进行修改和不断完善,以得到符合要求的程序。有了这些子程序后,我们就可以根据要求写出源程序,但在写源程序的过程中遇到了很多困难,经过反复调试跟修改,最终得到了符合要求的源程序。AbstractThe main content of this article is to introduce the use of assembly language (8086/DOS) time to achieve a display system pro

4、gram, middle of the screen displays the system time clock in this article can also use the electronic method of keyboard input to modify the current time to display in the interface the correct time. In the design process, the first title given in accordance with the specific requirements, according

5、 to their own design ideas, draw flowchart, and then access to relevant information, write the scripts in the process flow diagram, the routine integration of the environment on the heart study debugging, to find bugs in the program and make changes and continue to improve, to get to meet the requir

6、ements of the program. With these routines, we can write the source code on request, but in the process of writing the source program encountered many difficulties with the changes after repeated testing, and ultimately get to meet the requirements of the source.1微机原理课程设计任务及要求1.1主要内容及目标设计一个时间显示系统,运行

7、时,在屏幕的右上角以“时:分:秒”的形式显示出来。1.2具有的设计条件 PC机一台,EL教学实验箱一台及汇编程序。1.3计划学生数及任务(1):明确课题对程序功能及硬件条件(2):把复杂问题分解为若干模块,确定各模块处理方法,画出流程图。(3):存储器资源分配(4):编制程序,根据流程图精心选择合适的指令和寻址方式来编制源程序(5):对程序进行汇编,调试和修改,直到程序运行结果正确为止。1.4计划设计进程第一周设计任务:(1):明确课题对程序功能,运算精度等方面的要求及硬件条件(2):把复杂问题分解为若干模块,确定各模块处理方法,画出流程图。(3):存储器资源分配第二周设计任务:(4):编制程

8、序,根据流程图精心选择合适的指令和寻址方式来编制源序(5):对程序进行汇编,调试和修改,直到程序运行结果正确为止。2总体方案设计2.1 整体设计思想此程序要求结构化的显示系统时间。程序要求能多次执行以上两种操作并有退出选项。则我们可以设计两个选项以供用户选择:system 和q退出程序。两个选项分别可以用两个过程实现其功能。在DOS 环境下完成, 必须用到的DOS 功能调用;取当前系统时间:功能号为2CH,返回值送入CX,DX 寄存器中;在转换为ASCII 码显示出来。2.2 任务分配小组成员共三位,任务分别为:了解并利用DOS 功能调用;模块程序的编写;程序流程图的设计。最后汇总编写完整程序

9、,并上机调试运行。2.3 时间安排第一周设计任务:每个人根据自己的任务参阅不同的资料,把自己的任务模块完成,最后将所有的汇总并讨论编写最终的设计程序。第二周设计任务:将最终的程序上机汇编调试,解决调试过程中遇到的问题;设计可以运行后,总结以前的内容写一份总的设计报告。3详细设计3.1 DOS 功能调用应用INT 21H系统功能调用的方法如下: 入口参数送指定的寄存器或内存; 功能号送AH中; 执行INT 21H软中断指令; 1键盘输入并显示(1号功能调用) 格式: MOV AH, 01H INT 21H 功能:按下任何键,将其对应字符的ASCII码送入AL中,并在屏幕上显示该字符。如果按下的是

10、CtrlBreak组合键,则终止程序执行。1号功能调用无须入口参数,出口参数在AL中。 2键盘输入但不显示输入字符(8号功能调用) 格式: MOV AH, 08H INT 21H功能:同1号功能调用,但字符不在屏幕上显示。 3屏幕显示一个字符(2号功能调用) 格式: MOV DL, 字符 MOV AH, 02H INT 21H功能:将置入DL寄存器中的字符在屏幕上显示输出。 4 屏幕显示字符串(9号功能调用) 格式: MOV DX, 字符串的偏移地址 MOV AH, 09H INT 21H 功能:在屏幕上显示字符串。 在使用9号功能调用时,应当注意以下问题。 待显示的字符串必须先放在内存一数据

11、区(DS段)中,且以$符号作为结束标志。 应当将字符串首地址的段基址和偏移地址分别存入DS和DX寄存器中。 5字符串输入功能调用(0AH号功能调用) 格式: MOV DX, 已定义缓冲区的偏移地址 MOV AH, 0AH INT 21H 功能:从键盘接收字符,并存放到内存缓冲区。 在使用0AH号功能调用时,应当注意以下问题。 执行前先定义一个输入缓冲区,缓冲区内第一个字节定义为允许最多输入的字符个数,字符个数应包括回车符0DH在内,不能为“0”值。第二个字节保留,在执行程序完毕后存入输入的实际字符个数。从第三个字节开始存入从键盘上接收字符的ASCII码。若实际输入的字符个数少于定义的最大字符个

12、数,则缓冲区其他单元自动清0。若实际输入的字符个数大于定义的字符个数,其后输入的字符丢弃不用,且响铃示警,一直到输入回车键为止。整个缓冲区的长度等于最大字符个数再加2。 应当将缓冲区首地址的段基址和偏移地址分别存入DS和DX寄存器中。 6返回DOS操作系统(4CH号功能调用) 格式: MOV AH, 4CH INT 21H 功能:终止当前程序的运行,并把控制权交给调用的程序,即返回DOS系统,屏幕出现DOS提示符,如“C: ”,等待DOS命令。 7设置系统日期(2BH号功能调用) 格式: MOV CX, 年号 MOV DH, 月号 MOV DL, 日期 MOV AH, 2BH INT 21H

13、功能:设置有效的年、月、日。当AL0时,设置成功;当AL0FFH时,设置失败。 8设置系统时间(2DH号功能调用) 格式: MOV CH, 小时 MOV CL, 分 MOV DH, 秒 MOV AH, 2DH INT 21H 功能:设置有效的时间。当AL0时,设置成功;当AL0FFH时,设置失败。 9取系统当前时间2CH功能调用格式: MOV AH, 2CH INT 21H执行结果CX:DX中得到当前时间的二进制数3.2 程序编程STACK1 SEGMENT STACK DW 200 DUP (?)STACK1 ENDS;堆栈段定义HEX_DEC macro ;宏定义十六进制转换为十进制 push dx push cx mov bl,10d mov al,ch xor ah,ah div bl add al,30h add ah,30h mov ds:si,al mov ds:si+1,ah add si,3 pop cx pop dx endmdata segmentdis db - - - - - - -,13,10,$systime db * ,?,?,:,?,?,:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

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