1、 微型计算机原理及应用微型计算机原理及应用课程课程设计设计 图形画法 姓名 院系 信息学院自动化系 班级 学号 指导教师 时间 2010 年 12 月 29 日 目 录 目目 录录 摘要 I INTRODUCTION . 错误错误!未定义书签。未定义书签。 1 引言 1 1.1 课程设计的目的 1 1.2 课程设计的内容 1 1.3 设计要求 1 2 设计过程 2 2.1 设计规划 2 2.2 程序流程图 2 2.3 程序及注释 3 3 仿真及调试 6 4 结束语 7 4.1 实验总结 7 4.2 展望 7 参考文献 . 8 摘要 I 摘要 微型计算机原理与应用是通过学习 8086 处理器,理
2、解并熟悉微型计算机的结构, 组成,最终能通过搭建电路和编写程序来实现控制和计算等操作。本设计通过学习用汇 编语言编写一个屏幕绘图程序, 在屏幕上绘制一个标准的圆。 通过使用系统功能调用 INT 10H 绘图指令来实现坐标画图。通过一定的算法,计算出圆的点所在的位置,然后在对 应坐标下用 INT 10H 来打点。程序在 EMU8086 仿真软件上编写和仿真。 关键词:微型计算机;8086 处理器;汇编语言;画圆;INT 10 ABSTRACT II 1 图形画法 电气 1081,200811631114,霍兆权 指导教师:张瑛 1 引言 微型计算机简称“微型机” 、 “微机” ,由于其具备人脑的
3、某些功能,所以也称其为 “微电脑” 。是由大规模集成电路组成的、体积较小的电子计算机。它是以微处理器为 基础,配以内存储器及输入输出(I0)接口电路和相应的辅助电路而构成的裸机。把微 型计算机集成在一个芯片上即构成单片微型计算机(Single Chip Microcomputer)。 汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语合中,用助记 符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号 代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语 言。使用汇编语言编写的程序,机器不能直接识别
4、,要由一种程序将汇编语言翻译成机 器语言, 这种起翻译作用的程序叫汇编程序, 汇编程序是系统软件中语言处理系统软件。 汇编程序把汇编语言翻译成机器语言的过程称为汇编。 本设计用的 INT 10H 指令,是由 BIOS 对屏幕及显示器所提供的服务程序,而后倚 天公司针对倚天中文提供了许多服务程序,这些服务程序也加挂在 INT 10H 内。使用 INT 10H 中断服务程序时,先指定 AH 寄存器编号,该编号表示欲调用的功用,当一切 设定好之后再调用 INT 10H。 1.1 课程设计的目的 通过自己完成一个汇编程序设计,熟悉并掌握微型计算机的编程控制方法和设计流 程,学习如何通过微型计算机完成一
5、项工作。通过熟悉汇编指令,可以加深对微型计算 机面向机器的特点。 1.2 课程设计的内容 图形画法,通过画一个圆,掌握使用 INT 10H 系统功能指令显示的方法;通过学习圆 的点的位置计算,熟悉用汇编编写计算程序的方法。 1.3 设计要求 在显示器上画出规则的图形(圆形) 2 2 设计过程 2.1 设计规划 本设计采用 INT 10H 功能号为 12 的绘图功能,该功能简介如下: AH=0Ch/INT 10H 是在绘图模式中显示一点 ( 也就是写入点像,write graphics pixel ),而 AH=0DH/INT 10H 则是读取点像 ( read graphics pixel )
6、。 写入时, 要写入位置 X 座标存于 CX 寄存器, Y 座标存于 DX 寄存器, 颜色存于 AL 寄存器。和文字模式相同,萤光幕上的 Y 座标是最上面一列为零,越下面越大,X 座 标则和数学的定义相同。 那么,可以采用坐标打点的方法,先把圆要画的点先计算出来,然后按点来作图。 应为圆的四象限对称关系,通过计算一个象限的坐标,然后用坐标对称法来把其余象限 也画出来。 由于该功能的坐标为屏幕上方为 y 轴起始值,x 轴位于屏幕中线。所以,得到的圆 的点的坐标值还要通过坐标平移才能对应正确的屏幕坐标。 位置算法可以采用 x2+y2=R2 来判断,可以使用扫描的方法,x 先从 0 开始,把 y 值从半径开始,通过判断 x2+y2=R2 来确定该 y 值是否满足近似在圆上,不满足 y 减一,直到找到 y 满足上式为止。找到该点的之后,x 自加一,继续找下一点。 由于 x 越大,打的点越分散,需要交换坐标轴再画一次。 2.2 程序流程图 初始化圆的 坐标起始点 开始 通过计算x2+y2=R2 得坐标的增量,保存相 对的圆点坐