电子表程序设计

上传人:F****n 文档编号:100285625 上传时间:2019-09-23 格式:DOC 页数:31 大小:192.50KB
返回 下载 相关 举报
电子表程序设计_第1页
第1页 / 共31页
电子表程序设计_第2页
第2页 / 共31页
电子表程序设计_第3页
第3页 / 共31页
电子表程序设计_第4页
第4页 / 共31页
电子表程序设计_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《电子表程序设计》由会员分享,可在线阅读,更多相关《电子表程序设计(31页珍藏版)》请在金锄头文库上搜索。

1、武汉理工大学微机原理与接口技术课程设计说明书 武汉理工大学微机原理与接口技术课程设计说明书 课程设计任务书课程设计任务书 学生姓名:学生姓名: 00000000000000 专业班级:专业班级: 自动化自动化 08040804 指导教师:指导教师: 苏义鑫苏义鑫 工作单位:工作单位: 自动化学院自动化学院 题题 目目: : 电子表程序设计电子表程序设计 初始条件:带有编辑器、汇编程序、连接程序和调试程序的电脑一台。初始条件:带有编辑器、汇编程序、连接程序和调试程序的电脑一台。 要求完成的主要任务要求完成的主要任务: : (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 采用汇编语言

2、设计一个电子表程序,在屏幕上以七段数码管的形式显示本机时间,采用汇编语言设计一个电子表程序,在屏幕上以七段数码管的形式显示本机时间, 精确到秒。按精确到秒。按 S S 启动,按启动,按 T T 停止,按停止,按 P P 暂停。按暂停。按 Q Q 退出程序。退出程序。 (1)设计任务及要求分析 (2)方案比较及认证说明 (3)系统原理阐述 (4)软件设计课题需要说明:软件思想,流程图,源程序及程序注释 (5)调试记录及结果分析 (6)总结 (7)参考资料 (8)附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图 时间安排:时间安排: 1 月 10 日1 月 12 日:收集资料,方案选择 1

3、 月 13 日1 月 16 日:整体流程,程序细节 1 月 17 日1 月 20 日:调试程序,报告撰写 1 月 21 日: 交设计报告,程序演示,答辩 指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 武汉理工大学微机原理与接口技术课程设计说明书 前言前言 汇编语言是计算机能够提供给用户使用的最快而又最有效的语言,也是能够利用 计算机所有硬件特性并能直接控制硬件的唯一语言。因而,对程序的空间和时间的要 求很高的场合,汇编语言的应用是必不可少的。至于很多需要直接控制硬件的应用场 合,则更是非用汇编语言不可了。随着科学技术迅速发展,理工科大学生不仅需要掌 握计算机方面的基本理论

4、知识,而且还需要掌握基本的实验技能及一定的科学研究能 力。通过课程设计,使学生巩固和加深微型计算机原理理论知识,通过实践进一步加 强学生独立分析问题和解决问题的能力、综合设计及创新能力的培养,同时注意培养 学生实事求是、严肃认真的科学作风和良好的实验习惯,为今后工作打下良好的基础。 鉴于汇编语言的广泛用途及其在当代计算机界的重要作用,本人利用学的知识,在 同学门的帮助下,花费大量时间,完成了关于电子表的系统设计。 这个系统是应用于电脑中的小应用程序,可是显示电脑中的时间。很多地方都会有 个时钟显示,其中大多是应用了类似这样的方法。 武汉理工大学微机原理与接口技术课程设计说明书 目录目录 1 设

5、计任务及要求分析.1 1.1 设计目的 .1 1.2 设计任务 .1 1.3 具体要求 .1 2.方案比较及认证说明.2 3.系统原理阐述3 4.软件设计课题说明8 4.1 软件思想8 4.2 流程图8 4.3 源程序及程序注释10 5.调试记录及结果分析.20 5.1 程序调试过程 .20 5.2 运行结果 .20 6.设计总结及心得体会.23 7.参考文献24 8 附录:中断向量表25 1 设计任务及要求分析 1.1 设计目的 (1)通过设计电子表,掌握中断的使用方法。 (2)掌握基本的显存读写技术。 (3)学会在屏幕上以七段数码管的形式显示本机时间的方法。 (4)学会用汇编语言编写一个完

6、整的程序,提高自己的动手操作能力。 (5)学习程序设计的基本思路和方法,培养分析问题、解决问题的能力。 1.2 设计任务 采用汇编语言设计一个电子表程序,在屏幕上以七段数码管的形式显示本 机时间,精确到秒。按 S 启动,按 T 停止,按 P 暂停,按 Q 退出程序。 1.3 具体要求 (1)设计任务及要求分析 (2)方案比较及认证说明 (3)系统原理阐述 (4)软件设计课题需要说明:软件思想,流程图,源程序及程序注释 (5)调试记录及结果分析 (6)总结 (7)参考资料 (8)附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图 武汉理工大学微机原理与接口技术课程设计说明书 1 2.方案比

7、较及认证说明 设计方案:数字 09 中的每一个数字用“”和“”字符组成的“七段” 码图形表示,时与分、分与秒之间的两点用“”字符表示。这些字符预先定 义在数据段的字符图形里,利用 BIOS INT 1AH 的 2 号系统功能调用,读出计算 机系统的时间(为 BCD 码) ,置换成字符图形标中的图形字符显示。 本程序设计的关键是随着系统时间的变化,用字符组成的图形数字如何进 行相应的变化。方法是:不停地读取系统时间并保存在寄存器中,将每次取出 的时间显示并与前一次比较,先比较“秒”值,在不同的情况下(系统时间发 生了增 1 的变化) ,则调用相应的图形字符显示,在不超过 60 秒的情况下,重 复

8、比较秒,然后再比较和显示“分”值与“小时”值。程序流程图如图所示。 3.系统原理阐述 用七段码电子表显示程序系统时间,程序设计的关键是随系统时间的变化, 用字符组成图形数字如何进行相应的变化。编写的程序,主要包含以下子程序: 1)对时间值进行处理并显示的子程序: xian procproc push si push di push dx push cx push bx push ax pop ax push ax mov bx,ax mov ax,0 mov al,bh mov cl,4 shr al,cl mov bl,al mov dh,10 mov dl,2 call ff pop ax

