汇编语言课程设计报告-打字练习程序_第1页
汇编语言课程设计报告-打字练习程序_第2页
汇编语言课程设计报告-打字练习程序_第3页
汇编语言课程设计报告-打字练习程序_第4页
汇编语言课程设计报告-打字练习程序_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

IIIIIIII提供Z提供Z解被6冲我大号SHAANXINORMALUNIVERSITY汇编语言课程设计报告程序题目:打字练习程序TOC\o"1-5"\h\z学生姓名:XX班级:2010级计算机科学与技术专业4班学号:XXX院系:计算机科学学院指导教师:XXX目录TOC\o"1-5"\h\z1设计目的32概要设计3系统总体分析3主模块框图及说明43详细设计5主模块及子模块说明5各模块详细设计5主界面模块5随机字母产生模块7字母落下模块9暂停模块104.程序调试1.1运行界面分析11调试过程及分析135心得体会13设计体会13系统改进13参考文献14附:程序源代码14陕西师范大学汇编语言课程设计实验报告陕西师范大学汇编语言课程设计实验报告陕西师范大学汇编语言课程设计实验报告陕西师范大学汇编语言课程设计实验报告————图4-1程序主界面当用户按下ENTER键时,程序自动跳入到图4-2的界面,字母随机落下,用户便可以开始打字练习了。练习只要按照说明来做就可以了。L口I回L口I回11^11图4-2打字界面4.2调试过程及分析当程序运行时,我发现当按esc退出,如果之前按下空格键暂停时,则退不出去,必须再次按下空格是程序开始运行才能退出。主要是因为按下空格键时,程序收到暂停信号,执行跳转,跳转到一个死循环模块,就是无限显示当前屏幕,不做其他任何操作,直到键盘再次输入空格时.5心得体会设计体会课程设计对我们多数初学汇编的学生来说,确实是一座高峰。翻越他是需付出努力的。我也是在探索了好久才弄明白他的,在此做个小总结,也许对自己今后的学习有些借鉴作用。在整个程序的编写中,调试占了很大部分的时间,要想写好汇编程序,必须认真对待代码的每一个细节,还必须熟练的掌握debug指令。通过这次实际动手能力的培养,我进一步熟悉了汇编的结构和使用法,基本达到能独立阅读。我觉得学习汇编的一个较大好处就是可以了解电脑中每一个字节数据的来龙去脉,我觉得学习汇编可以发挥一下自己的空间想象力。系统改进这次课程设计,其主题内容都以满足课程实际的要求,各功能都能相应的完成,即写一个程序,运行可执行程序后,出现主界面,按回车键出现由26个字母组成的乱序行,这时其中任一字母落下,在键盘上敲入该字母,如果输入正确,字母消失;按回车键进入打字练习;按ESC键返回主界面;按空格键暂停;按‘E’退出,但是感觉整个程序界面不够华丽,看着粗糙的界面,不能引起别人的注意,下次能够吧界面做得更好看一些。参考文献[1]李敬兆8086/8088和arm核汇编语言程序设计中国科技大学出版社[2]沈美明,温冬婵编著IBM—PC汇编语言程序设计(第二版)清华大学出版社出版[3]罗云彬Windows环境下32位汇编语言程序设计电子工业出版社[4]【美】KipR.Irvine著,温玉杰等译Intel汇编语言程序设计(第四版)电子工业出版社吕晓庆80386/80486系统编程实践淅江大学出版社袁可风汇编语言程序设计江西高校出版社[7]戴水贵Windows汇编语言程序设计教程清华大学出版社[8]罗杰INTEL86系列汇编语言程序设计江西科学技术出版社附:程序源代码Init_gamemacroop1,op2,op3,op4,op5,op6movcx,00hmovdh,op1movdl,op2op6:movah,02hmovbh,00hint10hpushcxmovah,0ahmoval,op3movbh,00hmovcx,01hint10hpopcxinccxincop4cmpcx,op5jneop6endmclear_screenmacroop1,op2,op3,op4;清屏宏定义movah,06hmoval,00hmovbh,07hmovch,op1movcl,op2movdh,op3movdl,op4int10hmovah,02hmovbh,00hmovdh,00hmovdl,00hint10hendmmenumacroop1,op2,op3;菜单显示宏定义movah,02hmovbh,00hmovdh,op1movdl,op2int10hmovah,09hleadx,op3int21hendmdatasegmentZKdb"HELLO,WELCOMETOHERE!$"nodb"MynameisLiuHui,mystudentnumberis:41012169.$"megdb"Press'ENTER'keytocontinue$"meg1db"Whenaletterisdropping,pleasehitit!$"meg2db"Press'SPACE'keytopause!$"meg3db"PressESCkeytoreturnmaininterface!$"meg4db"Pressletter'E'toexit!$"speeddw500dlettersdb"jwmilzoeucgpravskntxhdyqfb"db"iytpkwnxlsvxrmofzhgaebudjq"db"nwimzoexrphysfqtvdcgljukda"letters_bakdb"jwmilzoeucgpravskntxhdyqfb"db"iytpkwnxlsvxrmofzhgaebudjq"db"nwimzoexrphysfqtvdcgljukda"letter_counterdb0life_flagdb78dup(0)position_flagdb78dup(0)present_positiondb1dataendsstacksegmentparastack'stack'db64dup(0)stackendscodesegmentmainprocfarassumecs:code,ds:data,ss:stackstart:movax,datamovds,axmovletter_counter,00hmovpresent_position,1leasi,position_flagmovah,00hmovcx,00hinit_postion_flag:mov[si],ahincsiinccxcmpcx,78djneinit_postion_flagleadi,lettersleasi,letters_bakmovcx,00hinit_letters:movah,[si]mov[di],ahincsiincdiinccxcmpcx,78djneinit_lettersmovah,00hleasi,life_flagmovcx,00hinit_life_flag:mov[si],ahincsiinccxcmpcx,78djneinit_life_flagmovcx,00hmovah,01horch,00010000bint10hclear_screen00d,00d,24d,79dInit_game00d,00d,0ah,dl,80d,nextsign1Init_game24d,00d,0ah,dl,80d,nextsign2Init_game00d,00d,0ah,dh,25d,nextsign3Init_game00d,79d,0ah,dh,25d,nextsign4menu05d,15d,ZK;菜单信息的宏调用menu07h,15d,nomenu09d,15d,megmenu11d,15d,meg1menu13d,15d,meg2menu15d,15d,meg3menu17d,15d,meg4put:movah,02h;设置光标位置movbh,00hmovdh,22dmovdl,33dint10hmovah,01h;从键盘输入任意字符int21hcmpal,0dhjespeed3cmpal,45hjeexitexit:movah,4chint21hspeed3:movax,speed+12movspeed,axjmpbeginbegin:clear_screen01d,01d,23d,78d;清屏宏调用clear_screen01d,01d,23d,78dInit_game23d,01d,01h,dl,78d,nextsign5movah,02hmovbh,00hmovdh,01hmovdl,01hint10hmovcx,00hleasi,lettersnextletter:movah,02h;显示字母movdl,[si]int21hincsiinccxcmpcx,78djenextcyclejmpnextletterfrom_front:subpresent_position,78djmpgobackto_sifind_zero:cmpletter_counter,78djerecyclecmppresent_position,78djefrom_onemovah,00hnextsi:addpresent_position,01hincsicmp[si],ahjegobackto_dicmppresent_position,78djefrom_onejmpnextsifrom_one:movpresent_position,01hjmpgobackto_sirecycle:movletter_counter,00hmovpresent_position,01dleasi,position_flagmovcx,00hmovah,00hclearsi:mov[si],ahinccxcmpcx,78djenextcycleincsijmpclearsinextcycle:leadi,lettersleasi,position_flagaddpresent_position,31dcmppresent_position,78jafrom_frontgobackto_si:addsi,wordptrpresent_positiondecsimovah,[si]cmpah,01hjefind_zerogobackto_di:movah,01hmov[si],ahadddi,wordptrpresent_positiondecdimovdl,present_positionmovah,02hmovbh,00h

