ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:118.62KB ,
资源ID:24539869      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24539869.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(七段码电子表显示程序 攀枝花学院数计院的学弟们下载吧.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

七段码电子表显示程序 攀枝花学院数计院的学弟们下载吧.docx

1、七段码电子表显示程序 攀枝花学院数计院的学弟们下载吧攀枝花学院学生课程设计(论文)题 目: 七段码电子表显示程序 学生姓名: 游 欢 学 号:200910804044所在院(系): 计算机学院 专 业: 软件工程 班 级: 2组 指 导 教 师: 何老师 职称: 讲师 2010年12 月 31 日攀枝花学院教务处制攀枝花学院本科学生课程设计任务书题目七段码电子表显示程序1、课程设计的目的通过本课程设计教学所要达到的目的是:1、培养学生理论联系实际的设计思想,提高学生综合运用汇编语言课程的理论知分析问题、解决问题的能力。2、通过查找、运用设计资料,完成工程设计所必备的基本训练。3、使同学们更深入

2、的了解计算机系统内部的有关知识,为以后的学习和系统开发奠定良好的基础。2、课程设计的内容和要求(包括原始数据、技术要求、工作要求等)设计内容:用电子表的形式显示系统时间。以“时:分:秒”的形式显示时间。设计思路:数字09中的每一个数字用“”和“”字符组成的“七段”码图形表示,时与分、分与秒之间的两点用“”字符表示。这些字符预先定义在数据段的字符图形里,利用BIOS INT 1AH的2号系统功能调用,读出计算机系统的时间(为BCD码),置换成字符图形标中的图形字符显示。本程序设计的关键是随着系统时间的变化,用字符组成的图形数字如何进行相应的变化。方法是:不停地读取系统时间并保存在寄存器中,将每次

3、取出的时间显示并与前一次比较,先比较“秒”值,在不同的情况下(系统时间发生了增1的变化),则调用相应的图形字符显示,在不超过60秒的情况下,重复比较秒,然后再比较和显示“分”值与“小时”值。程序流程图如图所示。3、主要参考文献1汇编语言程序设计,吴向军等,高等教育出版社,20022IBM-PC汇编语言及程序设计(第2版), 沈美明等,清华大学出版社,20013IBM-PC汇编语言及程序设计实验教程,沈美明等,清华大学出版社 ,20014汇编语言程序设计, 钱晓捷等,电子工业出版社,20005汇编语言程序设计, 张志明等,重庆大学出版社,19974、课程设计工作进度计划时间(天) 内容安排1 分

4、析设计准备3 编程调试阶段1 编写课程设计报告指导教师(签字)日期年 月 日教研室意见:年 月 日学生(签字): 接受任务时间: 年 月 日注:任务书由指导教师填写。课程设计(论文)指导教师成绩评定表题目名称七段码电子表显示程序评分项目分值得分评价内涵工作表现20%01学习态度6遵守各项纪律,工作刻苦努力,具有良好的科学工作态度。02科学实践、调研7通过实验、试验、查阅文献、深入生产实践等渠道获取与课程设计有关的材料。03课题工作量7按期圆满完成规定的任务,工作量饱满。能力水平35%04综合运用知识的能力10能运用所学知识和技能去发现与解决实际问题,能正确处理实验数据,能对课题进行理论分析,得

5、出有价值的结论。05应用文献的能力5能独立查阅相关文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获取新知识的能力。06设计(实验)能力,方案的设计能力5能正确设计实验方案,独立进行装置安装、调试、操作等实验工作,数据正确、可靠;研究思路清晰、完整。07计算及计算机应用能力5具有较强的数据运算与处理能力;能运用计算机进行资料搜集、加工、处理和辅助设计等。08对计算或实验结果的分析能力(综合分析能力、技术经济分析能力)10具有较强的数据收集、分析、处理、综合的能力。成果质量45%09插图(或图纸)质量、篇幅、设计(论文)规范化程度5符合本专业相关规范或规定要求;规范化

6、符合本文件第五条要求。10设计说明书(论文)质量30综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学。11创新10对前人工作有改进或突破,或有独特见解。成绩指导教师评语指导教师签名: 年月日摘要用七段码电子表显示程序系统时间,此程序设计的关键是随系统时间的变化,用字符组成图形数字如何进行相应的变化。根据七段码电子表显示程序设计的要求,写出七段码电子表显示程序的源代码,画出程序运行的流程图,输入计算机进行运行,发现并找出其中的错误并加以修改,反复调试程序,直到得出正确结论为止。通过对七段码电子表显示程序的设计,初步掌握汇编语言程序设计的方法,最后在总结此次设计程序的

7、心得与体会。关键词: 源代码,函数,BCD码,寄存器1 课程设计题目描述和要求1.1 问题提出及功能要求1.1.1 问题如何用电子表的形式显示系统时间 ?1.1.2 功能要求1)七段码电子表显示程序2)菜单选择:设置时,分,秒,开始,推出等3)模拟七段码显示管显示时,分,秒4)要求界面美1.2 运行环境 微型计算机(系统为Windows98/2000/XP)1.3 本课题涉及的知识点1.3.1 数据段1) Disptime,Showtime显示时钟2)定义09十个图形数字,以便模拟七段码显示时钟1.3.2 宏定义1)Clear定义清屏宏2)rowcol定义光标定位宏3)crlf回车换行宏4)d

