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

В вычислительной технике наибольшее распространение получил растровые монохромные и цветные мониторы. Растровый принцип формирования изображения состоит в следующем. Весь экран монитора разбивается на множество точек, размещенных по горизонтальным линиям сканирования (рис. 3.5). Количество точек на каждой линии одинаковое. Начиная с верхнего левого угла, т.е. с верхней левой точки, на экран фокусируется электронный луч, который перемешается по установленному пути слева направо. Такое движение луча называется строчной (горизонтальной) разверткой. Пройдя последовательно все точки одной линии, луч возвращается в крайнюю левую точку следующей строки. Переход луча на следующую строку называется кадровой (вертикальной) разверткой. Такое движение луча слева направо и сверху вниз называется сканированием экрана. При достижении правой нижней точки луч быстро возвращается в левую верхнюю точку. Сканирование повторяется. И так вплоть до выключения экрана.

Для отображения точки на экране необходимо в момент прохождения луча через эту точку сформировать определенный сигнал, который определяет интенсивность луча. Поверхность экрана покрыта фосфоресцирующим веществом, обеспечивающим свечение точки при активном сигнале. В монохромных дисплеях сигнал подается в те моменты, когда требуется изобразить определенную точку светлой. Для таких мониторов необходимо выдавать четыре управляющих сигнала: видеосигнал, определяющий цвет точки (белый, черный); сигнал интенсивности, определяющий яркость точки; сигналы горизонтальной и вертикальной синхронизации которые определяют местоположение луча на экране. В цветных дисплеях для формирования цветного изображения на экран фокусируются три электронных луча - для красного, зеленого и синего цветов. Поэтому имеются три входа для цвета (R – красный, G - зеленый, В - синий), один вход для интенсивности, входы для горизонтальной и вертикальной синхронизаций.

Организация видеопамяти видеоадаптера в текстовом и графическом режимах - student2.ru

Рис. 3.5. Движение луча по экрану монитора

Мониторы могут быть цифровыми и аналоговыми. В цифровом монохромной мониторе цвет точки определяется дискретным значением видеосигнала (V) и сигнала интенсивности (1). Всего может быть задано четыре цветовых оттенка (00 - черный, 01 - серый, 10 – белый, 11 - ярко-белый), В цифровом цветном дисплее сочетание дискретных сигналов на входах I,R,G,В позволяет получить 16 различных цветов (0000 - черный, 0001 - синий, 0010 - зеленый, 0011 - голубой, 0100 - красный, 0101 - фиолетовый, 0110 - коричневый, 0111 - белый, 1000 - серый, 1001 - ярко-синий, 1010 - ярко-зеленый, 1011 - ярко-голубой, 1100 - ярко-красный, 1101 - ярко-фиолетовый, 1110 - желтый, 1111 - ярко-белый).

Аналоговый монитор имеет три входа для RGВ-сигналов. Величина сигнала на каждом из входов регулируется уровнем напряжения. Поэтому в аналоговых дисплеях имеется возможность получения практически неограниченного числа цветов с плавными переходами между ними. Практически в аналоговых видеосистемах количество цветов ограничено цифровым информационным кодом, формирующим цвет. Например, в системе VGA для каждого из цветов R, G, B отводится по 6 бит. Поэтому всевозможных вариантов цветов для этой системы равно 256К, что определяется по формуле: N = 218 = 256К.

Для отображения информации на экране дисплея используются два режима: текстовый и графический. В текстовом режиме на экран выводятся только символы, а в графическом можно строить любые сложные изображения. В текстовом режиме используется алфавитно-цифровой метод формирования изображения. Суть метода заключается в том, что изображение на экран дисплея строится из отдельных фрагментов выводимых символов (букв, цифр, математических знаков, графических элементов и др.). Каждый фрагмент представляется в виде матрицы, имеющей вид прямоугольника стандартных размеров и состоящей из определенного числа ячеек. Каждая ячейка представляет собой битовый сигнал 0 или 1. Например, на рис.3.6 показана матрица 8х8 для формирования буквы "Н".

Организация видеопамяти видеоадаптера в текстовом и графическом режимах - student2.ru

Рис. 3.6. Матрица символа «Н»

