《第九章图形程序设计》由会员分享,可在线阅读,更多相关《第九章图形程序设计(82页珍藏版)》请在金锄头文库上搜索。
1、第第9章章 视频系统视频系统 本章目的本章目的: :介绍卷屏介绍卷屏, ,反相显示反相显示, ,设置显示方式和属性及图形设置显示方式和属性及图形等屏幕处理的高级应用等屏幕处理的高级应用BIOSBIOS视频操作视频操作 INT 10HINT 10H的功能的功能, ,如如: :设置显示方设置显示方式式, ,设置光标设置光标, ,滚动屏幕滚动屏幕, ,显示字符显示字符, ,设置属性设置属性微机的显示子系统组成微机的显示子系统组成原理原理9.2 视频系统的构成视频系统的构成显示适配器的主要类型显示适配器的主要类型* * 单色显示适配器单色显示适配器(MDAMDA)* * 彩色图形适配器彩色图形适配器(
2、CGACGA)* * 增增强强型型图形适配器(形适配器(EGAEGA) * * 视频图形形阵列(列(VGAVGA) 显示器显示器I/O程序设计程序设计显示方式:字符显示(文本显示)图形显示每种显示方式还有多种显示模式 文本方式:文本方式:指以字符为最小单位的指以字符为最小单位的显示方式显示方式,每个字符占二个每个字符占二个字节字节(ASCII码、属性码、属性 )图形方式:图形方式:是是Windows 的默认方式的默认方式,图形显示的最小单位是像素图形显示的最小单位是像素,对每个像素可用不同的颜色来对每个像素可用不同的颜色来表示表示, 在在显示缓冲区内记录的信息是屏幕各显示缓冲区内记录的信息是屏
3、幕各像素的颜色像素的颜色. 由于各种图形显示模式所能显示的颜色和像素是不同由于各种图形显示模式所能显示的颜色和像素是不同的的,它决定了它决定了显示缓冲区的存储方式也是不同的显示缓冲区的存储方式也是不同的.如如: 4色色320X200 图形显示模式图形显示模式,每个每个像素可选像素可选4种颜色种颜色(用用2位二进制表示位二进制表示),一个字节可表示一个字节可表示4个个像素的显示颜色像素的显示颜色, 16色色640X480 图形显示模式图形显示模式,每个每个像素可选像素可选16种颜色种颜色(用用4位二进制表示位二进制表示),一个字节可表示一个字节可表示2个个像素的显示颜色像素的显示颜色 256色色
4、320X200 图形显示模式图形显示模式,每个每个像素可选像素可选256种颜色种颜色(用用8位二进制表示位二进制表示),一个字节可表示一个字节可表示1个个像素的显示颜色像素的显示颜色9.3 视频方式视频方式视频方式确定:显示要素视频方式确定:显示要素文本或图形文本或图形彩色或单色彩色或单色屏幕屏幕分辨率分辨率颜色数颜色数显示缓冲区显示缓冲区显示缓冲区是用来记录屏幕显示信息的显示缓冲区是用来记录屏幕显示信息的文本方式下文本方式下:显示信息显示信息: 显示缓冲区存储显示缓冲区存储ASCII码码及其及其显示显示属性属性 图形方式下图形方式下: 显示信息显示信息: 显示缓冲区存储每个像素的显显示缓冲区
5、存储每个像素的显示颜色示颜色字符方式字符方式字符方式字符方式: 屏幕上只能显示字符及其属性。在字符方式下,屏幕被划分为若干行和列,较典型的是80列25行。字符方式字符方式单色单色屏幕上的字符位置屏幕上的字符位置1.有关显示的基础知识有关显示的基础知识(1)(1)显示模式显示模式(2)(2)单色字符的显示属性单色字符的显示属性(3)(3)彩色字符的显示属性彩色字符的显示属性1. 显示模式显示模式模式号分辨率颜色显示方式040列25行16级灰色黑白文本140列25行16色彩色文本280列25行16级灰色黑白文本380列25行16色彩色文本780列25行单色黑白文本( (常见的字符显示模式常见的字符
6、显示模式) )显示适配器的基本类型及其技术指标显示适配器的基本类型及其技术指标2. 2. 单色字符的色字符的显示属性示属性单色存储器与显示单色存储器与显示屏幕屏幕显示属性根据上图可以有不同的组合,如:显示属性根据上图可以有不同的组合,如:00H00H不显示不显示 01H01H黑底白字,带下划线黑底白字,带下划线 07H07H黑底白字,正常显示黑底白字,正常显示 OFHOFH黑底白字,高亮度显示黑底白字,高亮度显示70H70H白底黑字,反相显示白底黑字,反相显示 87H87H黑底白字,闪烁黑底白字,闪烁FOHFOH黑底白字,反相显示,闪烁黑底白字,反相显示,闪烁 单色显示的属性字节各位的定义背景
7、色背景色 前景色前景色 显示属性显示属性RGB RGB 000 000 字符无显示字符无显示000 111 黑底白字黑底白字111 000 白底黑字白底黑字111 111 白色方块白色方块字符字符单色色显示属性示属性单色文本典型的属性值单色文本典型的属性值 属性值(属性值(b7b7 b0b0)字符颜色字符颜色背景颜色背景颜色显示效果显示效果00000000黑黑无显示00000111白黑正常显示,黑底白字00001111白黑高亮度显示,黑底白字01110000黑白反相显示,白底黑字10000111白黑闪烁,黑底白字11110000黑白反相闪烁,白底黑字11111111黑黑无显示在常用的在常用的V
8、GA显示方式下显示方式下:系统规定系统规定:文本显示方式下文本显示方式下,单色显示器的显示缓冲区段地址为单色显示器的显示缓冲区段地址为:B000H文本显示方式下文本显示方式下,彩色显示器的显示缓冲区段地址为彩色显示器的显示缓冲区段地址为:B800H图形显示方式下图形显示方式下,其显示缓冲区段地址为其显示缓冲区段地址为:A000H单色显示器需了解的概念单色显示器需了解的概念 : 1 1)单色显示器及显示存储器:)单色显示器及显示存储器:统一编址在统一编址在B0000HB0000H开始的开始的4K4K内存空间内存空间B000:0-B000:0F9FHB000:0-B000:0F9FH 2 2)对对
9、2000(25X80)个字符共占存贮区个字符共占存贮区4000字节字节(2000字符字符2字节)字节)3 3)单色字符在屏幕的显示位置:)单色字符在屏幕的显示位置:1 1个字符对应个字符对应2 2个字节,个字节,一个字节存放一个字节存放ASCIIASCII码码值,另一个字节存放显示属性值,另一个字节存放显示属性 4)1屏为屏为=4KB, 1屏为屏为1页,页, 1页为页为4000个字个字节,有节,有96个字节未用个字节未用5)M行行n列位置对应的存储单元的偏移量为:列位置对应的存储单元的偏移量为:偏移地址偏移地址=m160+n2(一行需要(一行需要160个字节)个字节)或:或:偏移地址偏移地址=
10、(行行80)+列列 23. 3. 彩色字符的显示属性彩色字符的显示属性u一个字节存放一个字节存放ASCII码值码值u另一个字节存放显示属性另一个字节存放显示属性 彩色文本显示时,前景由彩色文本显示时,前景由0-3组合成组合成16种颜种颜色色,而背景颜色只能是而背景颜色只能是I为为0的的8种颜色可以选种颜色可以选择择,其属性字节各位的功能如下图:其属性字节各位的功能如下图: 彩色字符显示属性字节彩色文本显示方式彩色文本显示方式16种颜色的组合种颜色的组合二、显示卡与显示缓冲区二、显示卡与显示缓冲区显示卡上带有显示存储器(即视频内存、显示缓冲显示卡上带有显示存储器(即视频内存、显示缓冲区区-显存)
11、,用于存放屏幕上的显示文本的代码及显存),用于存放屏幕上的显示文本的代码及属性或图形信息。显示缓冲区占用主存空间属性或图形信息。显示缓冲区占用主存空间屏幕上某一字符位置在显存中的偏移地址:屏幕上某一字符位置在显存中的偏移地址:偏移地址偏移地址=页偏移地址页偏移地址+2X(字符行坐标(字符行坐标X总列数总列数+列列坐标)坐标)其中:页偏移地址其中:页偏移地址=1000HX2P147z显示卡与显示缓冲区显示卡与显示缓冲区 直接控制直接控制(直接组织显示缓冲区) 对显示器的对显示器的I/O编程编程 BIOS显示中断显示中断 DOS的显示功能调用的显示功能调用如何实现如何实现字符字符(文本文本)的显示
12、的显示DOS功能的屏幕输出功能的屏幕输出INT 21H02H显示字符显示字符06H控制台输入控制台输入/输出输出,当当DL0FFH时时,显示字符显示字符09H在屏幕上显示一个字符串在屏幕上显示一个字符串BIOS的屏幕操作功能的屏幕操作功能INT 10HINT 10H功能功能01置光标类型置光标类型02H 设置光标设置光标03读光标位置读光标位置06H 屏幕滚动屏幕滚动.直接视频显示直接视频显示(1)直接控制)直接控制(直接写显示内存)(直接写显示内存)文本方式:用文本方式:用DEBUG观察显示区:观察显示区:B800H:0(字节字符,字节属性字节字符,字节属性)如:用如:用ASCII=20H
13、属性属性=07 填充填充B000:0HB000:0F9FH的存贮器区,达到清屏的目的的存贮器区,达到清屏的目的文本方式及显示内存:文本方式及显示内存:单色单色: (MDA) B000H:0B000H:0F9FH (4K)彩色:彩色:(CGA) B800H:0B000H:3FFFH (16K,分为分为4页页)VGA: A000H:0mov AX,0B000H ;设置显示区首址设置显示区首址mov ES,AX mov DI,0mov CX,2000 ;传送字数传送字数Mov AL,00H或或 Mov AH,0或或07H REP STOSW;实现对屏幕清屏实现对屏幕清屏 ;置象素的内容和属性置象素的
14、内容和属性(2) BIOS显示功能调用显示功能调用AH功能功能调用参数调用参数返回参数返回参数1置光标类型(CH)03=光标开始行 (CL)03=光标结束行2置光标位置BH=页号 DH=行 DL=列3读光标位置BH=页号CH=光标开始行CL=光标结束行DH=行 DL=列4置显示页AL=显示页号5选择活动显示页6屏幕初始化或上卷AL=上卷行数 AL=0全屏为空白 BH=卷入行属性 CH=左上角行号 CL=左上角列号DH=右下角行号 DL=右下角列号7屏幕初始化或下卷AL=下卷行数 AL=0全屏为空白 BH=卷入行属性 CH=左上角行号 CL=左上角列号DH=右下角行号 DL=右下角列号类型类型I
15、NT 10H的功能调用的功能调用AH功能功能调用参数调用参数返回参数返回参数8读光标位置的属性和字符BH=显示页AH=属性AL=字符9在光标位置显示字符及其属性BH=显示页 AL=字符BL=属性 CX=字符重复次数A在光标位置只显示字符BH=显示页 AL=字符CX=字符重复次数CH=光标开始行CL=光标结束行DH=行 DL=列E显示字符AL=字符 BL=前景色13显示字符串ES:BP=串地址 CX=串长度DH,DL=起始行列 BH=页号AL=0,BL=属性串:字符1,字符2AL=1,BL=属性串:字符1,字符2AL=2串:字符1,属性1,字符2,属性2AL=3串:字符1,属性1,字符2,属性2
16、光标返回起始位置光标跟随光标返回起始位置光标跟随A)控制光标)控制光标B)屏幕初始化和卷屏)屏幕初始化和卷屏C)字符显示)字符显示INT 10H 主要功能主要功能A)控制光标)控制光标(AH)=1置光标类型置光标类型(AH)=2置光标位置置光标位置(AH)=3读光标位置读光标位置例例: INT 10H00功能功能设置显示方式:MOV AH,00H ;请求显示方式请求显示方式MOV AL,03 ;标准彩色文本标准彩色文本INT 10H 注注:AL=00-03,07为文本方式为文本方式(分彩色分彩色/单色单色)P147AL=04-06,0DH-13H为图形方式为图形方式P151例例: INT 10
17、H01功能功能将光标放大到最大尺寸将光标放大到最大尺寸(0:14)MOV AH,01H ;请求设置光标大小功能请求设置光标大小功能MOV CH,00 ;开始扫描行开始扫描行MOV CL,14 ;结束扫描行结束扫描行INT 10H例例: INT 10H02功能功能设置光标位置设置光标位置:MOV AH,02H ;请求设置光标请求设置光标MOV BH,00H ;页号页号0MOV DH,12;第第12行行MOV DL,30 ;第第30行行INT 10H 例例: INT 10H03功能功能返回光标位置返回光标位置MOV AH,03H ;请求读光标位置请求读光标位置MOV BH,00H ;页号页号0IN
18、T 10H 返回值返回值:CH=开始的扫描行开始的扫描行CL=结束的扫描行结束的扫描行DH=行行DL=列列例例:MOV AH,03H;请求读光标位置请求读光标位置MOV BH,00H ;页号页号0INT 10H ;在在DH中返回行号中返回行号MOV AH,02H ;请求设置光标请求设置光标INC DL ;在下一列在下一列INT 10HB)屏幕初始化和卷屏(对当前屏幕的某窗屏幕初始化和卷屏(对当前屏幕的某窗口初始化和控制上下卷动)口初始化和控制上下卷动)(AH)=6屏幕初始化和卷屏屏幕初始化和卷屏入口:入口:AL=上卷行数上卷行数 (上卷全屏为上卷全屏为00) BH=属性值或像素值属性值或像素值
19、CX=起始行起始行:列列DX=结束行结束行:列列例例: MOVAX,0601H ;上卷一行上卷一行MOV BH,61 ;背景棕色,前景蓝色背景棕色,前景蓝色MOV CX,0000 ;从从00:00到到MOV DX,184FH ; 24:79(全屏)全屏)INT 10H 注:注:CX:DX可设卷动屏幕的任何部分可设卷动屏幕的任何部分(开窗口开窗口)例:例:建立一个建立一个7行行30列的窗口列的窗口窗口坐标为:窗口坐标为: 左上角左上角12:25 右上角右上角12:54 左下角左下角18:25 右下角右下角18:54MOV AX,0607H ;上卷上卷7行行MOV BH,30 ;背景青色,前景黑色
20、背景青色,前景黑色MOV CX,0C19H ;从从12:25到到MOV DX,1236H ; 18:54(全屏)全屏)INT 10H 例:例:在图形方式下在图形方式下,BH中设置像素值中设置像素值,若干行若干行为红色为红色:MOV AX,060FH ;请求卷动请求卷动15行行(图形方式图形方式)MOV BH,0100 ;像素值像素值(红色红色)MOV CX,0A00H ;从从10:0列列MOV DX,184FH ; 24:79列列INT 10H (AH)=7屏幕初始化和下卷屏幕初始化和下卷例:例:把左半屏幕初始化为反相显示(属性把左半屏幕初始化为反相显示(属性70H)、()、(窗口:窗口:0,
21、0;24,39) INT 10H 的的6、或、或7号调用号调用 左左半屏:半屏:CH:CL=0,0 DH:DL=24,39 初始化内容:空白初始化内容:空白:AL=0 反相反相 BH=70H白底黑字,反相显示白底黑字,反相显示C)字符显示字符显示(AH)=8h读光标位置的字符和属性读光标位置的字符和属性(AH)=9h在在光标位置显示字符和属性光标位置显示字符和属性(AH)=Ah在在光标位置显示字符,沿用像素光标位置显示字符,沿用像素的旧属性。的旧属性。D)设置显示方式设置显示方式(AH)=0 设置显示方式设置显示方式 例:用”笑脸”符画一条斜线CODESEGSEGMENT PARA CodeM
22、AINPROC FARASSUME CS:CODESEG push ds mov ax,0 push ax MOV ah,0fh INT 10HMOV ah,0 MOV al,3INT 10H MOV cx,1 MOV dx,0 ;0行0列Set-crs: MOV ah,2 INT 10H MOV al,2 MOV ah,0ah INT 10H inc dh ;下一个行列位置 inc dl cmp dh,25 jne Set-crs retMAINENDPCODESEGENDSEND MAIN例例: 中心开窗口中心开窗口9X20,并在窗口显示输入,并在窗口显示输入的字符的字符,每输入每输入20
23、个字符个字符,该行便向上卷动该行便向上卷动,9行字符输入行字符输入 后后,顶行的内容丢失顶行的内容丢失.下面程序选用下面程序选用INT 10H的:清除屏幕、光标的:清除屏幕、光标定位、上卷。如果屏幕上同时有几个窗口,定位、上卷。如果屏幕上同时有几个窗口,可通过设置不同的左上角和右下角坐标来清可通过设置不同的左上角和右下角坐标来清除它们。除它们。CODESEGSEGMENT PARA CodeMAINPROC FARASSUME CS:CODESEGpush dssub ax,ax push ax ;清屏幕清屏幕 MOV Ah,6 MOV Al,0 MOV ch,0 MOV cl,0 MOV D
24、h,24 MOV Dl,79 MOV bh,7 INT 10H;光标位置设在窗口的光标位置设在窗口的16行行30列下面,接收输入的字符列下面,接收输入的字符 pos_curse: MOV Ah,2MOV Dh,16 MOV Dl,30 MOV BH,0 ; 页号页号0 INT 10H ; 从键盘输入的从键盘输入的20个字符个字符 mov cx,20 get_char: mov ah,1 int 21h cmp al,3 ;C jz exit loop get_char;scrooll up MOV Ah,6 MOV Al,1 ;上卷上卷1行行 MOV bh,04 ;属性值属性值 0100B 红
25、色红色 MOV ch,8 MOV cl,30 MOV Dh,16 MOV Dl,50 INT 10H jmp pos_curseexit: retMAINENDP;End of procedureCODESEGENDS;End of segmentEND MAIN;End of program例例: 在在0页页(20,25)位置位置,显示显示*MOV Ah,02 ;置光标位置置光标位置 MOV bh,0MOV dh,20 MOV dl,25 INT 10HMOV ah,9 ;写字符写字符 MOV al,*MOV bh,0 MOV bl,7 MOV cx,1INT 10H例例: 在品红背景下在品
26、红背景下,显示五个浅绿色闪烁的显示五个浅绿色闪烁的*MOV ah,9 MOV al,*MOV bh,0MOV bl,0DAhMOV cx,05INT 10H例例: 在屏幕上以红底兰字显示字符串在屏幕上以红底兰字显示字符串: AAAAAAAAAString db AAAAAAAAA Len-str db $- String . MOV AL,3 ;选选25*80 MOV AH,0INT 10HMOV BP,SEG String MOV ES,BP MOV BP,OFFSET String MOV CX, Len-str MOV DX, 0 MOV bl,41HMOV AL,0MOV AH,13H
27、INT 10H例例: 在屏幕上以红底兰字显示字符串在屏幕上以红底兰字显示字符串: AAAAAAAAA,然后分别以红底绿字和红底然后分别以红底绿字和红底兰字相间显示兰字相间显示: SCENERYString1 db AAAAAAAAA String2 db S,42H,C,41H,E,42H,N,41H,E,42H db R,41H,Y,42HLen-str2 db $- String2 . MOV AL,3 ;选选25*80 MOV AH,0INT 10HMOV BP,SEG String1MOV ES,BP MOV BP,OFFSET String1MOV CX, String2- Stri
28、ng1MOV DX, 0MOV bl,41HMOV AL,1MOV AH,13HINT 10H MOV AH, 3HINT 10HMOV BP,OFFSET String2MOV CX, Len-str2 MOV AL,3MOV AH,13HINT 10H(3)DOS的显示功能调用的显示功能调用(使用方便,但(使用方便,但是控制的功能比较弱)是控制的功能比较弱)INT 21H的的AH=2、6、9A)显示一个字符)显示一个字符AH=2AH=6B)显示一串字符)显示一串字符AH=9【例例1】在屏幕中间建立一个34列11行反相显示的小窗口,在窗口最上面一行以青底淡红字显示一个菜单栏:File Edi
29、t Search View Options Help,在屏幕最下面一行再显示该菜单栏,但每一项属性不同。图形系统程序设计图形系统程序设计图形方式利用像素图形方式利用像素(picture elements 或或pels )来产生彩色图案。来产生彩色图案。一个像素一个像素:用用1-8位来表示位来表示屏幕上显示的基本编程单位是像素屏幕上显示的基本编程单位是像素,用编用编程的方法可以控制任意一个像素点显示程的方法可以控制任意一个像素点显示或不显示或不显示(与背景色同与背景色同)以及显示什么颜以及显示什么颜色色汇编语言有动画中的优势汇编语言有动画中的优势: 计算机图形设计中计算机图形设计中,屏幕上的一个
30、屏幕上的一个图象由大量的图形象素组成图象由大量的图形象素组成,处理图象需处理图象需要大量的指令要大量的指令,由于汇编快由于汇编快,更接近底层更接近底层,与其它高级语言相比与其它高级语言相比,在图形设计中具有在图形设计中具有很大优势很大优势.最高级的图形技术最高级的图形技术(如动画如动画)用用汇编写才更逼真效果更有效汇编写才更逼真效果更有效 但要熟悉但要熟悉:底层软、硬件机构如显示底层软、硬件机构如显示缓冲区的组织方式和像素的数据结构缓冲区的组织方式和像素的数据结构9.6 使用图形方式使用图形方式直接控制直接控制对显示器的控制对显示器的控制 BIOS显示中断显示中断图形方式:图形方式:320 2
31、00(点阵点阵)彩色图形方式彩色图形方式 640 200(点阵点阵)黑白图形方式黑白图形方式 直接控制(难度大)直接控制(难度大) BIOS显示中断(通常选用)显示中断(通常选用)BIOS的设置显示方式功能:的设置显示方式功能:INT 10H(AH)=00 (AL)显示方式的参数显示方式的参数02MDA的黑白文本方式(的黑白文本方式( 80 25 )03 CGA的彩色文本方式(的彩色文本方式( 80 25 )04 CGA的彩色图形方式(的彩色图形方式( 320 200)06 CGA的彩色图形方式(的彩色图形方式( 640 200)1.1.显示模式显示模式显示方式类型显示区页分辨率彩色04H彩色
32、B8008320X200405H彩色B8008320X200406H彩色B8008640X20020DH彩色彩色B8008320X200160EH彩色彩色A0004640X200160FH单色单色A0002640X350110H彩色彩色A0002640X3501611H彩色彩色A0001640X480212H彩色彩色A0001640X4801613H彩色彩色A0001320X200256通用的图形方式通用的图形方式 P 165一、了解图形方式基本概念一、了解图形方式基本概念在图形方式中,屏幕由像素点组成在图形方式中,屏幕由像素点组成(mn点阵),显示的最小单位是像点阵),显示的最小单位是像素,
33、对每个像素可用不同的颜色表示。素,对每个像素可用不同的颜色表示。在显示缓冲区内记录的信息是屏幕各在显示缓冲区内记录的信息是屏幕各像素的显示颜色。像素的显示颜色。像素点的位置表示像素点的位置表示: :3 3个参数个参数: : 页号、行号、列号页号、行号、列号320X200像素点的坐标表示像素点的坐标表示二、了解彩色显示与存储器的关系二、了解彩色显示与存储器的关系显示缓冲区的存储方式与图形显示模显示缓冲区的存储方式与图形显示模式有关。式有关。例:例:对对4色色320X200图形显示模式,图形显示模式,一一个字节可表示个字节可表示4个像素的显示颜色个像素的显示颜色) (每个像素(每个像素用用2bit
34、来控制其颜色来控制其颜色),),提供提供4种颜色。存储一行上的所有像种颜色。存储一行上的所有像素信息需要素信息需要80个字节(个字节(320/4)。)。存储:存储:分偶数行与奇数行来存储分偶数行与奇数行来存储像素总数:像素总数:如如320X200=64000个。个。存储满屏所需的字节数为:存储满屏所需的字节数为:(每每4个像素占一个字节,即个像素占一个字节,即64000/4=16000 ) (偶数行与奇数行偶数行与奇数行)各需要各需要8000(1F40H)个字节个字节来存储来存储(16000/2)规定:规定:偶数行像素从偶数行像素从0B800:0000H开始存储开始存储奇数行像素从奇数行像素从
35、0B800:2000H开始存储开始存储对对4 4色色320X200320X200图形显示模式,图形显示模式,彩彩色色显示与存示与存储器的关系示意器的关系示意图例:例:对对256色色320X200图形显示模式,图形显示模式,表达表达256种不同种不同颜色需要颜色需要8位位二进制二进制(一个字节)(一个字节) 存储一个像素的颜色。存储一个像素的颜色。存储满屏所需的字节数为:存储满屏所需的字节数为: 320X200X1=64000Bz对对256256色色320X200320X200图形显示模式,图形显示模式,彩色彩色显示与存示与存储器的关系示意器的关系示意图三、了解不同模式(三、了解不同模式(方式方
36、式)像数与位像数与位的关系的关系四、调色板与像素点的颜色选择四、调色板与像素点的颜色选择背景色和调色板背景色和调色板图形显示时的彩色选择寄存器图形显示时的彩色选择寄存器像素彩色信息像素彩色信息如图形方式如图形方式04H04H320200点点 每个点用每个点用2bit来控制其颜色来控制其颜色 一个字节控制一个字节控制4个点个点(4个像素个像素) (每个像素两位),(每个像素两位),提供提供4种颜色。种颜色。C1 C0调色板调色板0调色板调色板100背景色背景色背景色背景色01绿绿青青(深蓝深蓝)10红红品红品红(深红深红)11棕棕(褐褐)白白方式方式04H调色板调色板0:由前景色的:由前景色的绿
37、、红、棕绿、红、棕组成组成调色板调色板1:由前景色的:由前景色的青、品红、白青、品红、白组成组成颜色位与调色板组合的颜色颜色位与调色板组合的颜色调色板调色板0:由前景色的:由前景色的绿、红、棕绿、红、棕组成组成调色板调色板1:由前景色的:由前景色的青、品红、白青、品红、白组成组成每组的每组的3种彩色加上背景色共种彩色加上背景色共4种,用种,用2位位表示,一个字节表示表示,一个字节表示4个点的颜色值个点的颜色值VRAM(显示缓存)的(显示缓存)的16K可表示可表示64K个点的颜色个点的颜色320X200=64000/4=1600016Ku图形方式图形方式0DH,一个字符为一个字符为88像素的矩像素的矩阵(点阵),每像素阵(点阵),每像素4位,即一个字符占:位,即一个字符占:u4 88 =256位位/8=32字节字节运行:运行:http:/202.116.3.10/asm/index.html下的下的二个程序二个程序动画程序模拟动画程序模拟、 开窗口程序模拟开窗口程序模拟