8、isplay显示字符串宏5)change计算时间宏1.3.3 函数1)main主函数2)paly主要完成显示七段码电子表显示3)prog0到prog10完成七段码到一半显示的转换4)moveshape显示七段码电子表5)delay延迟函数6)exit返回DOS函数2 算法设计2.1 设计思路数字09中的每一个数字用“”和“”字符组成的“七段”码图形表示,时与分、分与秒之间的两点用“”字符表示。这些字符预先定义在数据段的字符图形里,利用BIOS INT 1AH的2号系统功能调用,读出计算机系统的时间(为BCD码),置换成字符图形标中的图形字符显示。本程序设计的关键是随着系统时间的变化,用字符组成

9、的图形数字如何进行相应的变化。方法是:不停地读取系统时间并保存在寄存器中,将每次取出的时间显示并与前一次比较,先比较“秒”值,在不同的情况下(系统时间发生了增1的变化),则调用相应的图形字符显示,在不超过60秒的情况下,重复比较秒,然后再比较和显示“分”值与“小时”值。程序流程图如图所示。2.2 主要流程图2.1 主程序流程图2.2 dzbiao流程图3 代码设计data segment;*定义please等提示信息* str db 20 db 50h,7,0,0 db 6ch,7,0,1 db 65h,7,0,1 db 61h,7,0,1 db 73h,7,0,1 db 65h, 7,0,1

10、 db 70h,7,1,-10 db 72h,7,0,1 db 65h,7,0,1 db 73h,7,0,1 db 73h,7,0,1 db 53h,7,0,2 db 6bh,7,0,2 db 65h,7,0,1 db 79h,7,0,1 db 65h,7,0,2 db 78h,7,0,1 db 69h,7,0,1 db 74h,7,0,1 db 21h,7,0,1;*定义09十个图形数字*s0 db 6 db 5fh,7,0,0 db 7ch,7,1,-1 db 7ch,7,1,0 db 5fh,7,0,1 db 7ch,7,0,1 db 7ch,7,-1,0 sy db 2 db 7ch,

11、7,1,0 db 7ch,7,1,0 s2 db 5 db 5fh,7,0,0 db 7ch,7,1,1 db 5fh,7,0,-1 db 7ch,7,1,-1 db 5fh,7,0,1 s3 db 5 db 5fh,7,0,0 db 7ch,7,1,1 db 5fh,7,0,-1 db 7ch,7,1,1 db 5fh,7,0,-1 s4 db 4 db 7ch,7,1,0 db 5fh,7,0,1 db 7ch,7,1,1 db 7ch,7,-1,0 s5 db 5 db 5fh,7,0,0 db 7ch,7,1,-1 db 5fh,7,0,1 db 7ch,7,1,1 db 5fh,7,

12、0,-1 s6 db 6 db 5fh,7,0,0 db 7ch,7,1,-1 db 5fh,7,0,1 db 7ch,7,1,1 db 5fh,7,0,-1 db 7ch,7,0,-1 s7 db 3 db 5fh,7,0,0 db 7ch,7,1,1 db 7ch,7,1,0 s8 db 7 db 7ch,7,1,0 db 5fh,7,-1,1 db 7ch,7,1,1 db 5fh,7,0,-1 db 7ch,7,1,1 db 5fh,7,0,-1 db 7ch,7,0,-1 s9 db 6 db 7ch,7,1,0 db 5fh,7,-1,1 db 7ch,7,1,1 db 5fh,7

13、,0,-1 db 7ch,7,1,1 db 5fh,7,0,-1 s11 db 2 db 03h,7,1,0 db 03h,7,1,0data endsstack segment db 200 dup (0)stack endscode segment assume cs:code,ss:stack,ds:datastart: mov ax,data mov ds,ax mov ah,0 ;设置显示方式 mov al,4 int 10h mov ah,0bh ;置彩色调板 mov bh,0 mov bl,1 int 10h mov ah,0bh ;置彩色调板 mov bh,1 mov bl,4

