汇编语言编写动画心的详细报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计说明书 NO. 一、课程设计的目的及内容 汇编语言与计算机系统组成是一项实用性很强的技术,只有进行实际操作,将理论应用于实际中,才能确实掌握书中的知识点。通过设计开发汇编软件,不仅可以加深学生对汇编程序基本概念的了解,巩固学习成果;还能够提高实际动手能力及对计算机硬件的了解,掌握计算机软件与硬件之间的联系。为学生后续课程的学习,打下良好的基础。同时汇编课程设计也是计算机科学与技术专业的基础选修课的实践环节。本课程设计的主要目的是掌握汇编程序设计的基本方法,并掌握程序设计中常见的错误的排除和避免。提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼分析解决实际问题的能力,从而进一步提高了实际运用的能力。 二、开发坏境 1.硬件环境 普通pc机 2.软件环境 (1)使用编辑软件TE.EXE进行源程序的编写。 (2)使用汇编软件MASM.EXE对源程序汇编。 (3)使用连接软件LINK.EXE对目标文件进行连接。 (4)使用调试软件DEBUG.EXE对可执行程序进行调试。 (5)DOS系统 三、功能分析 1.需求分析 1.1.设计内容 设计一彩色动画的程序,一个颜色方框从四周向中间由大变小,并留下痕迹,中心位置出现一颗红“心”。 1.2.设计要求 (1)按任意键进入图形显示; (2)按空格键重复出现“心”; (3)按回车键将重复整个图形; (4)q键退出程序。 1.3.设计思路 本程序主要是利用BIOS功能调用的10H中断类型实现的。利用其12号功能,设置像素点的颜色、坐标和个数,从而画出图形需要的线段,如画方框、画斜线、画水平垂直线,以及采用行、列坐标连续写像素的方法填充图形等。画完图形之后延时,清屏。同时,利用dos功能调用的08号功能,从键盘输入字符。如果是任意键,则进入图形显示;如果是回车键,则重新显示这个图形;如果是空格键,则改变“心”的大小;如果是“q”键,则退出。 该系统只是简单的运用字符进行设计组成相应的图像,运用masm编程工具、link连接程序在debug环境下进行调试而成。在系统中界面中,首先是按下任意键进入动画心界面。然后会按Q键退出的提示信息,其中包含2个隐藏信息:按空格键刷新心型图案,来实现动态心;按其余键是重复动画心的显示。 其中主要运用的指令有:push(压入堆栈);Pop(从堆栈中释放首地址的内容);sub(减法指令);add(加法指令);mov(传送指令);call(过程调用指令);lea(地址传送指令);inc(加一指令);cmp(比较指令);jmp(跳转指令);jnz(条件跳转指令)。 2.详细设计 2.1主程序设计 先设置图形显示方式为320*200彩色图形方式、背景色为蓝色和设置彩色组,再利用其12号功能,设置像素点的颜色、坐标和个数,从而画出图形需要的线段,如画方框、画斜线、画水平垂直线,以及采用行、列坐标连续写像素的方法填充图形等。画完图形之后延时,清屏。同时,利用dos功能调用的08号功能,从键盘输入字符。如果是任意键,则进入图形显示;如果是回车键,则重新显示这个图形;如果是空格键,则改变“心”的大小;如果是“q”键,则退出。 在编写主程序时遇到了一些问题,我们在运行时发现了错误,后来发现在调用dos的08号功能时时出现了错误,通过查看资料发现在调用dos的08号功能时应该在AL中存放输入字符的ASCII码 ,而我们直接输入的字符。在画方框、对角线、任意水平线时先是设置cx,bx,dx各个寄存器赋予不同的初值,但我们在开始的时候没有把初值设置好,结果造成了程序的出错,后来经过调整才保证了程序的正常运行。 为了方便了解系统的操作过程,特画出改程序的系统流程图。动画心的主程序流程图见图1。 设置显示方式开始 设置显示方式 开始 结束 设置背景色,彩色调板 显示提示信息 从键盘输入任意字符 清屏 从小到大画方框 延时 画十字线 任意水平垂直线 画心 延时 从键盘输入字符 (al)=回车键? (al)=空格键? (al)=q 从复出现心 No Yes Yes Yes No No 图1 动画心的主程序流程图 2.2 图形显示设计 由程序要实现的显示效果可见,程序中要引入多种图案,具体由方框、对角线、任意水平垂直线、“心”等来形成整个图案。所以要在程序中出现多次各种图案来填充整个图形。 (1)画方框 进入显示动画心的界面时,首先出现的是方框。采用了mov,sub,inc,cmp,jnz等指令进行了定义,来显示出方框的逐步显示。先是设置cx,dx,bx各个寄存器不同的初值,即设置像素点的颜色、坐标和个数,接着由大到小画方框,每画一个方框之前,各个寄存器都要设置不同的初值。

文档评论(0)

勤劳的小厮 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档