Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лекция13. Вывод на экран. Управление видеодисплеем.






Общие сведения.

Видеоподсистема состоит из 2-х основных компонентов: монитора (дисплей);

видеоадаптера (видеоплата, графическая плата, видеоконтроллер)

Основных типов адаптеров два:

-первый тип продолжает цветной адаптер CGA -второй тип продолжает адаптер дисплея MDA Существует 2 режима работы адаптеров:

-текстовый

-графический

(CGA работает в 2- х режимах, MDA-т только в текстовом)

Современные видеоконтроллеры поддерживают разнообразные текстовые и графические режимы.

Параметры определяющие режим. поддержка текста или графики разрешающая способность число одновременно выводимых цветов

число выводимых символов

число точек образующих каждый символ.

Текстовые режимы различают в основном по разрешению (числу отображаемых символов по горизонтали и вертикали) и цветовой палитре.

Графические режимы классифицируются по количеству одновременно отображаемых цветов,

Типы графических режимов:

монохромный

четырехцветный

шестнадцатицветный EGA/ VGA 256 цветный SVGA (8- битное)

16- битное (Hicolor)

True Color (24- битное)- True Color (32- битное)

В настоящее время используется только шеснадцатицветный текстовый и графические режимы 4, 5, 6, 7

Видеорежим должен позволять выполнять все требуемые в программе операции.

Существует 2 основных способа программной установки видеорежима: с помощью функции VGA BIOS и VESA BIOS.

Если стандарт VESA поддерживается, то определенные им функции записываются производителями видеоадаптера в ПЗУ самого адаптера. Они называются расширением прерывания BIOS 10h- VESA BIOS EXTANTION (VBE).

Для вызова функции VBE в AH—4Fh, а в AL—номер функции. Функция может не выполнятся

если ее не поддерживает аппаратура адаптера она отсутствует в VBE

Всего может существовать 256 различных текстовых и графических режимов.

Видеопамять.

Физически расположена вместе с остальными видеокомпонентами на плате адаптера (логически - часть адресного пространства процессора).

Для работы с видео буфером необходимо знать, где в адресном пространстве он находится и какова ее организация.

Типичная схема использования адресного пространства в реальном режиме представлена на рисунке 11.


Физические адреса 00000h

Сегментные адреса 0000h

Объем адресного пространства

 

 


Л


 


Системные таблицы и программы DOS


>

A000h B000h B800h C000h D000h F000h

A0000h B0000h B8000h C0000h D0000h F0000h

64 Кбайт 32 Кбайт 32 Кбайт 64 Кбайт 128 Кбайт 64 Кбайт

>

Свободная память для загружаемых прикладных и системных программ

ПЗУ - расширения BIOS

Графический видеобуфер

Свободные адреса

Свободные адреса

Текстовый видеобуфер

COMMAND.COM

ПЗУ BIOS

Обычная память (640 Кбайт)

Старшая память (384 Кбайт)

 

 


Рисунок 11. Схема использования адресного пространства в реальном режиме

Текстовый видеобуфер включает 8 видеостраниц и занимает в адресном пространстве компьютера (за пределами обычной памяти) 32 Кбайт от сегмент­ного адреса B800h. Начинается он с видеостраницы 0, адрес которой совпадает с адресом всего видеобуфера. Каждая страница занимает 4 Кбайт, таким образом, страница 1 начинается с сегментного адреса B900h, страница 2- е адреса BA00h и т.д. Весь видеобуфер простирается до границы (сегментной) C000h

При включении компьютера активной (видимой) становится видеостраница 0. Смена видеостраниц осуществляется вызовом функции 05h прерывания 10h BIOS.

Любой код, записываемый в видеобуфер, сразу же отображается на экране в виде цветного символа на одном из знакомест. Каждый символ занимает в буфере поле из двух байт Младшие (четные) байты всех полей отводятся под коды ASCII

отображаемых символов, старшие(нечетные) байты - под их атрибуты.

Двухбайтовые коды символов записываются в видеобуфер в том порядке, в каком они должны появляться на экране: первые 80 двухбайтовых полей соответствуют первой строке экрана, Вторые 80 полей - второй строке и т.д. Все управляющие коды теряют свои управляющие функции и отображаются в виде соответствующих им символов.

Для того, чтобы из программы получить доступ к видеобуферу надо занести его сегментный адрес в один из сегментных регистров данных. После этого, задавая те или иные смещения можно выполнить запись в любые места видеобуфера.

Пример -Прямое программирование видеобуфера:

; очистка экрана; на стр 0 видеобуфера

mov AX, 0B 800h; сегментный адрес видеоадаптера mov ES, AX; загрузим его в es

; выведем два символа mov BX, 80*2*5; смещение в видеобуфер в байтовый символ mov AL, ‘* ’

mov AH, 0eh; цвет желтый цвет по черному

mov ES: [BX], AX; запись в видеобуфере

mov ES: [BX+162], 0B0Fh; цвет от светло- бирюзового

; по черному символ 0fh Запись в видеобуфер непосредственно числа 0B0F, удобно когда на экран выводится символы не имеющие закрепленных за ними клавиш.

Формирование изображений.

