微机原理课设总汇编语言动态显示姓名学号.docx

上传人:b****2 文档编号:17369534 上传时间:2023-07-24 格式:DOCX 页数:10 大小:146.66KB
下载 相关 举报
微机原理课设总汇编语言动态显示姓名学号.docx_第1页
第1页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第2页
第2页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第3页
第3页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第4页
第4页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第5页
第5页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第6页
第6页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第7页
第7页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第8页
第8页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第9页
第9页 / 共10页
微机原理课设总汇编语言动态显示姓名学号.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机原理课设总汇编语言动态显示姓名学号.docx

《微机原理课设总汇编语言动态显示姓名学号.docx》由会员分享,可在线阅读,更多相关《微机原理课设总汇编语言动态显示姓名学号.docx(10页珍藏版)》请在冰点文库上搜索。

微机原理课设总汇编语言动态显示姓名学号.docx

微机原理课设总汇编语言动态显示姓名学号

华北水利水电学院

课程设计说明书

 

环节名称:

微机原理与接口技术

系别专业:

电力学院自动化专业

学号:

200808109

姓名:

pickerup

指导教师:

 

屏幕显示图形的程序设计要求

一、要求

1)利用80x86汇编语言BIOS中断调用的方法,通过‘*’等字符设计自己的名字及学号,并在显示器上用6种以上的颜色显示出来;

2)动态切换与学号;

3)可自行设计显示及学号的方案。

二、分析

1)BIOS中断调用:

BIOS常驻ROM,独立于DOS,可与任何操作系统一起工作。

它的主要功能是驱动系统所配置的外部设备,如磁盘驱动器、显示器、打印机及异步通讯接口等。

通过INT10H~INT1AH向用户提供服务程序的入口,使用户无需对硬件有深入了解,就可完成对I/O设备的控制与操作。

BIOS的中断调用与DOS功能调用类似。

2)图形设计:

掌握BIOS中断调用INT10H的13H号功能。

注意13H号功能入口参数的要求。

3)颜色显示:

在彩色显示屏幕上每个字符在存储中用两个字节表示。

一个字节保存字符的ASCII码,另一个字节保存字符的属性。

BIOS中断调用INT10H的13H号功能是显示字符串,字符的属性在BL中。

属性设置方法见教材第四章164页。

三、软件设计

1)设计详细的程序流程图;

2)根据流程图,编写源程序;

3)上机调试源程序。

程序流程图

 

程序执行图:

图1.菜单提示界面

图2.输入一般字符时(非Esc、非Y)的显示画面

图3.输入Y后,显示的画面

 

ROW=8

COLUM=00

ESCKEY=1BH

DSEGSEGMENT

MENUDB0DH,0AH,'---------------COMTENT------------------------',0DH,0AH

DB0DH,0AH,'1.SHOWTHE[2008],PRESS"Y".'

DB0DH,0AH,'2.SHOWTHE[NUMBER],PRESSANYKEY!

'

DB0DH,0AH,'3.TOEXIT,PRESSTHE[ESC].'

N=$-MENU

MESS1DB'+OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+',0DH,0AH

DB'||D||111111111111111111111111111111111111||D||',0DH,0AH

DB'||L||11111111111111111111111111111111||L||',0DH,0AH

DB'||X||111111111111111111111111111111111111||X||',0DH,0AH

DB'||Y||11111111111111111111111111111111111111||Y||',0DH,0AH

DB'||Z||11111111111111111111111111111111||Z||',0DH,0AH

DB'||D||11111111111111111111111111111111111111||D||',0DH,0AH

DB'||H||11111111111111111111111111111111||H||',0DH,0AH

DB'||Z||11111111111111111111111111111111||Z||',0DH,0AH

DB'||Y||1111111111111111111111111111111111111111||Y||',0DH,0AH

DB'+OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+',0DH,0AH

MESS_LEN1=$-OFFSETMESS1

 

MESS2DB'+OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'|NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN|',0DH,0AH

DB'+OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO+',0DH,0AH

MESS_LEN2=$-OFFSETMESS2

COLORBDB4AH,3AH,14H,52H,4FH,74H,2EH,59H,6FH,6DH,20H

COLORELABELBYTE

DSEGENDS

CSEGSEGMENT

ASSUMECS:

CSEG,DS:

DSEG,ES:

DSEG

START:

MOVDI,OFFSETCOLORB-1;预置颜色指向

MOVAX,DSEG

MOVDS,AX

MOVES,AX

LEABP,MENU;显示提示菜单

MOVAH,13H

MOVAL,01

MOVCX,N

MOVBL,0BH

MOVBH,0

MOVDX,0

INT10H

NEXTC:

INCDI;改变颜色

CMPDI,OFFSETCOLORE

JNZNEXTE

MOVDI,OFFSETCOLORB

NEXTE:

MOVBL,[DI]

MOVDH,ROW

MOVDL,COLUM

MOVAH,0;选择要显示的字符

INT16H

CMPAL,'Y'

JZC1

CMPAL,1BH;退出

JZOVER1

JMPC2

C1:

CALLECHO1

JMPNEXTC

OVER1:

MOVAX,4C00H

INT21H

C2:

CALLECHO2

JMPNEXTC

MOVAX,4C00H

INT21H

ECHO1PROCNEAR;子程序1,显示MESS1

MOVSI,OFFSETMESS1

MOVCX,MESS_LEN1

PUSHES

PUSHBP

PUSHDS

POPES

MOVBP,SI

MOVBH,0

MOVAL,0

CALLCLRS

MOVAH,13H

INT10H

POPBP

POPES

CALLDELAY

RET

ECHO1ENDP

ECHO2PROCNEAR;子程序2,显示MESS2

MOVSI,OFFSETMESS2

MOVCX,MESS_LEN2

PUSHES

PUSHBP

PUSHDS

POPES

MOVBP,SI

MOVBH,0

MOVAL,0

CALLCLRS

MOVAH,13H

INT10H

POPBP

POPES

CALLDELAY

RET

ECHO2ENDP

CLRSPROCNEAR;清屏子程序

PUSHAX

PUSHBX

PUSHCX

PUSHDX

MOVAH,6

MOVAL,0

MOVCH,0

MOVCL,0

MOVDH,24

MOVDL,79

MOVBH,7

INT10H

POPDX

POPCX

POPBX

POPAX

RET

CLRSENDP

DELAYPROCNEAR;延时

PUSHCX

PUSHDX

MOVDX,57138

WAIT1:

MOVCX,4435

WAIT2:

LOOPWAIT2

DECDX

JNZWAIT1

POPDX

POPCX

RET

DELAYENDP

CSEGENDS

ENDSTART

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

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

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