资源预览内容
第1页 / 共28页
第2页 / 共28页
第3页 / 共28页
第4页 / 共28页
第5页 / 共28页
第6页 / 共28页
第7页 / 共28页
第8页 / 共28页
第9页 / 共28页
第10页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
学学 号:号:0121011360108课程设计课程设计题目题目打字统计对错练习的程序打字统计对错练习的程序学院学院自动化学院自动化学院专业专业自动化专业自动化专业班级班级1001 班班姓名姓名李凯李凯指导教师指导教师石云石云2013年1月10日课程设计任务书课程设计任务书学生姓名:学生姓名: 李凯李凯 专业班级:专业班级: 自动化自动化 10011001 班班 指导教师:指导教师: 石云石云 工作单位:工作单位: 自动化学院自动化学院 题题 目目: : 打字统计对错练习的程序打字统计对错练习的程序 初始条件:初始条件:在缓冲区中预放了一些字母,运行时,可按照屏幕上显示的字母输入练习,每输入完一 行按回车键后,可显示出练习输入的对错率。按 Q 退出程序。要求完成的主要任务要求完成的主要任务: : (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1) 设计任务及要求分析(2) 方案比较及认证说明(3) 系统原理阐述(4) 硬件设计课题需要说明:硬件原理,电路图,采用器件的功能说明(5) 软件设计课题需要说明:软件思想,流程图,源程序及程序注释(6) 调试记录及结果分析(7) 总结(8) 参考资料(9) 附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图时间安排:时间安排:1 月 2 日1 月 3 日:收集资料,方案选择1 月 4 日1 月 7 日:整体流程,程序细节1 月 8 日1 月 10 日:调试程序,报告撰写1 月 10:交设计报告,程序演示,答辩指导教师签名:指导教师签名: 年年 月月 日日系主任(或责任教师)签名:系主任(或责任教师)签名: 年年 月月 日日目录摘要 .1 设计任务及要求分析.11.1 设计任务及要求 .11.2 设计任务分析 .12 方案比较及认证 .22.1 方案比较.22.2 方案论述.23 程序设计说明 .33.1 程序主流程图 .33.2 程序设计.43.2.1 定义堆栈段 .43.2.2 定义数据段 .43.2.3 定义代码段 .53.2.4 主程序 .53.2.5 正确率统计 .64 程序设计结果显示 .75 调试记录与分析 .105.1 调试环境简介 .105.2 调试过程及结果分析 .106 总结 .117 参考文献 .12附录:源程序及注释 .13武汉理工大学微机原理与接口技术课程设计说明书摘要这次课设的题目是打字正确率的统计,首先产生一行随机数,然后用户输入,比较两行数的差异,相同数除以总数则是正确率。首先在这段程序当中,用到了宏指令 MOVTO,前面也说到了该宏指令可以通过控制DH、DL 的值来控制输出字符的位置。从而可以方便的控制想要显示的内容在屏幕上的位置。在这段程序当中还涉及到了 INT 21H 中断的应用,当 AH 当中为 02H 时,DL 当中的存储内容就是直接显示的内容,在这里我们用到“/”即分数的形式来表达正确率,而不是直接计算出百分比。 “/” 前面显示的内容是用户输入的内容与程序显示的字符一致的个数,作为分子而“/”后面显示的内容是用户一共键入的字符个数,作为分母。由于在计算机当中,数据均以二进制的形式来储存,但二进制并不是我们所习惯的数值表达方式,所以数据输出前需要经过一个进制转换程序的处理,经转换以后再输出到屏幕上供用户观看。这里就又涉及到了进制转换程序。由于在本程序当中,进制转换程序并不是主要的程序单元,它只用作为辅助程序。关键词 :正确率 字符比较 子程序调用武汉理工大学微机原理与接口技术课程设计说明书1打字统计对错练习的程序1 设计任务及要求分析1.1 设计任务及要求初始条件:在缓冲区中预放了一些字母,运行时,可按照屏幕上显示的字母输入练习,每输入完一行按回车键后,可显示出练习输入的对错率。按 Q 退出程序。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)(1) 设计任务及要求分析(2) 方案比较及认证说明(3) 系统原理阐述(4) 硬件设计课题需要说明:硬件原理,电路图,采用器件的功能说明(5) 软件设计课题需要说明:软件思想,流程图,源程序及程序注释(6) 调试记录及结果分析(7) 总结(8) 参考资料(9) 附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图1.2 设计任务分析由打字计时练习的设计要求可知设计主要分为以下几个步骤,打字练习过程中提示信息的输出,随机字母系列的生成,打字练习过程中键入字符的正确与否,打字练习正确率的显示,是否退出。运用汇编语言设计的程序分为主程序和子程序。主程序主要用于随机字母系列的生成,打字计时练习过程键入字符正确与否的判断,退出的判断,打字计时练习的新一轮的开始。武汉理工大学微机原理与接口技术课程设计说明书22 方案比较及认证2.1 方案比较 根据打字计时练习的设计要求可知,我们可以依据缓冲区中字符系列的产生这一要求的实现有两种设计方案,方案一是缓冲区中的字母是预先设定好的,后面所进行的打字练习是依照预先设定好的字符系列进行。方案二是缓冲区中的字母是随机生成的,每一次打字练习的字符系列都是随机产生的。其他要求的实现都是一样的。 方案一缓冲区中的字符系列是预先设定好的。这种设计方案要求在内存中预先开辟一段存储空间存放将要进行打字练习的字符系列,在后面进行打字练习的时候再将字符系列取出进行操作。这种设计方案占用的内存较多并且需要先将字符系列取出后再进行操作,程序写起来很长,指令太多,同时设计的方案对于使用者来说太过单一,想尝试不同字符系列的打字练习时还要另行修改程序,适用性差。方案二缓冲区中的字符系列是系统自动随机生成的。这种设计方案要求系统随机生成字符系列,不需要预先分配内存单元,在开始新一轮的打字练习时就自动随机生成字符系列。这种设计方案运用到的指令少,占用的内存少,设计的程序适用性好,不需要修改程序就可以尝试不同的字符系列的打字练习。2.2 方案论述 在设计打字练习时,根据打字练习的过程来设计打字计时练习的程序,首先在打字练习的界面上要有输出的提示信息提示对打字练习要进行的操作,其次是打字练习内容字母系列的生成,然后才开始进行打字练习,打字计时练习的过程在系统内部是一个不断循环的过程,在系统内部时钟每次嘀嗒计数循环一次,首先需要判断是否从键盘键入字符,这里面有一个循环检测的过程直至有字符键入系统,其次需要知道键入的字符是否是特殊字符,判断打字练习进行哪步操作。这是一个大的分支程序,需要有很多的跳转并且需要不断的调用子程序实现不同的功能。最后在一轮打字练习结束时需要有一个分支的选择,是再次进行字练习的设置还是退出打字练习的程序。武汉理工大学微机原理与接口技术课程设计说明书33 程序设计说明3.1 程序主流程图图 1 主程序流程图武汉理工大学微机原理与接口技术课程设计说明书43.2 程序设计整个程序按两个中断源分为两部分。在数据段中,前半部分是键盘处理所需要的数据变量,包括输入字符,字符缓冲区,09H 中断向量的保存单元等。后半部分是定时器中断处理所需要的数据变量,其中有一个打字练习内容及其地址表 SADDR,以及记录正确率的变量 COUNT0,COUNT1 中断向量的存贮单元等。 3.2.1 定义堆栈段 ;*
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号