微机原理与接口技术课程设计太原理工大学范文.doc
《微机原理与接口技术课程设计太原理工大学范文.doc》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计太原理工大学范文.doc(22页珍藏版)》请在咨信网上搜索。
微机原理与接口技术课程设计太原理工大学 22 2020年4月19日 文档仅供参考 微机原理课程设计 学校: 太原理工大学 学院: 信息工程学院 设计题目: 国际象棋棋盘绘制程序 专业班级: 自动化07-01班 姓名: 学号: 一.课程设计的题目:国际象棋棋盘绘制程序 二.程序功能简述 本程序在屏幕上左侧绘制一个红黑相间的国际象棋棋盘,右侧绘制一个汉字‘棋’,棋字的四个角有角框。显示完后,按q退出。 运行本程序后,从屏幕左上角开始,棋盘的奇数行位置逐行出现彼此相间15个像素宽的红色块(虚的),共出现五行,每行五个红色块,然后从第一行的第一个色块的右下角开始,在棋盘的偶数行位置逐行出现彼此相间15个像素宽的红色块(虚的),每行四块,共四行。其中红色块由8X8个彼此相间一个像素的红点组成,前一个色块和后一个色块之间有一定的显示时间间隔。 然后,屏幕的右侧会按‘棋’的笔画顺序,一笔一画的显示汉字‘棋’,其中前一笔和后一笔之间有一定的显示时间间隔。然后按先横后竖的顺序,在棋字的四个角的斜上方显示四个角框。笔画同样有时间间隔。 显示完后,若在键盘上输入q,则程序退出。 三.主要设计思想简述 本程序主要经过调用 10H号BIOS中断的0CH号功能点调用来显示图像。将要显示点的坐标(line, cow)分别传送到dx,cx,然后将点的颜色代码传送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。循环的次数决定了笔画捺的长度。 第一个点的坐标,循环方式,循环的次数决定了要显示的图形的位置,形状,尺寸。 将位置不同的矩形块(虚的)按照棋盘的几何结构显示出来,就构成了棋盘。 将位置,长度不同的笔画(横,竖,撇,捺)按照棋字的几何结构显示出来,就构成了棋字。边框同理。 三.程序流程图 。 四.源程序代码 DATA SEGMENT LINE DW 0 ;矩形块左上角的行 ROW DW 0 ;矩形块左上角的列 PIX DB 10 ;矩形块的颜色 N DW ? ;文字笔画的长度 PIX_A DB 11 ;文字笔画的颜色 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: ;主程序 MOV AX , DATA MOV DS , AX MOV AH , 0 MOV AL , 4 INT 10H ;设置320×200彩色图形方式 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 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,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: 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 RET DISP_RECT ENDP DELAY PROC NEAR ;延时子程序 PUSH CX PUSH DX MOV DX,2500 D11: MOV CX,25000 D12: LOOP D12 DEC DX JNZ D11 POP DX POP CX RET DELAY ENDP DELAY1 PROC NEAR ;延时子程序1 PUSH CX PUSH DX MOV DX,10000 D11A: MOV CX,25000 D12A: LOOP D12A DEC DX JNZ D11A POP DX POP CX RET DELAY1 ENDP HENG PROC near ;笔画横的子程序 PUSH AX PUSH CX PUSH DX PUSH SI PUSH DI MOV AH , 0CH ;指明写点调用 MOV AL , PIX_A ;取点的颜色 MOV DX , LINE ;取点的行坐标 MOV SI , N ;控制列显示循环 MOV CX , ROW ;取显示点的列坐标 DISP_3: INT 10H ;完成点的显示 inc cx ;列坐标加1(行不变) DEC SI JNZ DISP_3 ;循环显示完一行 POP DI POP SI POP DX POP CX POP AX RET HENG ENDP SHU PROC near ;笔画竖的子程序 PUSH AX PUSH CX PUSH DX PUSH SI PUSH DI MOV AH , 0CH ;指明写点调用 MOV AL , PIX_A ;取点的颜色 MOV DI , N ;用于控制行显示循环 MOV DX , LINE ;取点的行坐标 MOV CX , ROW ;取显示点的列坐标 DISP_4: INT 10H ;完成点的显示 inc DX ;行坐标加1(列不变) DEC DI JNZ DISP_4 ;循环显示完一列 POP DI POP SI POP DX POP CX POP AX RET SHU ENDP PIAN PROC near ;笔画撇的子程序 PUSH AX PUSH CX PUSH DX PUSH SI PUSH DI MOV AH , 0CH ;指明写点调用 MOV AL , PIX_A ;取点的颜色 MOV DI , N ;用于控制撇的长度 MOV DX , LINE ;取点的行坐标 MOV CX , ROW ;取显示点的列坐标 DISP_5: INT 10H ;完成点的显示 DEC cx ;列坐标减1 inc DX ;行坐标加1 DEC DI JNZ DISP_5 POP DI POP SI POP DX POP CX POP AX RET PIAN ENDP NA PROC near ;笔画捺的子程序 PUSH AX PUSH CX PUSH DX PUSH SI PUSH DI MOV AH , 0CH ;指明写点调用 MOV AL , PIX_A ;取点的颜色 MOV DI , N ;用于控制显示循环 MOV DX , LINE ;取点的行坐标 MOV CX , ROW ;取显示点的列坐标 DISP_6: INT 10H ;完成点的显示 INC cx ;列坐标加1 inc DX ;行坐标加1 DEC DI JNZ DISP_6 POP DI POP SI POP DX POP CX POP AX RET NA ENDP CODE ENDS END START 五.总结报告 ①课程设计中所遇到的主要问题和解决方法。 首先遇到的问题是程序的调试,我把程序写好并检查后没发现错误,然后上机汇编却发现5个警告错误,看错误类型号,都是英语,看不懂,幸好课本后部附录里有翻译,这个问题解决了,但我还是不知道错误的那几行哪里错,看起来很正确。最后。经过思考和耐心检查,终于解决了,原来其中一行把宏实参0写成了O(读欧),这一行的错误导致了其它行的错误。调试程序确实需要耐心,这个错误很简单,但太隐蔽了,检查了20分钟,差点没抓狂。 然后遇到的问题是画流程图,由于以前没画过,也不知道用什么软件,就去网上搜索,于是发现了windows office套件中的 Visio 。Visio确实很好用,操作很简单,容易上手,画出的图很漂亮,流程图终于完成了。 ②创新和得意之处。 这个程序是仿写的,但基本上只是借鉴了它的方法,95%的内容是重写的,增加了许多东西和功能。我觉的自己的这个程序比较起来还是简洁的,设计了两个宏和五个子程序来实现各种功能,然后在主程序中调用。代码看起来比较整齐,条理,如果要显示别的图像,只要在主程序中改一下宏的参数就能够了 。 ③课程设计中存在的不足,需要进一步改进的设想。 这个程序还是不够精练,五个图形子程序有许多相似的地方,功能区别不大,加上些判断,应该能够合并成一个子程序,两个延时子程序除了参数,其实是一个子程序,也能够合并成一个子程序,这样用内存会少很多。 ④课程设计的感想和心得体会。 课程设计做完了,之前觉的很难,但做完以后,又感觉很简单,最起码对我的这个程序来说。曾经的困惑现在已经成了知识,有一种成就感。能够说,我享受了一次微机原理课程设计。对此而言,前几天的辛苦和思考都是值得的。真希望这样的课程设计能多些。在课程设计中,感觉真正的学到了东西。以前书本上的知识得到融会贯通,更加透彻的理解了知识间的联系。指令系统也更熟悉了,看来学编程只有两种方法,看程序,写程序,先看后写。 在课程设计中,第一次领会到汇编语言的美妙。简洁,精确,效率,这就是汇编。汇编的简洁和对硬件的精确控制给我留下很深的映象。实现同样的功能,用c的话编译出来可能得30条指令,但用汇编5,6条就解决了。写汇编程序时似乎能够看到cpu在如何工作。终于理解了学微机原理为什么要学汇编了。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 课程设计 太原 理工大学 范文
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文