14、 int 10h mov ah,2 ;取系统时间 int 1ah mov ax,0 mov bx,0 mov ah,ch ;取系统时间 mov al,cl ;保存分钟 mov bh,dh ;保存秒 mov bl,dl ;保存百分之一秒 tt: push ax push bx mov ah,0 mov al,4 int 10hmov ah,0bh mov bh,0 mov bl,1 int 10h mov ah,0bh mov bh,1 mov bl,4 int 10h MOV AH,1 ;读键盘缓冲区字符 INT 16h JZ ww MOV AH,8 ;从键盘输入字符 INT 21h CMP

15、AL,s ;输入s,结束程序 JE tu ww: pop bx pop ax call xian ;调用显示子程序 push ax qu: mov ah,2 ;取系统时间 int 1ah cmp bh,dh je qu pop ax inc bh ;对时间进行加1 cmp bh,100 jl tt mov bh,0 inc al call beep cmp al,100 jl tt mov al,0 inc ah cmp ah,24 jl tt mov ah,0 jmp tt tu: mov ah,4ch int 21h ret xian proc ;对时间值进行处理并显示的子程序 push

16、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 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 pop ax push ax mov cl,4 sh

17、r 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 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 a

18、l,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 retxian endpff proc ;显示具体数值 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

19、l7 cmp bl,8 je l8 cmp bl,9 je l9 cmp bl,10 je l10 cmp bl,22 je ldl0: lea di,s0 jmp tyl1 : lea di,sy jmp tyl2: lea di,s2 jmp tyl3: lea di,s3 jmp tyl4: lea di,s4 jmp tyl5: lea di,s5 jmp tyl6: lea di,s6 jmp tyl7: lea di,s7 jmp tyl8: lea di,s8 jmp tyl9: lea di,s9 jmp tyl10: lea di,s11 jmp tyld : lea di,

20、strty: mov ah,0fh ;显示方式 int 10h sub cx,cx mov cl,di inc diplot_next: add 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,100gg: dec cxloop ggretff endpclear proc push ax push bx push cx pu

21、sh dx mov ah,6 mov al,0 mov bh,1 int 10h pop dx pop cx pop bx pop axretclear endpbeep proc push ax push bx push cx push dx mov al ,10110110b out 43h,al mov ax,533h out 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,28hg7: loop g7 dec bl jnz g7 mov al,ah out 61h,

22、al pop dx pop cx pop bx pop ax retbeep endpcode ends end start4 调试与运行4.1 实验步骤1.打开windows命令窗口2.进入masm程序的安装目录,如图图 4.13连接程序,并查看生成可执行文件huibian.exe图 4.24关闭对话框,打开可执行文件开始运行程序4.2 程序调试及运行运行程序结果从0到9,如下列截图4.1到4.10所示图 4.3图 4.4图 4.5图 4.6图 4.7图 4.8图 4.9图 4.10图 4.11图 4.12程序运行的任何时候按q或Q退出4.3 调试中出现的问题没有注意到要操作的目标数据(内存

23、中的数据)的大小和使用操作容器(寄存器)的大小没有一致。另外,对于数据处理的ds:bx方式,如mov ds:bx,dx add bx,2在循环中应该注意bx的递增或递减大小,如处理字节,比如用dl,循环中就应该加或者减1;如果处理字,比如用dx,就应该加或者减2。在以后应该留意这个一致性。在8086上,ss和sp都是16位的,栈所处理数据的最小单位也是16位的,即最小是一个字,栈一次读和一次写,都至少是一个字那么大。5 总结学习了汇编语言这门课程,对它有了基本的了解和认识。认为自己可以解决一些简单的汇编语言程序设计问题,但是拿到题目还是感觉有些无从下手。幸好得到了同学和老师的帮助,才从无从下手

24、开始,一步步完成程序设计,一直到最后完成。当我运行自己所编写的程序的时候,一种无以言表的喜悦充满了我的内心。非常感谢帮助我的同学和老师,如果没有他们的帮助,我的课程设计时不可能按时完成的。对于我所学习的软件工程这个专业来说,编写程序是最基本,也是最重要的技能,这次带着有些侥幸的完成,我感到有些惭愧。但是,我相信,在以后的学习和实践中,我一定会汲取这次设计程序的经验和教训,争取把这门专业学的更好。参考文献1汇编语言程序设计,吴向军等,高等教育出版社,20022IBM-PC汇编语言及程序设计(第2版), 沈美明等,清华大学出版社,20013IBM-PC汇编语言及程序设计实验教程,沈美明等,清华大学出版社 ,20014汇编语言程序设计, 钱晓捷等,电子工业出版社,20005汇编语言程序设计, 张志明等,重庆大学出版社,19976汇编语言课程设计案例精编,李珍香等,中国水利水电出版社,20047新编深入DOS编程,求伯军等,学宛出版社,19948宏汇编语言MASM6实用大全,东扬生等,科学出版社,1993

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1