汇编语言课程设计报告-打字练习程序(编辑修改稿)内容摘要:

mov bh,00h mov dh,01h mov dl,present_position int 10h mov al,[di]。 出现下一个新字母的数法 add al,7 cmp al,7ah ja convey_letter mov ah,0ah mov bh,00h mov cx,01h int 10h mov [di],al add letter_counter,01h 陕西师范大学汇编语言课程设计实验报告 — 10— jmp nextcycle convey_letter: sub al,7ah add al,61h mov ah,0ah mov bh,00h mov cx,01h int 10h mov [di],al add letter_counter,01h jmp nextcycle clear_screen 01,01,23,78 mov ah,02h mov bh,00h mov dh,11d mov dl,20d int 10h inc dh inc dh mov ah,02h mov bh,00h int 10h disappear:。 击中字母后输出空格 pop cx pop cx mov ah,0ah mov al, mov bh,00h mov cx,01h int 10h jmp hit 暂停模块 如果输入空格,则程序执行暂停功能,暂停功能的实现是通过以下方法实陕西师范大学汇编语言课程设计实验报告 — 11— 现的,当从键盘输入空格时,程序收到暂停信号,执行跳转,跳转到一个死循环模块,就是无限显示当前屏幕,不做其他任何操作,直到键盘再次输入空格时,程序收到暂停结束指令,跳转回到主程序模块,继续执行主模块的功能。 代码如下: pass: pop cx inc cx cmp cx,speed je print jmp out_cycle pause: push dx。 暂停处理 mov ah,06h mov dl,0ffh int 21h pop dx cmp al, jne pause jmp pass 4.程序调试 程序运行后的主界面如图 41,主界面第一行是欢迎语,第二行是作者,然后往下是操作说明,为使用者说明该程序的使用方法。 陕西师范大学汇编语言课程设计实验报告 — 12— 图 41 程序主界面 当用户按下 ENTER 键时,程序自动跳入到图 42 的界面,字母随机落下,用户便可以开始打字练习了。 练习只要按照说明来做就可以了。 图 42 打字界面 陕西师范大学汇编语言课程设计实验报告 — 13— 当程序运行时,我发现当按 esc 退出,如果之前按下空格键暂停时,则退不出去,必须再次按下空格是程序开始运行才能退出。 主要是因为按下空格键时,程序收到暂停信号,执行跳转,跳转到一个死循环模块,就是无限显示当前屏幕,不做其他任何操作,直到键盘再次输入空格时 . 5 心得体会 设计体会 课程设计对我们多数初学汇编的学生来说,确实是一座高峰。 翻越他是需付出努力的。 我也是在探索了好久才弄明白他的,在此做个小总结,也许对自己今后的学习有些借鉴作用。 在整个程序的编写中,调试占了很大部分的时间,要想写好汇编程序,必须认真对待代码的每一个细节,还必须熟练的掌握 debug指令。 通过这次实际动手能力的培养,我进一步熟悉了汇编的结构和使用法,基本达到能独立阅读。 我觉得学习汇编的一个较大好处就是可以了解电脑中每一个字节数据的来龙去脉,我觉得学习汇编可以发挥一下自己的空间想象力。 系统 改进 这次课程设计,其主题内容都以满足课程实际的要求,各功能都能相应的完成,即 写一个程序,运行可执行程序后,出现主界面,按回车键出现由 26个字母组成的乱序行,这时其中任一字母落下,在键盘上敲入该字母,如果输入正确,字母消失;按回车键进入打字练习;按 ESC 键返回主界面;按空格键暂停;按‘ E’退出,但是感觉整个程序界面不够华丽,看着粗糙的界面,不能引起别人的注意,下次能够吧界面做得更好看一些。 陕西师范大学汇编语言课程设计实验报告 — 14— 参考文献 [1] 李敬兆 8086/8088 和 arm核汇编语言程序设计 中国科技大学出版社 [2] 沈美明,温冬婵 编 著 IBM— PC 汇编语言程序设计(第二版) 清华大学出版社出版 [3] 罗云彬 Windows 环境下 32 位汇编语言程序设计 电子工业出版社 [4]【美】 Kip 著,温玉杰 等译 Intel 汇编语言程序设计(第四版) 电子工业出版社 [5] 吕晓庆 80386/80486 系统编程实践 淅江大学 出版社 [6] 袁可风 汇编语言程序设计 江西高校出版社 [7] 戴水贵 Windows 汇编语言程序设计教程 清华大学出版社 [8] 罗杰 INTEL86 系列汇编语言程序设计 江西科学技术出版社 附:程 序源代码 Init_game macro op1,op2,op3,op4,op5,op6 mov cx,00h mov dh,op1 mov dl,op2 op6:mov ah,02h mov bh,00h int 10h push cx mov ah,0ah mov al,op3 mov bh,00h mov cx,01h int 10h pop cx inc cx inc op4 cmp cx,op5 jne op6 endm clear_screen macro op1,op2,op3,op4。 清屏宏定义 mov ah,06h mov al,00h mov bh,07h mov ch,op1 mov cl,op2 mov dh,op3 mov dl,op4 陕西师范大学汇编语言课程设计实验报告 — 15— int 10h mov ah,02h mov bh,00h mov dh,00h mov dl,00h int 10h endm menu macro op1,op2,op3。 菜单显示宏定义 mov ah,02h mov bh,00h mov dh,op1 mov dl,op2 int 10h mov ah,09h lea dx,op3 int 21h endm data segment ZK db HELLO,WELCOME TO HERE!$ no db My name is Liu Hui,my student number is:41012169.$ meg db Press 39。 ENTER39。 key to continue.......$ meg1 db When a letter is dropping,please hit it!$ meg2 db Press 39。 SPACE39。 key to pause!$ meg3 db Press ESC key to retur。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。