9、 push ax mov bx,ax mov ax,0 mov al, bh and al,0fh mov bl,al mov dh,10 mov dl,6 call ff mov dh,10 mov dl,10 mov bl,10 call ff 武汉理工大学微机原理与接口技术课程设计说明书 3 pop ax push ax mov cl,4 shr al,cl mov bl,al mov dh,10 mov dl,14 call ff pop ax push ax and al ,0fh mov bl,al mov dh,10 mov dl,18 call ff mov dh,10 mov

10、 dl,22 mov bl,10 call ff pop ax pop bx push bx push ax mov ax,0 mov al,bh mov cl,4 shr al,cl mov bl,al mov dh,10 mov dl,26 call ff pop ax pop bx push bx push ax mov al,bh and al,0fh mov bl,al mov dh,10 mov dl,30 call ff mov dh,0 mov dl,15 mov bl,22 call ff pop ax pop bx pop cx pop dx pop di pop si r

11、et xian endpendp 2)显示具体数值的子程序: ff procproc push ax push bx push cx push dx cmp bl,0 je l0 cmp bl,1 je l1 cmp bl,2 je l2 cmp bl,3 je l3 cmp bl,4 je l4 cmp bl,5 je l5 cmp bl,6 je l6 cmp bl,7 je l7 cmp bl,8 je l8 cmp bl,9 je l9 cmp bl,10 je l10 cmp bl,22 je ld l0: lea di,s0 jmp ty l1: lea di,sy 武汉理工大学微

12、机原理与接口技术课程设计说明书 5 jmp ty l2: lea di,s2 jmp ty l3: lea di,s3 jmp ty l4: lea di,s4 jmp ty l5: lea di,s5 jmp ty l6: lea di,s6 jmp ty l7: lea di,s7 jmp ty l8: lea di,s8 jmp ty l9: lea di,s9 jmp ty l10: lea di,s11 jmp ty ld : lea di,str ty: mov ah,0fh ;显示方式 int 10h sub cx,cx mov cl,di inc di plot_next: a

13、dd dh,di+2 add dl,di+3 mov ah,2 int 10h mov al,di mov bl,di+1 push cx mov cx,1 mov ah,09 int 10h pop cx add di,4 loop plot_next pop dx pop cx pop bx pop ax mov cx,100 gg: dec cx loop gg ret ff endpendp 3)报时子程序: beep procproc push ax push bx push cx push dx mov al ,10110110b out 43h,al mov ax,533h ou

14、t 42h,al mov al,ah out 42h,al in al,61h mov ah,al or al,03 out 61h,al sub cx,cx mov bl,28h g7: loop g7 dec bl jnz g7 mov al,ah out 61h,al pop dx pop cx pop bx pop ax ret beep endpendp 武汉理工大学微机原理与接口技术课程设计说明书 7 4.软件设计课题说明 4.1 软件思想 本课题主要涉及以下知识点: 数据段 (1) Disptime,Showtime 显示时钟 (2)定义 09 十个图形数字,以便模拟七段码显示时

15、钟 宏定义 (1)Clear 定义清屏宏 (2)rowcol 定义光标定位宏 (3)crlf 回车换行宏 (4)display 显示字符串宏 (5)change 计算时间宏 函数 (1)main 主函数 (2)paly 主要完成显示七段码电子表显示 (3)prog0 到 prog10 完成七段码到一半显示的转换 (4)moveshape 显示七段码电子表 (5)delay 延迟函数 (6)exit 返回 DOS 函数 4.2 流程图 本实验程序流程图见下页 武汉理工大学微机原理与接口技术课程设计说明书 9 开始 从键盘上输入 S 屏幕初始化 读取系统时间 从键盘上输入字符 AL=T? AL=P

16、? AL=Q? 结束 Ah=0 ah24? ahah+1 al100? bh100? 秒加 1? a1a1+1 Call beep bhbh+1 Call xian 读取系统时间 bh 为存放秒值的寄存器 al 为存放分值的寄存器 beep 子程序为报时子程序 ah 为存放小时的寄存器 Y Y N N N N Y N N N 计时暂停 Y 4.3 源程序及程序注释 datadata segmentsegment ;*定义please等提示信息* infon dbdb 0dh,0ah,0dh,0ah,Please press S to startstart!$ ;str db 0dh,0ah,Press P to pause$ str dbdb 49 dbdb 50h,7,0,0 dbdb 6ch,7,0,1 dbdb

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

当前位置:首页 > 办公文档 > 教学/培训

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