首页 汇编程序课程设计报告

汇编程序课程设计报告

举报
开通vip

汇编程序课程设计报告   汇编语言课程设计报告 ( 2014 -- 2015 年度第 1 学期) 课题名称: 打字计时练习程序     专业 计算机科学与技术(网络工程) 学生姓名 金玲 班级 B计算机131 学号 1310704114 指导教师 许秋艳 完成日期 2015年1月16日     目    录 1 设计目的    1 2 概要设计    1 2.1 系统总体分析    1 2.2 主模块框图及说明    1 3 详细设计    1 3.1 主模块...

汇编程序课程设计报告
  汇编语言课程设计 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 ( 2014 -- 2015 年度第 1 学期) 课题名称: 打字计时练习程序     专业 计算机科学与技术(网络工程) 学生姓名 金玲 班级 B计算机131 学号 1310704114 指导教师 许秋艳 完成日期 2015年1月16日     目    录 1 设计目的    1 2 概要设计    1 2.1 系统总体分析    1 2.2 主模块框图及说明    1 3 详细设计    1 3.1 主模块及子模块说明    1 3.2 各模块详细设计    1 3.2.1 主界面模块    1 3.2.2 随机字母产生模块    1 3.2.3 字母落下模块    1 3.2.4 暂停模块    1 3.2.5 返回主界面模块    1 4 程序调试    2 4.1 运行界面分析    2 4.2 调试过程及分析    2 5 心得体会 决胜全面小康心得体会学党史心得下载党史学习心得下载军训心得免费下载党史学习心得下载     2 5.1 设计体会    2 5.2 系统改进    2 参考文献    3 附    录    4 附录1 源程序清单    4 附录1.1 *******模块源程序    4 1 设计目的 增进对汇编语言的认识,加强运用汇编语言编程的能力;通过课程设计可以使我们更加了解书上的知识,了解书上的语句并能用到自己的程序设计中。 2 概要设计 2.1 系统总体分析 采用汇编语言设计一个打字计时程序,在缓冲区中预放了一些字母,运行时,按照屏幕上显示的字母输入练习,每输入完一行按回车键后,显示出练习输入的时间。按Q退出程序。 2.2 主模块框图及说明 主程序一开始先随机选取一定长度的字符串到缓冲区中,作为将要输出练习打字的材料,这些随机选入的字符为26个区分大小写的英文字母和十个阿拉伯数字。接着程序输出一系列在数据段已经设置好的各种提示语,然后主程序执行输出开始时缓冲区所选好的练习字符串材料,这可以利用屏幕显示中断并配合一些指令来完成。当屏幕上显示完所练习后的打字材料后,主程序 通知 关于发布提成方案的通知关于xx通知关于成立公司筹建组的通知关于红头文件的使用公开通知关于计发全勤奖的通知 子程序开始计时,而与此同时主程序开始记录练习者输入的字符。每当输入一个字符时主程序都要判断所输入的字符是否正确,改变输入的总字符数,记录输入的正确的字符数并计算显示正确率,同时主程序还要控制打字练习所用时间的记录和显示,显示的形式是小时;分钟;秒。在每输入一个字符时,主程序还应该控制各个子程序执行改变颜色的任务,颜色的改变规则为:每当输入的字符为正确的时候字符显示黑色,当检测到字符为错时,字符变为红色,背景也发生变化以示区别。而原练习字符串也要随着打字的进度改变而变化。不仅如此,主程序还应该时刻检测输入的字符是否为回车、backspace键,以通知子程序的执行。 程序设置每一行最大输入的字符数为51个,当满行时满行标志位会有零变为一从而使得换行。当主程序检测到 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示退出程序的信号Q时则退出程序,而输入的字符已经满时也会退出程序。退出时主程序会控制一子程序在显示屏上显示出这次打字练习的基本情况,主要参数包括:所用的总时间、所练习的字数和正确率。之后再按屏幕的提示:按任意键退出即可退出程序。 本次主程序中主要用了两种中断类型、DOS调用、BIOS调用、宏定义及子程序调用。 3.1 其他子程序说明 总的程序中所含的子程序如下: 输出打字正确率子程序(RightRata-out):用于计算最后打字结束后的正确率; 计算打字时间并输出子程序(UseTimeAndOut):用于计算打字所用的时间并输出所用时间; 显示时间子程序(OutTime):用于显示出所用的打字时间; 记录当前时刻所打的字符个数及正确字符个数子程序(TONGJI):用于统计当前时刻所完成的字符的个数及正确字符的个数; 输出bx中的内容子程序(bx-out):用于输出bx的内容以配合其他几个程序的输出和运输; 换判断是否满行并换行子程序(FullLine):当发生满行时进行换行; 改变字符颜色子程序(char-change):用于改变字符的颜色,在输入过程中改变输入过后的字符的背景颜色及输出字符错误时改变字符的背景及颜色。 4 程序调试 4.1 运行界面分析 4.2 调试过程及分析 编完程序后一开始不可以生成可执行文件,源程序中有不少这样那样的问题,现将几个主要的问题及解决过程列在下面。 首先,不能生成EXE文件的最主要问题之一就是源程序中有不少语法错误,这些错误有:一些变量未定义、字符的错误使用、语句写的不完整及注释的格式不对等等,这些错误是很难避免的,而且寻找它们时也比较麻烦,但改正它们相对来说较为容易。 接着,当语法上的一些错误改正之后便可以生成执行文件,程序可以运行且有结果了,但一开始结果并没有设想的那样。第一个错误情况是一开始的输出练习材料字符,这些字符并没有像设想的那样是大小写英文字母和阿拉伯数字,除了这些之外还有其他好多字符,除此之外出现的字符也并不是随机形式的,可以说是顺序出现的。慢慢的改正主程序中开始产生随机字符部分的源程序的发现,之所以会出现好多乱码是因为一开始调用输出的寄存器弄错了,也就是调用输出来的字符是在另一处寄存器中放着的;而没有以随机形式出现字符的原因是程序编写的没有符合当初的原理,在这里随机取字符的原理是利用通过调用中断(ah=2ch,int 10)取系统时间的1|100来得到一组随机数,把这些随机数当作指针,然后取指针对应的字符表中相应的字符来得到一串字符,而编写的程序并没有像这样来。 然后,出现另一个现象就是各种提示语的出现位置出现了异常,有几条提示语相互重叠在一起了。提示语的显示原理是:先取得光标的位置,再在该位置输出提示语。而这里之所以是几条提示语会重叠是因为几个光标的位置没设置好,经检发现主要是设置形成的行数不够用,改正过后发现提示语恢复正常。 此外,还有一些其他的小问题比如:输入的满行数不对,输出的颜色不对,正确率的计算不对及没有按条件退出打字等,这些问题大部分都是计算参数不正确所引起的,因此发现它们较容易而且改正起来也较为简单。最后,程序运行的结果终于跟预想的一样,可以用来测试打字的速度了。 5 心得体会 5.1 设计体会 课程设计对我们来说确实是一难点,因为这与平时讲课也好、做作业也好还是考试也好都有很大的难度上的差距,很明显这次课程设计要求编的程序要大的多。所有难度要比平时大得多,要是真的凭自己的能力很难完成这次的任务,所以在这个过程借鉴了不少的资料,有从图书馆借来的书籍也有从网络上搬来的东西。 这次任务的程序里用了许多以前从未用过的指令,可能是因为以前编得都是一些简单地小程序的缘故吧!所以一开始看到题目后都不知道从哪里下手。看到这种比较难比较大的工程第一步想的就是应该去查询什么资料了,要把汇编语言的知识重新补一遍,课堂上学过的指令只是一些较为常见的指令,其他的好多也十分有用但较为复杂的指令及调用方式、中断课堂上提的较少,所以必须先得把知识巩固,不然别说编程了,就是是读程序改程序都有困难。这刚好也为我们提供了一个学习的好机会。在重新查询过一些汇编的资料后,慢慢的知道要完成这次的任务得用到好多DOS调用、BIOS调用、宏定义及调用还有子程序的调用,这些由于平时用的少甚至是没用过,所以一开始感觉很棘手。其实这个时候编程还是不知道从哪里开始。于是又把目光投向了网络,其实网络上有很多讲解编程的方法,就跟老师说过一样,编程开始是要画出流程图,好的流程图是编程成功的开始。其实画流程图就像是写作文前的拟写提纲,它帮助我们梳理自己的编程思维,按照自己画的流程图一步一步的来,这样编起来有条理的多,而且这样也不容易出错。最终在网上找到了其他人编写过的程序并读懂它,还是一步步的把流程图画了出来,最后也在他人程序的基础上完成了自己的程序。 程序完成后就是要调试了,调试的过程也是挺麻烦的,有不少语法上的错误和原理上的错误,调试的过程也就是将程序再一次学了一遍,调试需要对程序相当的熟悉,特别是汇编语言,对程序在哪儿执行也要了解。所以调试的过程可以说是收获最大的一个过程。对自己今后的学习也会有借鉴的作用。通过这次课程设计,我巩固了所学过的知识,感觉自己又上升了一点点。 参考文献 [1]卜燕萍,汇编语言程序设计 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 (第二版).北京:清华大学出版社,2004.6 [2]钱晓捷,汇编语言程序设计(第四版).北京:电子工业出版社,2012.6 [3]沈美明,IBM-PC汇编语言程序设计(第二版).北京:清华大学出版社,2001.8 [4]周佩玲,微机原理与接口技术(第一版).北京:电子工业出版社,2005.4 [5]朱世鸿,微机系统和接口应用技术(第一版).北京:清华大学出版社,2006.9 附    录 附录1 源程序清单 附录1.1 *******模块源程序 COLORCHAR MACRO char,color push ax push bx push cx push dx mov ah,9h mov al,char mov bh,0 mov bl,color mov cx,1 int 10h mov ah,03h mov bh,0 int 10h mov ah,02 inc dl int 10h pop dx pop cx pop bx pop ax ENDM BACKCHAR MACRO char,color mov ah,02h mov dl,08h int 21h COLORCHAR char,color ENDM CLEAR MACRO alz,bhz,chz,clz,dhz,dlz push ax 继续阅读
本文档为【汇编程序课程设计报告】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_751406
暂无简介~
格式:doc
大小:39KB
软件:Word
页数:0
分类:高中语文
上传时间:2019-08-18
浏览量:14