网站大量收购独家精品文档,联系QQ:2885784924

《微机原理与接口技术》课程设计-显示图型变换程序汇.doc

《微机原理与接口技术》课程设计-显示图型变换程序汇.doc

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《微机原理与接口技术》课程设计-显示图型变换程序汇

显示图型变换程序 一.设计任务及要求 初始条件: 按S用四种颜色各显示一个矩形的程序,按T用三种颜色各显示一个三角形的程序,按C用一种颜色显示一个圆。按Q退出程序。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 设计任务及要求分析 方案比较及认证说明 系统原理阐述 硬件设计课题需要说明:硬件原理,电路图,所采用器件的功能说明 软件设计课题需要说明:软件思想,流程图,源程序及程序注释 调试记录及结果分析 总结 参考资料 附录:芯片资料或程序清单,软件演示屏幕拷贝图或硬件实物图 二.原理分析 本课程设计大体可分为三个子程序,即显示矩形,显示三角形和显示圆的程序。设计之前要查询资料,熟悉DOS调用和BIOS调用,以便在DOS界面上能输出图形和颜色,BIOS调用功能如表1所示。 表1 常用的BIOS中断类型 中断号 功能 中断号 功能 0H 除法出错 0EH 软盘中断 1H 单步中断 0FH 并行打印机中断 2H 不可屏蔽中断 10H 显示中断 3H 断点中断 11H 取设备信息 4H 溢出中断 12H 取内存容量 5H 打印屏幕中断 13H 磁盘 8H 8254系统定时中断 14H 异步通信 9H 键盘中断 15H 磁带 0AH 彩色图形接口中断 16H 键盘 0BH 异步通信串行口1中断 17H 打印机 0CH 异步通信串行口0中断 18H 驻留BIOS 0DH 硬盘中断 19H 引导装入程序 不仅如此,在了解了常用BIOS中断类型后,还必须学习如何用BIOS功能调用编写显示程序。 INT 10H提供了两种图形方式下读写像素的功能: AH=0CH,写像素。 输入参数:DX=像素行。 CX=像素列。 BX=显示页号。 AL=像素颜色值。 返回结果:无。 AH=ODH,读像素。 输入参数:DX=像素行。 CX=像素列。 返回结果:AL=像素颜色值。 使用读写像素功能时注意,像素的行列坐标的值应取决于当前显示模式。 三.设计方案 1.方案一 (1).设计分析 程序主流程图如图1所示: 图1 程序主流程图 显示变色矩形程序流程图如图2所示: 图2 变色矩形流程图 显示变色三角形程序流程图如图3所示: 图3 变色三角形流程图 画圆程序流程图如图4所示: 图4 画圆流程图 画圆程序是最难的一个,只能用离散的点来组成。算法如下:电脑屏幕是由X、Y坐标组成的二维平面,在屏幕中央位置取一点为圆心,这就是坐标轴的交点(O点),取半径适中,然后交X轴于A、C两点,如图5所示。DE直线垂直于X轴,则有|AB|*|BC|=|BD|*|BE|。编程序时,取A点为起点,逐步沿X轴正向移动,每次移动一个像素点,计算A点的位置坐标,然后让D、E点的纵坐标从零递增,直到刚符合上述等式,即取纵坐标的平方值大于等式左边的第一个值,所以要用两个循环嵌套才能实现此功能。第一次运行后的结果截屏如图6所示。 图5 算法实现原理图 图6 第一次运行结果 由此产生一个严重的问题,就是D、E点取点时的第一个、第二个点离起点太远,最后两个点离终点太远。所以必须做修改。 修改算法如下:在第一段程序的基础上,再画一个圆,第二个圆与第一个圆唯一的不同之处就是起点不同,改为F点,依据同样的算法,沿Y移动,相应变换的就是另外两个点,当程序运行结束后,其实画的是两个圆,重叠后就是一个完整的圆。最终运行结果如图9所示。最后的程序代码在附录中。 (2).运行结果 变色三角形程序演示结果如图7所示 图7 变色三角形演示结果 变色矩形演示结果如图8所示 图8 变色矩形演示结果 画圆演示结果如图9所示 图9 画圆演示结果 命令输入窗口如图10所示 图10 命令输入窗口 2.方案二 方案二与方案一的不同在于画圆的程序,其程序如附录中所示。方案一算法简单而创新,实现简洁而明了,且修改方便;而方案二中程序冗长,且需调用许多子程序,算法复杂,不易修改。所以相比较而言,方案一具有明显优势,最终选择方案一。 四.心得体会 此次课程设计可以说是受益匪浅,通过查阅了很多资料,了解了许多汇编程序的思想,扩展了自己的视野,不再仅仅局限于书本中几条简短的程序,而且更重要的是明白写程序的态度:仔细谨慎,精益求精。在编写此程序时,最头疼的是编写画圆程序,因为汇编语言没有开方算法,所以只能用点来组成圆,秉着学术至上的态度,我尽量使组成圆的点连续,这可是一个浩大的工程:先是在网上下载了一个高手编的画圆程序,但程序很长,而且比较深,迫使我和组员共商简便方法,功夫不负有心人,经过漫长的摸索与不懈的努力,我们得出了新算法,并编写出了更加简便的程序,经过一次次的调试,最终

您可能关注的文档

文档评论(0)

liwenhua11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档