应院汇编画网格线课程设计.doc
文本预览下载声明
课 程 设 计 报 告
课程名称 汇编语言程序设计
课题名称 画网格线
专 业 通信工程
班 级 通信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
程序总体设计方案、思路
程序设计方案
本程序不大,设计方案比较简单,为了增加程序可读性,使用了不少子程序和宏,使用的子程序如下:
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 程序流程图
画线流程图
图3.1 画红线流程图
源程序清单
源程序清单如下:
; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
CR EQU 000DH
LF EQU 000AH
KBBack EQU 0008H
; -----------------------------------------
; Dark Colors (Foreground Background)
; Constant Value
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)
; Constant
显示全部