- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计报告
课程名称 汇编语言程序设计
课题名称 画网格线
专
业
通信工程
班
级
通信 1281
学
号
201213120102
姓
名
李勇
指导教师
廖智
2015年 6 月 30 日
湖南工程学院
课程设计任务书
课程名称 汇编语言程序设计
课 题 画网格线
专业班级
通信 1281
学生姓名
李勇
学
号
201213120102
指导老师
廖智
审
批
廖智
任务书下达日期
2015 年 6
月 8
日
任务完成日期
2015 年 6
月 30
日
目 录
1. 题目 3
2. 程序总体设计方案、思路 4
3. 程序设计框图 4
4. 源程序清单 6
5. 程序调试结果及分析 15
6. 设计总结 17
题目
本课程设计选择的题目为:画网格线。
要求: A、背景为蓝色、横线为红色、直线为黄色。
B、按用户输入的起点和终点坐标、 列距和行距的大小画出任意条横竖线。
C、参数以十进制数形式输入,格式如下:
Please enter starting point (x1,y1):XX, XX
Please enter ending point (x2,y2):XX, XX
Please enter distance (row,col):XX, XX
程序总体设计方案、思路
2.1. 程序设计方案
本程序不大,设计方案比较简单,为了增加程序可读性,使用了不少子程序和宏,使用的子程序如下:
Enter_Chr 子程序,其功能为输出一个字符。
Enter_CTLF 子程序,其功能为输出回车换行。
GetCursor 子程序,其功能为取光标位置。
SetCursor 子程序,其功能为置光标位置。
Input_Digit 子程序,其功能为键盘输入一个 N 位的十进制数字,将其转换成二进制数并保存在指定的内存单元。
程序还使用了宏汇编技术,缩短了源程序的篇幅,使程序结构更加清晰,提高了程序的可读性,使用的宏如下:
Output 宏,其功能为显示指定地址( Str_Addr )的字符串。
2.2 程序总体思路
程序总体思路如下:
1、主程序首先提示用户输入相关信息,输入起点和终点坐标、列距和行距。
2、然后设置显示方式,设为 640x480, 16 色图形显示方式。
3、接着循环设置每个像素点,把屏幕设置为蓝色背景。
4、按照用户输入的起点和终点坐标、行距,画出相应的红色横线。
5、按照用户输入的起点和终点坐标、列距,画出相应的蓝色竖线。
6、按任意键退出,设置 80x25, 16 色文本显示方式。
7、退出程序。
程序设计框图
3.1. 程序流程图如下
1
图 3.1 程序流程图
2
3.2. 画线流程图
图 3.1 画红线流程图
3
源程序清单
源程序清单如下:
本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
CR
EQU
000DH
LF
EQU
000AH
KBBack
EQU 0008H
-----------------------------------
------
Dark Colors (Foreground Background)
ConstantValue
Black
EQU
0
Blue
EQU
1
Green
EQU
2
Cyan
EQU
3
Red
EQU
4
Magenta
EQU
5
Brown
EQU
6
LightGray
EQU
7
Light Colors(Foreground)
ConstantValue
DarkGrayEQU 8
LightBlue EQU 9 LightGreen EQU 10
LightCyanEQU 11
LightRed
EQU
12
LightMagenta EQU
13
Yellow
EQU
14
White
EQU
15
Blinking
EQU
80H
4
-----------------------------------
------
功能:显示指定地址( Str_Addr)的字符串
入口
Str_Addr=字符串地址(要求在数据段)
用法 : Output Str_Addr
用法举例: Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
-----------------------------------
------
功能:输出一个字符
入口: dl=要显示的字符
Enter_Chr proc Near
push ax
mov ah,02h
int 21h
pop ax
ret Enter_Chr endp
-----------------------------
文档评论(0)