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

上传人:人*** 文档编号:552665016 上传时间:2023-07-28 格式:DOC 页数:17 大小:128KB
返回 下载 相关 举报
微机原理与接口技术课程设计太原理工大学.doc_第1页
第1页 / 共17页
微机原理与接口技术课程设计太原理工大学.doc_第2页
第2页 / 共17页
微机原理与接口技术课程设计太原理工大学.doc_第3页
第3页 / 共17页
微机原理与接口技术课程设计太原理工大学.doc_第4页
第4页 / 共17页
微机原理与接口技术课程设计太原理工大学.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《微机原理与接口技术课程设计太原理工大学.doc》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计太原理工大学.doc(17页珍藏版)》请在金锄头文库上搜索。

1、微机原理课程设计学校: 理工大学 学院: 信息工程学院 设计题目: 国际象棋棋盘绘制程序 专业班级: 自动化07-01班: 学号:一课程设计的题目:国际象棋棋盘绘制程序二程序功能简述本程序在屏幕上左侧绘制一个红黑相间的国际象棋棋盘,右侧绘制一个汉字棋,棋字的四个角有角框。显示完后,按q退出。运行本程序后,从屏幕左上角开始,棋盘的奇数行位置逐行出现彼此相间15个像素宽的红色块(虚的),共出现五行,每行五个红色块,然后从第一行的第一个色块的右下角开始,在棋盘的偶数行位置逐行出现彼此相间15个像素宽的红色块(虚的),每行四块,共四行。其中红色块由8X8个彼此相间一个像素的红点组成,前一个色块和后一个

2、色块之间有一定的显示时间间隔。然后,屏幕的右侧会按棋的笔画顺序,一笔一画的显示汉字棋,其中前一笔和后一笔之间有一定的显示时间间隔。然后按先横后竖的顺序,在棋字的四个角的斜上方显示四个角框。笔画同样有时间间隔。显示完后,若在键盘上输入q,则程序退出。三主要设计思想简述本程序主要通过调用10H号BIOS中断的0CH号功能点调用来显示图像。将要显示点的坐标(line,cow)分别传送到dx,cx,然后将点的颜色代码传送al,接着调用10H号BIOS中断的0CH号功能,一个点就显示出来。显示矩形块以与笔画(横,竖,撇,捺)是先确定第一个点的坐标后,然后让点的行坐标line,列坐标cow按某种方式循环,

3、每次循环后调用10H号BIOS中断的0CH号功能来完成点的显示。全部循环完后,这些点的排列就是要显示的矩形块或笔画。所以,点的行坐标line,列坐标cow的循环方式就决定了要显示的图像。显示矩形块(虚的)的循环方式是:line,cow都循环,line在外层,循环一次加2,cow在层,循环一次加2,line循环的次数决定了方块的高,cow循环的次数决定了方块的宽。笔画横的循环方式是:只cow循环,循环一次加1,循环的次数决定了笔画横的长度。笔画竖的循环方式是:只line循环,循环一次加1,循环的次数决定了笔画竖的长度。笔画撇的循环方式是:line,cow都循环,在同一层。循环一次line加1,c

4、ow减1。循环的次数决定了笔画撇的长度笔画捺的循环方式是:line,cow都循环,在同一层。循环一次line加1,cow加1。循环的次数决定了笔画捺的长度。第一个点的坐标,循环方式,循环的次数决定了要显示的图形的位置,形状,尺寸。将位置不同的矩形块(虚的)按照棋盘的几何结构显示出来,就构成了棋盘。将位置,长度不同的笔画(横,竖,撇,捺)按照棋字的几何结构显示出来,就构成了棋字。边框同理。三程序流程图。四源程序代码DATA SEGMENTLINE DW 0 ;矩形块左上角的行ROW DW 0 ;矩形块左上角的列PIX DB 10 ;矩形块的颜色N DW ? ;文字笔画的长度PIX_A DB 11

5、 ;文字笔画的颜色DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: ;主程序 MOV AX , DATA MOV DS , AX MOV AH , 0 MOV AL , 4 INT 10H ;设置320200彩色图形方式 mov ah,0bh mov bh,01 mov bl,0 int 10h KUAI MACRO R,L,N ;定义显示矩形块阵列宏 LOCAL LA,LB MOV ROW,R MOV LINE,L mov di,N LA: MOV CX, N LB:CALL DISP_RECT call delay ADD row, 30

6、 LOOP LB 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 CALL CHEN CALL delay1 ENDM KUAI 0,0,5 ;显示棋盘奇数行 KUAI 15,15,4 ;显示棋盘偶数行 HONG1 30,165,21,HENG ;显示棋字 HONG1 15,176,60,SHU HONG1 31,175,10,PIAN HONG1 32,178,5,NA HONG1 30,191,30,HENG HONG1 15

7、,196,45,SHU HONG1 15,214,45,SHU HONG1 40,196,19,HENG HONG1 50,196,19,HENG HONG1 60,191,30,HENG HONG1 63,200,10,PIAN HONG1 63,210,12,NA HONG1 10,160,5,HENG ;显示角框 HONG1 10,160,5,SHU HONG1 10,223,5,HENG HONG1 10,228,5,SHU HONG1 80,160,5,HENG HONG1 75,160,5,SHU HONG1 80,223,5,HENG HONG1 75,228,6,SHU L5:

8、 mov ah,8 ;按q返回DOS int 21h cmp al,q JNE L5 MOV AH , 4CH INT 21H DISP_RECT PROC near PUSH AX PUSH CX PUSH DX PUSH SI PUSH DI MOV AH , 0CH ;指明写点调用 MOV AL , PIX ;取点的颜色 MOV DI , 8 ;用于控制行显示循环 MOV DX , LINE ;取点的行坐标DISP_2: MOV SI , 8 ;控制列显示循环 MOV CX , ROW ;取显示点的列坐标DISP_1: INT 10H ;完成点的显示 INC CX inc cx ;列坐标加2 DEC SI JNZ DISP_1 ;循环显示完一行 INC DX inc dx ;行坐标加2 DEC DI JNZ DISP_2 ;循环显示完8行 POP DI POP SI POP DX POP CX POP AX RETDISP_RECT ENDPDELAY PROC NEAR ;延时子程序 PUSH CX PUSH DX MOV DX,2500D11: MOV CX,25000 D12: LOOP D12 DEC DX JNZ D11 POP DX POP CX RETDELAY ENDPDELAY1 PROC NEAR ;延时子程序1 PUSH

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号