ImageVerifierCode 换一换
格式:DOC , 页数:15 ,大小:255KB ,
资源ID:67844      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-67844.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理课程设计-字符显示..doc)为本站会员(wj)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

微机原理课程设计-字符显示..doc

1、某某学院微机原理课程设计 2013 级 电气工程及其自动化 专业 班级题 目 字符图形显示 姓 名 学号 指导教师 职称 二一三 年 12 月 13 日摘要3一、字符图形显示的基本原理4二、设计方案4三、硬件设计4四、软件设计54.1 主模块及子模块说明5五、设计体会14参考文献15摘要本课程设计是通过使用汇编语言来完成的,具体实现的方法可以通过在MASM使用环境下运 行,也可以通过在DOS环境下完成。我做的课程设计是通过编写汇编语言程序,实现字符图形的显示。在编写初期,我对字符“SPORT”进行了设计,确定了每个字符所在的位置,以便在编写程序的时候正确定义字符的属性,也为在显示的时候能够显示

2、较好的效果,打下了基础。接着开始编写程序,编写完程序后,对程序进行了注释,最后调试出所要求的字符。本程序可以在DOS环境和MASM环境下运行,要求我们熟悉BIOS中断10的各种功能。整个课程设计的过程,是一个不断学习、不断实践的过程,从而提高了我们的编程能力和程序开发思想,也提高了我们自主学习的能力。关键词:字符显示,10号中断,图形,BIOS一、字符图形显示的基本原理 字符图形显示可以在DOS环境下完成,编写完程序后分析并理解每条程序的意思,并解释主要程序的意思,最后调试出所要求的字符。在程序编写前,我首先对自己显示的图形进行了设计,确定了每个数字相对于前一个数字的位置,以便在编写程序的时候

3、正确定义字符的属性,也为在显示的时候能够显示较好的效果,打下了基础。本次实验实验的编写环境是MASM,编译、链接也是在该环境下实现的。程序的运行我使用的是DOS环境。通过参考网上的一些原程序,要编写好该程序,首先应该对BIOS的中断熟悉,因此程序编写前,我先认真学习了该BIOS中断的有关功能。 二、设计方案 在课程设计之前,首先要明确设计的目的。本次课程设计的题目是字符图形显示,要求我们能够编写一个汇编程序,正确的显示所要求的字符。这就需要我们对汇编指令有一定的了解,通过课程设计,我们能更深入的了解汇编程序的基本框架,更熟练的运用汇编指令。设计一个字符图形程序,用汇编语言实现在DOS调用下显示

4、实现字符图形“SPORT”,背景颜色的ASCII码为03H,字符属性为122,纵坐标相对于光标的初始位置为-2,横坐标性对于光标的初始位置为1.;有清屏和延时功能,并能实现按任意键退出。 三、硬件设计首先,定义了一个字符图形表“SPORT”,设置的字符的类型为DB即为字节类型,字符的ACSII码为03H,显示出来的图形为心形,设置字符的属性为122。显示完整个字符图形表共需要102行代码,设置初始字符所在的位置为相对于光标位置的(-2,1)位置,前面的-2表示的是列坐标,而后面的1表示的是行坐标。此后的代码的行列坐标都是相对于前一字符的相对位置,如列坐标的1表示的是向下移动一位,列坐标的-1表

5、示的是像上移动一位,列坐标的0则表示纵向不发生移动。同理,横坐标的1表示的是向右移动一位,横坐标的-1表示的是像左移动一位,横坐标的0则表示横向不发生移动。此为数据段的内容。 然后定义了一个堆栈段,开辟了大小为2000字节的空间。 接下来则是代码段的内容,包括初始化DS的内容、设置图形方式、设置背景颜色、设置彩色调板、清屏、延时、按任意键退出等内容。 四、软件设计 4.1 主模块及子模块说明 一开始,我定义了一个字符图形表“SPORT”,设置的字符的类型为DB即为字节类型,字符的ACSII码为03H,显示出来的图形为心形,设置字符的属性为122。显示完整个字符图形表共需要102行代码,设置初始

6、字符所在的位置为相对于光标位置的(-2,1)位置,前面的-2表示的是列坐标,而后面的1表示的是行坐标。此后的代码的行列坐标都是相对于前一字符的相对位置,如列坐标的1表示的是向下移动一位,列坐标的-1表示的是像上移动一位,列坐标的0则表示纵向不发生移动。同理,横坐标的1表示的是向右移动一位,横坐标的-1表示的是像左移动一位,横坐标的0则表示横向不发生移动。此为数据段的内容,接下来定义了一个堆栈段,开辟了大小为2000字节的空间。 然后设计了代码段的内容。首先定义了一个名为MAIN的段间调用过程,过程中包括初始化了DS的内容,设置300*200彩色图形方式,设置背景颜色为0BH,显示出来的颜色为绿