Адаптеры хранят содержимое изображения в оперативной памяти, таким образом, что определенному адресу в памяти соответствует определенное место на экране дисплея. Цвет элемента изображения на экране формируется из 4- х сигналов: красного, синего, зеленого и яркость.

В текстовых режимах используется байт для задания цвета, яркости и мигания символа, а также цвета фона.

В графических режимах единица изображения - отдельный пиксель (от 1­32 битного кодирования).

Управление видеодисплеем.

Можно выполнить -4- я способами используя службы языка программирования используя службы ОС используя видео-службы ROM BIOS

прямое управление аппаратными средствами через обращения к памяти или портам ввода-вывода.

Графический режим.

Вывод текста

В графическом режиме знаки формируются пиксель за пикселем программным знаковым генератором, входящим в ROM BIOS(прерывание 10 h обеспечивает данную службу).

Программный знаковый генератор обращается к таблице битовых комбинаций, чтобы определить какие пиксели отображать на экране для данного знака (в ROM памяти каждой PC содержится таблица (принятая по умолчанию) битовых комбинаций знаков.

В стандартной таблице каждый символ описывают 8 байтов.

Основные графические режимы VGA

Номер Разрешение Число цветов
11h 640x480  
12h 640x480  
13h 640x480  

 

Отображение пикселей в памяти графических режимов.

При использовании графического режима пиксели хранятся в виде

последовательности битовой полей. При этом соблюдается

взаимнооднозначное соответствие между этими битовыми полями, хранящимися в памяти, и пикселями, отображаемыми на экране.

Расположение полей битов видеопамяти (видеобуфера) зависит от видеорежима. В 256 цветных режимах каждой точке изображений на экране монитора соответствует один байт видеопамяти, в который записывается код точки. Этот код не используется непосредственно, а служит индексом в специальном массиве, содержащем 256 строк по три элемента - таблице цветов ЦАП. Каждый из 3 - х элементов таблицы дает интенсивность одного из основных цветов электронно-лучевой трубки (красный, зеленый, синий).

Значения интенсивностей, выбранные из строки, соответствующей хранящемуся в видеопамяти кода, поступают в ЦАП.

Отображения видеопамяти на экран в цветном режиме с разрешением 640х480.

Столбец 0 столб 1 столб 2
Байт 0 Байт 1 Байт 2   Байт
        Байт
 
Байт Байт      

 

В режиме VGA 320x200 с 256 цветами для отображения видеопамяти на основное адресное пространство используется 64 000 байт, располагающихся с адреса A000h: 0000h. Дальнейшее увеличение разрешения или числа цветов приводит к тому, что объем видеопамяти превышает максимальные границы сегмента в реальном режиме (65 535 байт), а затем и размер участка адресного пространства, отводимого для видеопамяти (160 Кб, от A000h: 0000h до B800h: FFFFh. С адреса C800h: 0000h начинается область ROM BIOS). Чтобы вывести изображение, используются два механизма - переключение банков видеопамяти для реального режима и LFB (линейный кадровый буфер) для защищенного.

Работа в современных графических режимах.

Большинство из выпускаемых сейчас видеоадаптеров относятся к классу SVGA.

Некоторые режимы видеоадаптеров SVGA.

Разрешение в пикселях Число цветов Номер режима
800х600   103h
800х600   115h
2024х768   117h
1280х1024   107h

 

Современные видеоконтроллеры отличаются от VGA тем, что обеспечивают работу с высокими разрешениями и позволяют использовать линейную адресацию видеопамяти.

Организация видеопамяти в режимах типа Direct Drow.

В режимах группы Direct Drow (Hi Color u True Color) информация поступает на цифро- аналоговый преобразователь непосредственно из видеопамяти соответственно красная, зеленая и синяя составляющие цвета точки представлены отдельными полями и выделенной для хранения точки области видеопамяти (от 2 до 4 байтов на точку).

В режимах Hi Color точка кодируется 16 разрядным словом, причем существует 2 варианта представления цвета:

Формат HiColor15 Формат HiColor16

В режимах HiColor точка кодируется 16-разрядным словом, причем существует два варианта представления цвета,: HiColorl5 (формат 1: 5: 5: 5) и HiColorl6 (формат 5: 6: 5). Через X на рисунке обозначена зарезервированная (неотображаемая) область данных. Из видеопамяти на экран информация отображается слева направо и сверху вниз.

  14 10     4 0
Х Красный Зеленый Синий
        4 0
Красный Зеленый Синий
             

 

В режимах True Color для хранения каждого компонента цвета точки выделена по одному байту видеопамяти, существует два формата.

True Color 24

Байт 8 Байт 2 Байт 3
Красный зеленый Синий

 

True Color 32

Байт 3 Байт 2 Байт 1 Байт 0
Х красный зеленый синий

 


 

Т. о в 24- разр. True Color.

Основная литература: 6[131-266];

Дополнительная литература: 11[70-81], 16[85-103, 153-181], 18[152-153]

Контрольные вопросы:

1. Из каких основных компонентов состоит видеоподсистема.

2. Перечислите параметры, определяющие режим видеоконтроллера.

3.Перечислите типы графических режимов, используемых в настоящее время.

4. Из каких сигналов формируется цвет элемента изображения.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.