电工学习网

 找回密码
 立即注册

显示I/O

2015-3-22 09:40| 编辑:电工学习网| 查看: 9289| 评论: 0

    一、概念

    1.显示器适配器:用于计算机和显示器连接的接口电路板,也称为显示卡。在IBM PC中有单色显示及并行打印机适配器,彩色图形监视器适配器两种。

    2.象素:80列25行共2000个网格的位置为象素。每个象素可显示一个字符,且在存储器中都有一个字映像。屏幕行号为0~24(0~18H),列号为0~79(0~4FH)。

    3.属性:对应显示屏上的每个字符在存储器中由连续的两个字节表示,一个低字节表示字符的ASCII码,另一个高字节保存字符的属性。

    4.文本方式:在屏幕上处理字母、数字以及一些字符图形称为文本方式。

    

    二、字符属性

    单色字符显示:单色显示属性字节如上图:

    彩色字符显示:彩色显示属性字节如下图。

    

    显示存储器:屏幕上某一字符位置在显示存储器(又称为显存)中的偏移地址可由下列公式算出:

    Char_offset=Page_offset+((row×width)+column)×byte

    其中Page_offset是页偏移地址,width是每行可显示的字符数,在25×80的字符显示方式下,width=80,byte是表示一个字符所用的字节数,在字符显示方式下byte=2,row和column是相对于屏幕左上角位置(0,0)的行列坐标。

    BIOS显示中断:INT 10H的0~0FH及13H共17个功能。部分见书第328页的表9.8所示。

    控制光标:光标不是ASCII字符,它由硬件产生和控制。

    AH=1:控制光标行的开始(CH的低4位)和结束(CL的低4位) (即大小),显示光标(CH4=0)和关闭(CH4=1)。

    AH=2:设置光标位置。DH=行号,DL=列号,BH=页号。对单显BH=0。

    读光标位置:AH=3,读光标位置。BH=页号。出口信息为DH=行号,DL=列号;CH和CL中的低4位为光标大小。

    选择显示页:AH=5,AL=页号。可由程序确定显存中的显示区域。

    清屏和卷屏

    AH=6:使屏幕内容或窗口内容上卷指定的行。该功能需设置7个入口参数,AL=0时清屏或清窗口。

    AH=7:使屏幕内容或窗口内容下卷指定的行。该功能需设置7个入口参数,AL=0时清屏或清窗口。

    字符显示

    AH=9:在光标位置显示字符及属性。BH=页,AL=字符,BL=属性,CX=字符重复次数。光标回到原位置。

    AH=0AH:在光标位置只显示字符。BH=页,AL=字符,CX=字符重复次数。光标回到原位置。

    AH=8:读光标位置的字符及属性。BH=页。返回时AL=字符,AH=属性。

    彩色和字符串显示在编写字符显示程序时,彩色显示和单色显示类似。注意设置属性值。

    AH=13H功能显示字符串有4种方式,前两种方式(AL=0,1)要指定整个显示字符串的属性,后两种方式(AL=2,3)要指定每个字符的属性。

    DOS显示功能调用(INT 21H的部分功能)

    显示单字符

    AH=2:显示一个字符并检验Ctrl_Break。DL=(显示)字符,光标跟随字符移动。

    AH=6:直接控制台I/O,不检验Ctrl_Break。

    DL=0FFH:为输入字符,AL=输入字符;

    DL=字符:为输出并显示一个字符,光标跟随字符移动。

    AH=9:显示字符串。DS:DX=字符串的首地址,字符串必须以“$”为结束符,光标跟随字符串移动。在“$”前可加回车(0DH)换行(0AH)符。

    三、显示页

    页号        单色            彩色

    1          B000:0000       B800:0000

    2              :1000           :1000

    3              :2000           :2000

    4              :3000           :3000

    5              :4000           :4000

    6              :5000           :5000

    7              :6000           :6000

    8              :7000           :7000

    四、文本显示属性

    

    文本color及属性代码

颜色             代码

  颜色             代码

   黑              0000
蓝              0001
绿              0010
青              0011
红              0100
品红            0101
棕              0110
灰白            0111

   灰              1000
浅蓝            1001
浅绿            1010
浅青            1011
浅红            1100
浅品红          1101
黄              1110
白              1111

    典型的BW文本属性

    00H

    01H    黑底白字,下划线,规定

    07H    黑底白字,正常

    0FH    黑底白字,高亮

    70H    白底黑字,反相

    87H    黑底白字,闪烁

    F0H    白底黑字,反相闪烁

    显示有属性的单个字符利用INT 10h的9号功能

    显示有属性的字符串利用INT 10h的13号功能

    五、DOS显示功能调用(INT 21h)

    1、显示单个字符,光标移动

    mov ah,2

    mov dl,‘字符’

    int 21h

    2、显示字符串

    mov ah,9

    lea dx,串首地址

    int 21h          ;光标到串尾

    六、BIOS显示功能调用

    (1)光标处显示单个属性字符,光标不移动

    mov ah,9

    mov al,‘字符’

    mov bl,属性

    mov cx,个数

    mov bh,页号

    int 10h

    (2)光标处显示单个正常字符,光标不移动

    mov ah,10

    mov al,‘字符’

    mov cx,个数

    mov bh,页号

    int 10h

    (3)模拟TTy显示输出

    mov ah,0eh

    mov al,显示代码

    int 10h

上一篇:键盘I/O下一篇:文本操作 收藏

看过《显示I/O》的人还看了以下文章:

发表评论

最新评论

电工学习网 ( )

GMT+8, 2021-12-6 20:45

Powered by © 2011-2021 www.shop-samurai.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

返回顶部