7、色,设置彩色调板为0BH,显示的颜色为绿色,再调用清屏子程序CLEAR_SCREEN和延时子程序MOVE_SHAPE,以及任意键退出子程序EXIT,MAIN过程结束。然后编写了清屏子程序CLEAR_SCREEN,它是一个段内调用的过程。接着编写了延时子程序MOVE_SHAPE,它也是一个段内调用的过程。再接下来则是一段读取字符图形的程序和一段按任意键即可退出程序的程序,最后整个代码段结束。4.2 各模块详细设计 确定字符的ASCII码确定字符的属性确定字符相对于光标的纵坐标确定字符相对于光标的横坐标完成了字符图形”SPORT”设置图形方式设置背景颜色设置彩色调板设置清屏子程序设置延时子程序设置

8、退出子程序 退 出 开 始确定字符的类型为字节型 源代码分析 源代码如下: DATA SEGMENT CAR DB 102 ;定义字符图形表DB 03H,122,-2,1DB 03H,122,0,1DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,1,-4 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,1,0 DB 03H,122,1,0 DB 03

9、H,122,1,0 DB 03H,122,1,0 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,-1DB 03H,122,0,7 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,12

10、2,1,0 DB 03H,122,1,0DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,-1DB 03H,122,4,6 DB 03H,122,-1,0DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 D

11、B 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,6 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H

12、,122,-1,0DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,0,1 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,1,0 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,1,1 DB 03H,122,1,1 DB 03H,122,1,1 DB 03H,122,1,1 DB 03H,122,0,5 DB 03H,122,-1,0DB 03H,122,-1,0 DB 03H,122,-1,0 D

13、B 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,-1,0 DB 03H,122,0,-1 DB 03H,122,0,-1 DB 03H,122,0,3 DB 03H,122,0,1CHAR_CNT DW ? POINTER DW ? LINE_ON DB ? COL_ON DB ? DATA ENDS STACKI SEGMENT DB 2000 DUP (?) STACKI ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKI MAIN PROC

14、 FAR PUSH DS SUB AX,AX PUSH AX MOV AX,DATA ;初始化DS MOV DS,AX MOV AH,0 ;设置图形方式 MOV AL,3 INT 10H MOV AH,0BH ;设置背景颜色 MOV BH,0MOV BL,2 INT 10H MOV AH,0BH ;设置彩色调板 MOV BH,01 MOV BL,00 INT 10H CALL CLEAR_SCREEN ;调用清屏子程序 LEA DI,CAR MOV DH,10 MOV DL,2 CALL MOVE_SHAPE ;调用延时子程序 MOV AH,8 INT 21H CMP AL,71H JZ EX

15、IT JB NEXTNEXT: CMP AL,51H JZ EXIT MAIN ENDP CLEAR_SCREEN PROC NEAR ;清屏子程序 PUSH AX PUSH BX PUSH CX PUSH DX MOV AH,6MOV AL,0 MOV CH,0 MOV CL,0 MOV DH,120 MOV DL,200 MOV BH,7 INT 10H POP DX POP CX POP BX POP AX RET CLEAR_SCREEN ENDP DLY_QRTR PROC NEAR ;延时子程序 PUSH CX PUSH DX MOV DX,5000 D11: MOV CX,250

16、00 D12: LOOP D12 DEC DX JNZ D11 POP DX POP CX RETDLY_QRTR ENDP MOVE_SHAPE PROC NEAR ;读取字符图形程序 PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI MOV AH,0FH INT 10H SUB CH,CH MOV CL,DI INC DI MOV CHAR_CNT,CX MOV POINTER,DI MOV LINE_ON,DH MOV COL_ON,DL MOV_CRSR: ADD DH,DI+2 ADD DL,DI+3 MOV AH ,2 INT 10H MOV AL,D

17、IMOV BL,DI+1 PUSH CX MOV CX,1 MOV AH,09 INT 10H POP CX ADD DI,4 LOOP MOV_CRSR POP DI POP DX POP CX POP BX POP AXRET MOVE_SHAPE ENDP EXIT: MOV AH,4CH ;按任意键退出 INT 21H CODE ENDS ;程序结束 END MAIN 4.23 调试过程及分析 编写完程序以后,将此保存为“pic.asm”,编译,显示的如图4-2: 图4-2编译界面 按确定键,生成目标文件pic.obj。执行无错误提示后,连接,显示的如图4-3: 图4-3连接界面按下确认键,生成可执行文件pic.exe。在光标处输入debug pic.exe,回车,显示的效果图如图4-4:图4-4 效果图五、设计体会 回顾起这次的汇编课程设计,至今我忍感慨颇多。的确,从理论到实践,在汇编课程设计的日子里,苦多于甜,但是,实践出真知,在实践中我学习到了很多很多的东西,这是单靠老师课堂上授课和自己私下里看书本所学不到的。在没实践之前,我可能只是仅仅知道这是一句定义字符图形属性的语句,实践之后才知道它代表的意义还具体含义。参考文献1李敬兆.8086/8088和arm核汇编

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2