Фрагменты символов хранятся в памяти в так называемом знакогенераторе, в котором восемь байтовых регистров соответствуют набору точек одной символьной позиции на экране. Информация, считываемая из этих регистров, подается в схемы управления лучом электронно-лучевой трубки дисплея, который формирует на экране точечное изображение. Единичное значение сигнала указывает на то, что соответствующая точка относится к изображаемому символу. Нулевое значение сигнала определяет точку фона символа на экране. Каждый фрагмент символа в знакогенераторе имеет свой адрес. Обычно для адресации фрагментов отводится один байт. Поэтому в знакогенераторе содержатся коды 256 различных фрагментов символов. Память знакогенератора может изменяться программно, что дает возможность использовать произвольные наборы символов. Их может создавать сам пользователь, для чего в программном обеспечении предусмотрены специальные средства.

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

В процессе работы по заданной программе записываются прообразы символьных и графических изображений, выдаваемых на экран дисплея в специальную область оперативной памяти, которая называется видеопамятью или буфером экрана. При работе в текстовом режиме для каждого символа в памяти следует хранить его код и указание, как его изображать (цвет изображаемого символа, цвет фона, яркость изображения). Поэтому каждому символу соответствуют два байта: в первом из них записывается, что следует изобразить (код символа), во втором - как это изобразить (код атрибута символа). Так как в текстовом режиме на экран одновременно выводятся 2000 символов, то для запоминания информации полного экрана требуется 4 Кбайт видеопамяти.

Формат байта, содержащего атрибут изображаемого символа, представлен на рис. 3.7. Отдельные биты атрибута образуют 4 группы: биты 0-2 - цвет символа; бит 3 - яркость; биты 4-6 – цвет фона; бит 7 - мерцание. Установка бита яркости в "1" делает цвет символа более светлым. Всего можно получить 16 цветов символа. Если бит мерцания установлен в "1", символ начинает мерцать с частотой приблизительно 4 раза в секунду.

Организация видеопамяти видеоадаптера в текстовом и графическом режимах - student2.ru

Рис.3.7. Формат байта атрибута символа

В видеопамяти хранятся последовательно коды символов и коды атрибутов. Порядок размещения этих кодов в видеопамяти для одной экранной страницы показан на рис. 3.8. Обозначим: адрес первой ячейки - SEGM:0000Н, где SEGM-двухбайтовое значение сегмента видеопамяти; С0 и А0 - соответственно код первого символа и атрибут этого символа в каждой строке; С1 и А1 код и атрибут следующего ситмвола и т. д.

Для формирования текстового изображения на экране из видеопамяти последовательно считывается информация, начиная с адреса SEGM:0000Н. Считывание осуществляется непрерывно и циклически. Этот процесс называется сканированием памяти. По коду символа из знакогенератора выбирается соответствующая матрица для формирования изображения символа на экране.

Первый символ (символ с кодом С0 в строке 0) появляется в левом верхнем углу экрана с атрибутом А0. Следующие 2 байта видеопамяти изображают следующий символ справа от него и т. д. Значение смещения (SM) ячейки видеопамяти для любого символа, размещаемого в произвольной позиции (NS-строка, NК-колонка) на экране определяется по формуле: SМ = 2 * (NS * 80 + NК).

Обычно в программах, работающих напрямую с видеопамятью регистр DS либо ЕS микропроцессора загружается эначением сегмента видеопамяти, а остальная часть программы работает со смещениями в видеопамяти.

При работе в графическом режиме программное обеспечивает для вывода изображений на экран должно непосредственно управлять цветом всех точек на экране. Изображение целиком хранится в видеопамяти. Ее объем зависит от разрешающей способности монитора и количества цветовых оттенков, которыми может быть изображена точка. При объеме памяти 16 Кбайт для получения отображения на всем экране в графическом режиме с разрешающей способностью (640x200 точек) каждой из точек выделяется один бит. Поэтому в данном случае изображение будет только черно-белым. В режиме нормальной разрешающей способности размеры изображения составляют 320x200 точек (для видеосистемы CGA). В этом режиме каждой точке изображения соответствует 2 бита видеопамяти. Двумя битами можно кодировать 4 различных состояния. Это означает, что каждая точка может иметь один из четырех цветов. Увеличение объема видеопамяти позволяет в графическом режиме увеличить число цветовых оттенков.

В отличие от цифровых видеосистем ВА VGA использует аналоговый видеосигнал, что позволяет получить на экране монитора неограниченное количество цветовых оттенков. Основным схемным нововведением в схемах ВА VGA стало наличие специальной микросхемы RAMDAC (цифро-аналоговый преобразователь данных, хранимых в ОЗУ).

Организация видеопамяти видеоадаптера в текстовом и графическом режимах - student2.ru

Рис.3.8. Размещение кодов в видеопамяти

Билет №16 -СЕТИ

Наши рекомендации