图形程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告

一、实验目的

1.掌握屏幕显示方式的设置方法;

2.掌握写象素点的方法;

3.掌握宏的定义和调用方法。

二、实验内容

1.编程实现几何图形的绘制,不同颜色的填充。

2.具体要求:

将屏幕设置成640*480,在屏幕上画6个几何图形:空心正方形、空心长

方形、实心正方形、实心长方形、空心直角等腰三角形、实心直角等腰三角形。大小、颜色、位置自定。

三、编程流程图

四、程序源代码

code segment

assume cs:code

go: mov ah,0

mov al,12h ;12色

int 10h

mov ah,0bh

mov bh,0

mov bl,3 ;调色板(背景色)

int 10h

mov ah,0ch ;写像素

mov al,12 ;颜色

mov dx,20 ;列坐标

mov cx,5 ;行坐标

l1: int 10h

inc cx

cmp cx,85 ;行坐标增加到85

jb l1

l2: int 10h

inc dx

cmp dx,100 ;列坐标增加到100

jb l2

l3: int 10h

dec cx

cmp cx,5 ;行坐标减少到5

ja l3

l4: int 10h

dec dx

cmp dx,20 ;列坐标减少到20

ja l4 ;画出空心正方形

mov ah,0ch

mov al,2

mov dx,40

mov cx,220

l5: int 10h

inc cx

cmp cx,320 ;行坐标增加到320

jb l5

l6: int 10h

inc dx

cmp dx,90 ;列坐标增加到90

jb l6

l7: int 10h

dec cx

cmp cx,220 ;行坐标减少到220

ja l7

l8: int 10h

dec dx

cmp dx,40 ;列坐标减少到40

ja l8 ;画出空心长方形

mov ah,0ch

mov al,9

mov dx,20

l9: mov cx,435

int 10h

inc dx

cmp dx,120

jb l9

l10: int 10h

inc cx

cmp cx,535

jb l10

l11: int 10h

dec cx

dec dx

cmp dx,20

ja l11 ;画空心直角等腰三角形

mov ah,0ch

mov al,5

mov dx,260

l12: mov cx,5

l13: int 10h

inc cx

cmp cx,105

jbe l13

inc dx

cmp dx,360

jbe l12 ;画实心正方形 mov ah,0ch

mov al,3

mov dx,280

l14: mov cx,220

l15: int 10h

inc cx

cmp cx,420

jbe l15

inc dx

cmp dx,340

jbe l14 ;画实心长方形 mov ah,0ch

mov al,9

mov dx,260

mov si,435

l16: mov cx,435

l17: int 10h

inc cx

cmp cx,si

jbe l17

inc dx

inc si

cmp dx,460

jbe l16 ;画实心直角等腰三角形

mov ah,7

int 21h

mov ah,4ch

int 21h code ends

end go

五、运行结果

1、编译连接结果

2、程序执行结果

六、实验总结

编写这个程序还是很有趣的,可以根据自己的意愿画出各种形状和色彩的几何图形,就是画图时,根据所设屏幕的大小,各个图形的布局要合理,以便更好地观察效果。另外,在画实心图形时,要认真设计好循环的方式,已画出完整的图形。

相关文档
最新文档