汇编语言实时时钟程序设计

上传人:m**** 文档编号:167601664 上传时间:2022-11-04 格式:DOCX 页数:18 大小:116.74KB
收藏 版权申诉 举报 下载
汇编语言实时时钟程序设计_第1页
第1页 / 共18页
汇编语言实时时钟程序设计_第2页
第2页 / 共18页
汇编语言实时时钟程序设计_第3页
第3页 / 共18页
资源描述:

《汇编语言实时时钟程序设计》由会员分享,可在线阅读,更多相关《汇编语言实时时钟程序设计(18页珍藏版)》请在装配图网上搜索。

1、课程设计说明书姓 名:学 号:院 系:专 业:题 目实时时钟程序设计指导教师:职称:2012 年 6 月 22 日课程设计说明书11/12学年第二学期院系:专业:姓名:学号:课程设计题目: 实时时钟程序设计起迄日期:6月17日6月22日课程设计地点:指导教师:系 主 任:下达任务书日期: 2012 年 6月 17 日课程设计任务书1设计目的:1)培养学生文献检索的能力,特别是如何利用Internet检索需要的文献资料。2)培养学生综合分析问题、发现问题和解决问题的能力。3)培养学生运用知识的能力和工程设计的能力。4)提高学生课程设计报告撰写水平。2设计内容和要求(包括原始数据、技术参数、条件、

2、设计要求等):设计内容:设计一个根据所学汇编语言课程的知识,熟练8086汇编语言的编程原理,和程序设 计思想,编写一个实时时钟程序进一步提高综合运用知识的能力。设计要求:每隔一秒显示系统时钟;可以重复输入,有退出键功能。3设计工作任务及工作量的要求包括课程设计说明书、图纸、实物样品 等设计工作任务及工作量的要求:1)根据课程设计题目,收集和学习相关知识,确定编程方案;2)用相关软件编写程序代码,实现基本要求;3)撰写课程设计报告一一可利用Visio或Word等软件画出相关的程序流程图,列出相应的程序源代码,说明设计过程中遇到的问题和解决问题的方法,附参考资料。课程设计任务书4主要参考文献:1

3、沈美明,温冬禅.IBM PC汇编语言程序设计.清华大学出版社,第二版2 刘丽莉汇编语言程序设计北京大学出版社,20105设计成果形式及要求:1)撰写课程设计报告;2)程序流程图1份(可手画);3)程序清单1份。6工作计划及进度:2012年 6月17日 6月18日收集资料,学习相关应用软件和汇编知识;6月19日 6月20日完成程序流程图;编写相关的程序;6月21日 6月22日完成课程设计报告,答辩。系主任审查意见:签字:2012年6月17日目录第一章 课题设计目的内容及要求 61.1 目的 . . . . . . . .61.2 内容 61.3 要求 6第二章 程序流程图设计 22.1 主流程图

4、设计 22.2 子流程图设计错误!未定义书签。第三章 程序段落的说明 831 光标的设立和隐藏 832 调用系统的时间 533 判断是否有键盘的输入 6第四章 程序调试说明、结果记录与分析 741 程序调试的过程 742 调试结果 743 分析结果 8第五章 总结与体会 8参考文献 8附 录 91程序流程图 92程序清单 11第一章 课题设计目得内容及要求1.1 目得1)培养学生文献检索的能力,特别是如何利用 Internet 检索需要的文献资 料。2)培养学生综合分析问题、发现问题和解决问题的能力。3)培养学生运用知识的能力和工程设计的能力。4)提高学生课程设计报告撰写水平。1.2 内容设计

5、一个根据所学汇编语言课程的知识,熟练8086汇编语言的编程原理,和 程序设计思想,编写一个实时时钟程序进一步提高综合运用知识的能力。1.3 要求每隔一秒显示系统时钟;可以重复输入,有退出键功能。第二章 程序流程图设计2.1 主流程图设计由方案设计分析可知,此次设计比较简单,先初始化程序,然后设立光标, 在光标移动时,不断地取时,取分,取秒,并不断的循环。在循环的过程中,当 按下ESC键时退出程序;当按下其它键时,程序继续运行,并显示时间界面,再 按下 ESC 键时,程序又将退出。流程图设计:当初始化后,设定一个光标用来显示时间的时、分、秒,并 将光标隐藏。流程图有两个分支,表示有两个判断,当时

6、分秒取完后,判断是 否在键盘上有输入,如果没有输入,则返回到光标定位,若有输入判断是否为 ESC键的ASC码,如果是则退出程序,程序结束,过程比较明了,流程图分支不 多,但功能能够很好的实现。流程图如 1 所示(开始)1r初始化1F设立光标1T获取时间,显示时理T显示分钟1f显示秒钟图 1 主程序设计流程图2.2 子流程图设计可知,在时间的获取时,需要时、分、秒分别获取,显示时使用的是相应的ASCII码。加上分隔符“:”,共同组成完整时钟显示,我们对子程序做流程图,如图2所示。图 2 子程序流程图第三章 程序段落的说明31 光标的设立和隐藏光标的不停移动,使时间能不停地显示时间的时分秒,并使其

7、显示界面不消失,并随着系统时间的变化而同步变化,隐藏光标使界面看起来更美观。程序如下:mov dh,0ah; 行数mov dl,35;列数mov bh,0;页数mov ah,2int 10h; 确定光标的位置,使其居在中间mov cx,2000hmov ah,01hint 10h;隐藏光标3.2 调用系统的时间获取系统的时间,用程序将系统的时间调用,使显示的时间和系统的时间同步变化,其中时间的时分秒显示都是需要先转换成相应的ASCII码,再显示在屏幕上。获取系统时间:mov ah,02int 1ah push cx push dx时的获取: xor dl,dlmov dl,ch mov cl,

