图形变换程序设计.doc
《图形变换程序设计.doc》由会员分享,可在线阅读,更多相关《图形变换程序设计.doc(20页珍藏版)》请在沃文网上搜索。
1、武汉理工大学微机原理与接口技术课程设计说明书课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 自动化学院 题 目: 图形变换程序设计(要程序加扣扣二五九零其物流而肆意)初始条件:掌握8086汇编语言程序设计方法,设计一个图形变换显示程序。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1. 程序运行后,键盘输入不同进行不同处理:(1)输入Q,显示Thank You !并结束程序;(2)输入E,显示一个用不同颜色填充且带有边框的矩形图案;输入F,显示一个用不同颜色填充的圆形图案。2. 撰写课程设计说明书。内容包括:摘要、目录、正文、参考文献、附录(程
2、序清单)。正文部分包括:设计任务及要求、方案比较及论证、软件设计说明(软件思想,流程,源程序设计及说明等)、程序调试说明和结果分析、课程设计收获及心得体会。时间安排:12月30日-12月31日 查阅资料及方案设计1月2日-1月3日 编程1月6日 调试程序1月7日-1月8日 撰写课程设计报告指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录摘要I图形变换程序设计11 设计意义12 设计内容12.1程序的内容与要求12.2 程序运行条件13 方案设计13.1 设计思路13.1.1 显示字符程序13.1.2 显示圆形23.1.3 显示矩形23.2 程序流程图34 程序分解34.1
3、字符显示程序34.2 圆形显示程序34.3 矩形程序显示54.4 产生颜色的子程序64.5 屏幕初始化子程序65 运行结果显示65.1 矩形输出显示65.2 圆形输出显示75.3 字符串输出显示76 设计过程中的问题8心得体会9致谢10参考文献11附录12成绩评定表17摘要 进入21世纪,信息社会发展的脚步越来越快,对人才的的需求也呈现新的变化趋势。计算机成为新世纪高素质人才必须熟练掌握的工具,大学计算机公共课程也面临着新的机遇和挑战。 随着计算机硬件的发展,微机系统的功能越来越强,其价格也越来越便宜,因而拥有各行各业的用户。用户希望通过计算机方便地解决各自领域的问题。基于冯.诺依曼体系结构的
4、计算机要求自动解决任务,必须事先将问题分解为计算机能够处理的各个步骤,用某种语言将这些步骤描述出来,然后让计算机按规定的步骤控制计算机工作。计算机的程序设计语言也是经历了这样的发展过程。 汇编语言是计算机程序设计的语言之一,是在机器语言助记符的形式上完善而来。它改善了及其语言的可读性、可记性,能够利用计算机所有的硬件特征且能直接用来控制硬件,是计算机能够提供给用户的最快且最有效的汇编语言。 本次设计即是在8086汇编语言的基础上,利用Masmforwindows集成实验环境,通过应用微机原理中汇编的几个步骤编辑、汇编、连接、运行或调试运行,使得在doc界面完成图形变换。关键词:汇编语言 doc
5、 控制 Masm 图形变换程序设计1 设计意义(1) 巩固和加深课堂所学知识。(2)将课本上的理论知识和实际应用有机的结合起来,培养同学们分析和解决实际问题的能力。 (3)通过对汇编语言程序代码的阅读、修改、设计,理解和掌握复杂的汇编语言应用程序的编程,提高实践编程能力。 本程序要求按不同的键显示不同的图形,按“q”键退出。实质上通过做这道题目可以检查学生对汇编语言这门课程的基本知识的掌握程度。能用汇编语言熟练地运用顺序、选择、循环三大结构,进一步掌握各个指令的功能,特别是转向指令,能够让我们熟悉并掌握DOS系统功能调方法;同时在程序设计过程中熟悉并掌握各种指令的应用,知道编程的具体流程。 只
6、有掌握汇编语言基本编程方法,掌握程序各部分功能及其相互联系、相互作用,才能把程序写出来,才能把程序写好。2 设计内容2.1程序的内容与要求 掌握8086汇编语言程序设计方法,设计一个图形变换显示程序。程序运行后,键盘输入不同进行不同处理:(1)输入Q,显示Thank You !并结束程序;(2)输入E,显示一个用不同颜色填充且带有边框的矩形图案;输入F,显示一个用不同颜色填充的圆形图案。2.2 程序运行条件本程序可在DOS,windows 98或DOS模拟器上运行。所需要工具软件为MASM5.0及以上版本。3 方案设计3.1 设计思路3.1.1 显示字符程序 显示“Thank You”程序是最
7、易于设计的一部分,只需要定义其字符串为字节型变量,并定义在当键盘输人为Q时显示,并退出运行即3.1.2 显示圆形 首先,定义x为竖线的列值,Y1和Y2分别为竖线的两端点的行值,并将界面分成LEFT和RIGHT两部分。在LEFT部分,输入值为列数A,给圆的半径R赋具体值,通过算法完成下式求得A对应的行值,从而确定Y2,再利用中间变量实现Y1与Y2的等值,即可画出LEFT部分的一条弦。再用宏定义,使A值从0到R,完成弦在0到R上的积分,就形成左半部分的半圆,同理,可完成右半部分的半圆,两个半圆整合,便形成圆。 图3-1 定义弦 图3-2 计算圆上点的坐标 3.1.3 显示矩形 先确定一点,定义为矩
8、形左上角的列号和行号,即确定了矩形的一个角点坐标,再定义其长度和宽度并赋值,知道左上角角点坐标及矩形长宽,即可画出矩形。边框的设计实际是大小两个矩形的重叠形成的,定义第二个矩形时,其角点及长宽比之前的尺寸少有增加,酌情而定,设置输出时,底层显示尺寸较大的矩形,上层显示尺寸较小的矩形,使得上层矩形显示完整,下层矩形显示多出来的部分,即形成边框,并在输出颜色是设置两个举行的色差,从而明显显示出边框。3.2 程序流程图 程序流程图如图3-3所示 图3-3 程序流程图4 程序分解4.1 字符显示程序 在设计思路中已经提到,显示字符的程序较为简单,只需用字节型变量定义字符串,并定义在接收Q是显示,并退出
9、运行即可。 DB 0DH,0AH,Q: display Thank You ! and quit to DOS.,0DH,0AHMSGQ DB 0DH,0AH,Thank You !,$4.2 圆形显示程序(1)利用弦的积分方法,定义宏: LINE MACRO X,Y1,Y2 ;画列值为x,行值从Y1到Y2的直线 LOCAL LL,FIRST MOV AAAAA MOV AAAAA MOV AAAAA MOV AAAAA JMP AAAAALL: INC AAAAA ;行值加1FIRST: MOV AAAAA INT 10H CMP DX,Y2 JNZ LL ;判断Y1和Y2是否相等,若相等则
10、完成 ENDM(2)定义坐标: CIRCLE MACRO MOV A,0 ;初始化圆的横坐标AGA: CALL AAA ;计算纵坐标的值 MOV AAA MOV CL,A ADD CX,X0 MOV AAA ;右平面弦的列值 MOV AAA MOV CL,A NEG CX ADD CX,X0 MOV AAA MOV AAA ADD AAA MOV AAA ;弦的上端点的行值 MOV AAA NEG AAA ADD AAA MOV AAA;弦的下端点的行值 LINE AAA LINE RIGHT,DOWN,UP;在右平面画弦 INC A MOV AL,R(3) 计算纵坐标的子程序: SQRT P
11、ROC NEAR ;计算行坐标 MOV MUL MOV MOV MUL SUB MOV CX,0LAST1: MOV DX INC D SUB AX JC E INC C JMP LEXIT1: MOV H,CX;计算结果保存在H单元内 RETSQRT ENDP4.3 矩形程序显示 产生矩形的子程序: RECTANGLE PROC NEAR PUSH ? PUSH ? PUSH ? PUSH ? PUSH ? MOV D? ;矩形左上角行号 MOV CX? MOV AL,? MOV DI? ;矩形的长 ADD DI,CX MOV SI,?TWID ;矩形的宽 ADD SI,DXHLINE: M
12、OV C?MNHAGAIN: MOV AHV MOV ? INT ? INC CX CMP ? ;是否达到矩形的长? JL HA? ADD DX,1 CMP D?E POP ? POP ? POP ?X POP D? POP AX RETRECTANGLE ENDP4.4 产生颜色的子程序 RANDOMCOLOR ?OC NEAR PUSH ? PUSH BX PUSH ?XRANDCOLOR: IN AL,40H CMP A? JA ?OLOR MOV V?,AL POP ? POP BX POP AX RETRANDOMCOLOR ENDP4.5 屏幕初始化子程序 CLSMENU PROC
13、 NEAR MOV ? ;设置屏幕显示方式 MOV ?;定义成640*480 16色图形模式 INT 10H LEA B? ;显示菜单 MOV AH,13H MOV AL,01 MOV C? MOV ? MOV BH,0 MOV ? INT ? RETCLSMENU ENDP5 运行结果显示5.1 矩形输出显示 输入E,矩形输出显示如图5-1所示 图5-1(a) 矩形输出显示程序 图5-1(b) 矩形输出显示程序5.2 圆形输出显示 输入F,圆形输出显示如图5-2所示 图5-2(a)圆形输出显示 图5-2(b)圆形输出显示5.3 字符串输出显示 输入Q,字符串输出显示如图5-3所示5-3 字符
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图形 变换 程序设计