太原理工大学微机原理与接口技术课程设计.docxVIP

  • 18
  • 0
  • 约5.26千字
  • 约 18页
  • 2019-09-27 发布于广东
  • 举报

太原理工大学微机原理与接口技术课程设计.docx

微机原理课程设计 学校: 太原理工大学 学院: 信息工程学院 设计题目: 国际象棋棋盘绘制程序 专业班级: 姓名: 学号: 课程设计的题目:国际彖棋棋盘绘制程序 程序功能简述 木程序在屏幕上左侧绘制一个红黑相间的国际象棋棋盘,右侧绘制一个汉字 棋,棋字的四个角有角框。显示完后,按q退出。 运行本程序后,从屏幕左上角开始,棋盘的奇数行位置逐行出现彼此相间15个 像素宽的红色块(虚的),共出现五行,每行五个红色块,然后从第一行的第一 个色块的右下角开始,在棋盘的偶数行位置逐行出现彼此相间15个像素宽的红 色块(虚的),每行四块,共四行。其中红色块由8X8个彼此相间一个像素的红 点组成,前一个色块和后一个色块之间有一定的显示时间间隔。 然后,屏幕的右侧会按棋的笔画顺序,一笔一画的显示汉字棋,其中前 一笔和后一笔Z间有一定的显示时间间隔。然后按先横后竖的顺序,在棋字的四 个角的斜上方显示四个角框。笔画同样有时间间隔。 显示完后,若在键盘上输入q,则程序退出。 主要设计思想简述 本程序主要通过调用10H号BIOS中断的0CH号功能点调用来显示图像。将要 显示点的坐标(line, cow)分别传送到dx, ex,然后将点的颜色代码传送al,接 着调用10H号BIOS中断的0CH号功能,一个点就显示出来。 显示矩形块以及笔画(横,竖,撇,捺)是先确定第一个点的坐标后,然后让点 的行坐标line,列坐标cow按某种方式循环,每次循环后调用10H号BIOS中断 的0CH号功能来完成点的显示。全部循环完后,这些点的排列就是要显示的矩 形块或笔画。 所以,点的行坐标line,列坐标cow的循环方式就决定了要显示的图像。 显示矩形块(虚的)的循环方式是:line, cow都循环,line在外层,循环一次 加2, cow在内层,循环一次加2, line循环的次数决定了方块的高,cow循环的 次数决定了方块的宽。笔画横的循环方式是:只cow循环,循环一次加1,循 环的次数决定了笔画横的长度。笔画竖的循环方式是:只line循环,循环一次加 1,循环的次数决定了笔画竖的长度。笔画撇的循环方式是:line, cow都循环, 在同一层。循环一次line加1, cow减1。循环的次数决定了笔画撇的长度 笔画捺的循环方式是:line, cow都循环,在同一层。循环一次line加1, cow加 1。循环的次数决定了笔画捺的长度。 第一个点的坐标,循环方式,循环的次数决定了要显示的图形的位置,形状,尺 寸。 将位置不同的矩形块(虚的)按照棋盘的几何结构显示出来,就构成了棋盘。 将位置,长度不同的笔画(横,竖,撇,捺)按照棋字的几何结构显示岀来,就构 成了棋字。边框同理。 三.程序流程图 I 设置视頻显示方式 ▼ 调川矩形块阵列詁示宏KUAIW示棋盘的奇数行 参数R=0? L=0. N=5 ▼ 训用建形块旳列显小宏KU AI显小机肚的偶数仃 参数R=15? L=15, N=4 淌川笔田显不宏1IONGI显不麒字的第一笔 参数 L=3(KR=165“NUM=21?CI1EN=IIENG 主程序 ▼ I 切蛤列坐芬R—1 ROW HC^GI (【束) 矩形块阻列呈示変 KUA1 笔画子程序P1AN 笔画子程序P1AN 显讥矩形块子程序 DISP RECf 笔画子理序NA 四.源程序代码 DATA SEGMENT LINE DW 0 ;矩形块左上角的行 ROW DW 0 ;矩形块左上角的列 P1X DB 10 ;矩形块的颜色 N DW ? ■ ;文字笔画的长度 PIX_A DB 11 ;文字笔画的颜色 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: ;主程序 MOV AX , DATA MOV DS ,AX MOVAH,0 MOVAL, 4 INT 10H ;设置320X200彩色图形方式 mov ah,Obh mov bh,01 mov bl,0 int lOh ;定义显示矩形块阵列宏KUAI MACRO RLN ;定义显示矩形块阵列宏 LOCAL LA,LB MOV ROW,R MOV LINE,L mov di,N LA:LB:MOV CX, N LA: LB: CALL DISP_RECT call delay ADD row, 30 LOOPLB MOV ROW, R add line,30 DEC DI JNZ LA ENDM HONG1 MACRO L,R,NUM,CHEN ;定义显示笔画宏 MOV LINE,L MOV ROW,R MOV N,NUM CALLCHEN CALL delay 1 ENDM KUAI 0,0,5 ;显示棋盘奇数行 KUAI 15,15,4 ;显示棋盘偶数行 HON

文档评论(0)

1亿VIP精品文档

相关文档