8、4 shr dl,cladd dl,30hmov ah,02hint 21hmov dl,chadd dl,0fh add dl,30hmov ah, 02int 21h mov dl,:mov ah,02int 21h分的获取: pop dxpop cx push dx xor dl,dl mov dl,cl mov dh,cl mov cl,4 shr dl,cl;系统时间调用;现场保护;dl清零;cx高四位给dl;最终dl中为ch的高四位;转换成ASCII码;光标处显示时的第一位;转换成ASCII码;光标处显示时的第二位;光标处显示“:”;出栈,恢复现场;置光标位置add dl,30h;

9、转化成相应的ASCI I码mov ah,02int 21h; 光标处显示分的第一位mov cl,dhand cl,0fhadd cl,30h;转化成相应的ASCII码mov dl,clmov ah,02int 21h;光标处显示分的第二位mov dl,:mov ah,02int 21h;光标处显示“:”pop dx;出栈,恢复现场mov bl,dhmov cl,4shr dh,cladd dh,30h;转化成相应的ASCII码mov dl,dhmov ah,02int 21h;光标处显示秒的第一位mov cl,bland cl,0fhadd cl,30h;转化成相应的ASCII码mov dl,

10、clmov ah,02int 21h;光标处显示秒的第二位秒的获取:3.3 判断是否有键盘输入判断是否有输入,当有字符时判断是否为ESC,若是则退出程序,如果不是程序继续运行。程序段:a1:mov ah,0bh;调用 DOS 功能 0BH 检测键盘是否有输入int 21hcmp al,00h;检测是否有输入jne a2;有则跳到k2jmp go;没有则回到goa2:mov ah, 08hint 21hcmp al,lbh;判断是否为ESCje exit;是则退出jmp go;不是则跳到goexit:mov ah,4chint 21h;退出程序第四章 程序调试说明、结果记录与分析41 程序调试的

11、过程程序调试,是将编制的程序投入实际运行前,用手工或编译程序等方法进行 测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不 可少的步骤。编完计算机程序,得调试所写程序是否正确,是否能满足所要求的 功能。写好程序后,对 DOS 系统界面调用功能指令不太熟悉,界面出来后时间显示 在右上角,并且光标不能消失,最后经过查询,运用了 10号中断,最后把光标 隐藏了,并使时间显示在界面的中间位置。在判断是否在键盘上有输入时,开始 不会用键盘扫描功能,没有调试出来,经过向同学请教最后调用 DOS 功能 0bh, 并用08h来判断是否是ESC输入,最终实现了退出功能。4.2 调试结果运行程

12、序,时间显示界面,如图 3 所示:4.3分可 置,单 序设计11 IaJ直,单序设计界面消失消失,19:28:45央位央位,程,程第五章 总结与体会参考文献1 沈美明,温冬禅.IBM PC汇编语言程序设计.清华大学出版社,第二版2 刘丽莉汇编语言程序设计北京大学出版社, 2010附录1 程序流程图始输入为ESC吗?设立光标显示秒钟结束显示分钟初 始 化获取时间,显示时主程序设计流程图系统时间调用:mov ah, 02 int lah CX, DX 进出栈 使用实现时分秒的显示1时的显示,将储存的数 值转换成相应的ASCII 码,显示在光标位置上1F分的获取,将分的数值 转换成相应的ASCII码

13、1秒的获取,将储存的数 值转换成相应的ASCII 码显示在屏幕上子程序流程图2程序清单;此处输入堆栈段代码datas segment datas ends stacks segment stacks ends codes segmentassume cs:codes,ds:datas,ss:stacks;行数;列数;页数;确定光标的位置,使其居在中间start: mov ax,datas mov ds,ax go: mov dh,0ah mov dl,35 mov bh,0 mov ah,2 int 10h mov cx,2000hmov ah,01hint 10h;隐藏光标xor dl,dl

14、;dl清零mov dl,ch;cx高四位给dlmov cl,4shr dl,cl;最终dl中为ch的高四位add dl,30h;转换成ASCII码mov ah,02hint 21h; 光标处显示时的第一位mov dl,chadd dl,0fhadd dl,30h;转换成ASCII码mov ah, 02int 21h;光标处显示时的第二位mov dl,:mov ah,02int 21h;光标处显示“:”pop dxpop cx;出栈,恢复现场push dx;置光标位置xor dl,dlmov dl,clmov dh,clmov cl,4shr dl,cladd dl,30h;转化成相应的ASCI

15、I码mov ah,02int 21h; 光标处显示分的第一位mov cl,dhand cl,0fhadd cl,30h;转化成相应的ASCII码mov dl,clmov ah,02int 21h;光标处显示分的第二位mov dl,:mov ah,02int 21h;光标处显示“:”pop dx;出栈,恢复现场mov bl,dhmov cl,4shr dh,cladd dh,30h;转化成相应的ASCII码mov dl,dhmov ah,02int 21h mov cl,bl and cl,0fh add cl,30h mov dl,cl mov ah,02 int 21h a1: mov ah,0bhint 21h cmp al,00h jne a2 jmp go a2: mov ah, 08hint 21h cmp al,1bh je exit jmp go exit: mov ah,4chint 21h;光标处显示秒的第一位;转化成相应的ASCII码;光标处显示秒的第二位; 调用 dos 功能 0bh 检测键盘是否有输入;如果有输入,贝U跳转到a2;如果没有输入,则跳转到go; 调用 dos 功能 08h 判断键盘输入的字母;判断键盘输入是否为esc;如果是则跳转到exit;重新跳回开头;结束dos以及跳出语句codes endsend start

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!