您好,欢迎访问三七文档
福建农林大学金山学院课程设计报告课程名称:汇编语言课程设计课程设计题目:动画设计“我爱大自然”姓名:系:信息与机电工程系专业:电子信息工程年级:2008级学号:082230066指导教师:\职称:助教2009~2010学年第二学期目录1课程设计的目的................................................................................................................22课程设计的要求................................................................................................................23课程设计报告内容.......................................................................................................................23.1设计思路……………………………………………………………………23.2程序流程图…………………………………………………………………23.3设计源程序…………………………………………………………………53.4动画示意图……………………………………………………………….194总结.........................................................................................................................................205参考文献…………………………………………………………………………206评分标准...............................................................................................................................21动画设计“我爱大自然”一、课程设计的目的《汇编语言课程设计》是电子信息工程专业集中实践性环节之一,是学习完《汇编语言》课程后进行的一次全面的综合练习。其目的是:培养学生熟练掌握汇编语言指令系统,深化和巩固指令系统和编程方法,提高学生的编程应用能力。为将来从事专业工作打下基础,培养良好的职业道德和严谨的工作作风。二、课程设计的要求1)具备初步的独立分析和解决问题的能力;2)初步掌握问题分析、系统设计、程序编码、测试等基本方法和技能;3)提高综合运用所学的理论知识和方法的能力;4)训练用系统的观点和软件开发一般规范进行软件开发,培养科学的工作方法和作风;5)设计的题目要求达到一定工作量,并具有一定的深度和难度;6)编写出课程设计说明书。三、课程设计报告内容(一)设计思路“我爱大自然”这个程序中包含了比较多的景物,既有静态的也有动态的,其中还有一段音乐。为了节省存储空间,提高程序设计的效率和质量,使程序简洁、清晰,便于阅读,同时也为了便于修改和扩充,采用子程序设计技术和宏定义,根据程序要实现的若干主要功能及个功能块要调用的公共部分,将程序划分为若干个相对独立的模块,为每个模块编制独立的程序段,最后将这些子程序根据调用关系连成一个整体。这样,整个程序就被分为几个子程序的有机统一。根据BIOS中断调用原理,设置80×25彩色文本显示方式,分别编写一个子程序显示“ILOVENATURE,LETUSGOAIRING”和一个子程序在屏幕上“画”树。这两个子程序所体现出来的事物都是的。为了实现小鸟能在空中翩翩飞舞和小汽车在林荫路上行驶,还要调用擦除子程序和延时子程序。擦除子程序的原理是根据相对位移设置光标位置,讲原来字符属性设置为黑底黑字,以达到擦除效果。延时子程序的原理也很简单,即设置循环次数,让CPU做一些“无用功”,这样读者就能看到小鸟“飞起来”和小汽车“跑起来”。可以改变循环次数来控制延时,达到想要的效果。动态的事物就这样产生了。(二)程序流程图图(1)程序总流程图图(2)画花子程序流程图图(3)道路两旁画小树(小草)子程序流程图(4)小鸟飞翔子程序流程图(三)、设计源程序SETIOMMACROX,Y,Z,L,M,NMOVX,YZL,MINTNENDMPUSHRMACROX,Y,Z,WPUSHXPUSHYPUSHZPUSHWENDMPOPRMACROX,Y,Z,WPOPWPOPZPOPYPOPXENDMSTACKSSEGMENTDW256DUP(?)STACKSENDSDATASEGMENTSTRING1DB'ILOVENATURE,LETUSGOAIRING'STRLEN1EQU$-STRING1FLOWERDB23DB'W',0CH,0,0DB'W',0CH,0,1DB'W',0CH,0,1DB'W',0CH,0,1DB'W',0CH,0,1DB')',09H,1,0DB'-',09H,0,-1DB'-',09H,0,-1DB'-',09H,0,-1DB'(',09H,0,-1DB'Y',09H,1,2DB'|',06H,1,0DB'/',0AH,0,1DB'\',0AH,0,-2DB'|',06H,1,1DB'/',0AH,0,1DB'|',06H,1,-1DB'\',0AH,0,-1DB'|',06H,1,1DB'/',06H,0,1DB'/',06H,0,1DB'\',06H,0,-3DB'\',06H,0,-1BIRDDB5DB1AH,06H,0,0DB1AH,06H,0,1DB1AH,06H,1,0DB1AH,06H,0,1DB20H,00H,0,1CARDB8DB23H,7,0,0DB0B1H,7,0,1DB0DBH,7,0,1DB0DBH,7,0,1DB4FH,7,1,0DB4FH,7,0,-3DB1,7,-2,1DB20H,0,0,1COUNTDW0POINTERDW0LINEDB0COLUMNDB0TREEDB5,0AHFREQDW196,220DW262,262,262,262,262,220,196DW262,262,262,262,294,262,220,262DW294,294,294,294,294,262,220DW294,294,294,294,330,294,330,392DW440,440,392,440,392,330DW294,294,330,294,262,220,196,220DW262,262,262,262,262,220DW262,196,220DW440,440,392,440,524,440DW392,330,294,262,220,196,220DW262,262,262,262,294,262DW262,330,392DW440,440,440,440,524,440DW392,392,392,440,392,330,294DW262,262,262,262,294DW330,330,294DW262,262,262,262,524,440DW392,392,392,440,392,330,392DW440,524,524,440,392DW392,330,392DW440,440,440,440,524,440DW392,392,392,440,392,330,294DW262,262,262,262,392DW330,330,294DW262,262,262,262,294,330DW392,392,330,392,330,392DW440DW9,9,196,660,294,294,262DW262,1TIMEDW400,400DW400,200,400,400,800,400,400DW400,200,400,200,200,800,400,400DW400,200,400,400,800,400,400DW400,200,400,200,200,800,400,400DW400,800,400,800,400,400DW400,200,200,400,400,800,400,400DW400,200,400,400,800,800DW1600,800,800DW400,800,400,800,400,400DW400,400,400,400,800,400,400DW400,800,400,800,400,200DW2400,400,400DW400,800,400,800,400,400DW400,800,200,200,800,400,400DW400,800,400,800,800DW2400,400,400DW400,800,400,800,400,400DW400,800,200,200,800,400,400DW800,400,800,400,200DW2400,400,400DW400,800,400,800,400,400DW400,800,200,200,800,400,400DW400,800,400,800,800DW2400,400,400DW400,800,400,800,400,400DW400,800,400,800,400,400DW3200DW800,400,400,400,400,400,400DW4000DATAENDSCODESSEGMENTASSUMECS:CODES,DS:DATA,ES:DATA,SS:STACKSSTART:MOVAX,DATAMOVDS,AXMOVES,AXSETIOMAH,0,MOV,AL,3,10HCALLCLEARCALLWRITE1CALLDELAY2CALLCLEARMOVDX,0901HCALLHUAMOVDX,090AHCALLHUAMOVDX,0912HCALLHUAMOVDX,091BHCALLHUAMOVDX,0925HCALLHUAMOVDX,092EHCALLHUAMOVDX,0941HCALLHUAMOVDX,094AHCALLHUACALLMOVEBIRDCALLMOVECARCALLMOVEBIRDCALLMUSICCALLCLEARMOVAX,4C00HINT21HWRITE1PROCMOVDX,0512HCALLHUAMOVDX,051BHCALLHUAMOVDX,0525HCALLHUAMOVDX,052EHCALLHUAPUSHRAX,BX,CX,DXLEABP,STRING1MOVCX,STRLEN1MOVDX,021aHMOVBH,0MOVBL,84HSETIOMAL,0,MOV,AH,13H,10HPOPRAX,BX,CX,DXRETWRITE1ENDPMOVEBIRDPROCCALLDRAWTREECALLDRAWTRE1MOVDX,0939HCALLHUALEASI,BIRDMOVDX,0602HPUSHRAX,BX,CX,DXPUSHSIXORCH,CHMOVCL,[SI]INCSIMOVCOUNT,CXMOVPOINTER,SIMOVLINE,DHMOVCOLUMN,DLNEXTB:ADDDH,[SI+2]ADDDL,[SI+3]CMPDL,60JBWRITEBPOPSIPOPRAX,BX,CX,DXRETWRITEB:MOVAH,2INT10HMOVAL,[SI]MOVBL,[SI+1]PUSHCXMOVAH,9MOVCX,1INT10HPOPCXADDSI,4LOOPNEXTBCALLDELAYCALLERASEBIRDJMPSHORTNEXTBMOVEBIRDENDPERASEBIRDPROCMOVCX,COUNTMOVSI,POINTERMOVDH,LINEMOVDL,COLUMNLB:ADDDH,[SI+2]MOVAH,2ADDDL,[SI+3]INT10HMOVAL,[SI]MOVBL,
本文标题:汇编语言课程设计
链接地址:https://www.777doc.com/doc-4411664 .html