movdh,01hint10hmovcx,00hnextrow:pushcxmovcx,00hout_cycle:;延迟pushcxmovcx,00hin_cycle:addcx,01hcmpcx,1000jnein_cyclepushdxmovah,06h;从键盘输入字符movdl,0ffhint21hpopdxjzpasscmpal,1bh;如果键入ESC,则返回主菜单jeto_start1cmpal,"";如果键入SPACE,则游戏暂停jepausecmpal,[di];输入字母正确!则字母消失jedisappearpass:popcxinccxcmpcx,speedjeprintjmpout_cyclepause:pushdx;暂停处理movah,06hmovdl,0ffhint21hpopdxcmpal,""jnepausejmppassto_start1:;返回主菜单jmpstartprint:movah,0ah;在当前光标位置写空格moval,""movbh,00hmovcx,01hint10hincdhmovah,02h;改变光标位置movbh,00hint10hmovah,0ah;在当前光标位置写字母moval,[di]movbh,00hmovcx,01hint10hpopcxinccxcmpcx,21djeprint_next_letterjmpnextrow;下一行disappear:;击中字母后输出空格popcxpopcxmovah,0ahmoval,""movbh,00hmovcx,01hint10hjmphitprint_next_letter:leasi,life_flagaddsi,wordptrpresent_positiondecsimovah,0ahmoval,""movbh,00hmovcx,01hint10hincdhmovah,02hmovbh,00hint10hmovah,0ahmoval,""movbh,00hmovcx,01hint10hmovah,1mov[si],ahhit:movah,02hmovbh,00hmovdh,01hmovdl,present_positionint10hmoval,[di];出现下一个新字母的数法addal,7cmpal,7ahjaconvey_lettermovah,0ahmovbh,00hmovcx,01hint10hmov[di],aladdletter_counter,01hjmpnextcycleconvey_letter:subal,7ahaddal,61hmovah,0ahmovbh,00hmovcx,01hint10hmov[di],aladdletter_counter,01hjmpnextcycleclear_screen01,01,23,78movah,02hmovbh,00hmovdh,11dmovdl,20dint10hincdhincdhmovah,02hmovbh,00hint10hnotkey:movah,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论