![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Лекция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.
Л
Системные таблицы и программы DOS
Рисунок 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- х сигналов: красного, синего, зеленого и яркость. В текстовых режимах используется байт для задания цвета, яркости и мигания символа, а также цвета фона. В графических режимах единица изображения - отдельный пиксель (от 132 битного кодирования). Управление видеодисплеем. Можно выполнить -4- я способами используя службы языка программирования используя службы ОС используя видео-службы ROM BIOS прямое управление аппаратными средствами через обращения к памяти или портам ввода-вывода. Графический режим. Вывод текста В графическом режиме знаки формируются пиксель за пикселем программным знаковым генератором, входящим в ROM BIOS(прерывание 10 h обеспечивает данную службу). Программный знаковый генератор обращается к таблице битовых комбинаций, чтобы определить какие пиксели отображать на экране для данного знака (в ROM памяти каждой PC содержится таблица (принятая по умолчанию) битовых комбинаций знаков. В стандартной таблице каждый символ описывают 8 байтов.
Отображение пикселей в памяти графических режимов. При использовании графического режима пиксели хранятся в виде последовательности битовой полей. При этом соблюдается взаимнооднозначное соответствие между этими битовыми полями, хранящимися в памяти, и пикселями, отображаемыми на экране. Расположение полей битов видеопамяти (видеобуфера) зависит от видеорежима. В 256 цветных режимах каждой точке изображений на экране монитора соответствует один байт видеопамяти, в который записывается код точки. Этот код не используется непосредственно, а служит индексом в специальном массиве, содержащем 256 строк по три элемента - таблице цветов ЦАП. Каждый из 3 - х элементов таблицы дает интенсивность одного из основных цветов электронно-лучевой трубки (красный, зеленый, синий). Значения интенсивностей, выбранные из строки, соответствующей хранящемуся в видеопамяти кода, поступают в ЦАП. Отображения видеопамяти на экран в цветном режиме с разрешением 640х480.
В режиме VGA 320x200 с 256 цветами для отображения видеопамяти на основное адресное пространство используется 64 000 байт, располагающихся с адреса A000h: 0000h. Дальнейшее увеличение разрешения или числа цветов приводит к тому, что объем видеопамяти превышает максимальные границы сегмента в реальном режиме (65 535 байт), а затем и размер участка адресного пространства, отводимого для видеопамяти (160 Кб, от A000h: 0000h до B800h: FFFFh. С адреса C800h: 0000h начинается область ROM BIOS). Чтобы вывести изображение, используются два механизма - переключение банков видеопамяти для реального режима и LFB (линейный кадровый буфер) для защищенного. Работа в современных графических режимах. Большинство из выпускаемых сейчас видеоадаптеров относятся к классу SVGA. Некоторые режимы видеоадаптеров SVGA.
Современные видеоконтроллеры отличаются от VGA тем, что обеспечивают работу с высокими разрешениями и позволяют использовать линейную адресацию видеопамяти. Организация видеопамяти в режимах типа Direct Drow. В режимах группы Direct Drow (Hi Color u True Color) информация поступает на цифро- аналоговый преобразователь непосредственно из видеопамяти соответственно красная, зеленая и синяя составляющие цвета точки представлены отдельными полями и выделенной для хранения точки области видеопамяти (от 2 до 4 байтов на точку). В режимах Hi Color точка кодируется 16 разрядным словом, причем существует 2 варианта представления цвета:
В режимах HiColor точка кодируется 16-разрядным словом, причем существует два варианта представления цвета,: HiColorl5 (формат 1: 5: 5: 5) и HiColorl6 (формат 5: 6: 5). Через X на рисунке обозначена зарезервированная (неотображаемая) область данных. Из видеопамяти на экран информация отображается слева направо и сверху вниз.
В режимах True Color для хранения каждого компонента цвета точки выделена по одному байту видеопамяти, существует два формата. True Color 24
Т. о в 24- разр. True Color. Основная литература: 6[131-266]; Дополнительная литература: 11[70-81], 16[85-103, 153-181], 18[152-153] Контрольные вопросы: 1. Из каких основных компонентов состоит видеоподсистема. 2. Перечислите параметры, определяющие режим видеоконтроллера. 3.Перечислите типы графических режимов, используемых в настоящее время. 4. Из каких сигналов формируется цвет элемента изображения.
|