ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Непосредственный доступ к видеобуферуНепосредственный вывод в видеобуфер – наиболее быстрый способ вывода текста на экран. Для доступа к видеопамяти используется far-указатель, который позволяет адресоваться в пределах всей видеопамяти. Пример В позицию (i, j), где i – строка, j – столбец, выводится символ ‘A’, сопровождаемый атрибутом atr. Вывод подходит для режимов 0, 1, 2, 3 с разрешением 80 х 25 для цветных ВА. Базовый адрес видеобуфера b8000h. Вместо того, чтобы размещать константу 160 в тексте программы, лучше проверить в области данных bios в ячейке 40:4Ah действительное число столбцов отображаемых на экране и уже на основании этого сформировать подходящую константу для вычисления позиции символа и его атрибута в видеобуфере. Рекомендуется, также, на основании информации, размещенной в ячейках 40:4Ah и 40:49h, выяснить используемый режим и вычислить базовый адрес активной страницы. …………………………. char far * buf = (char far *)0xb8000000; …………………………… buf += i * 160 + j * 2; * buf++ = ‘A’; * buf = atr; ……………………………. Пример Использование near-указателя требует предварительной загрузки индексного регистра, например ES. ……………………………… register unsigned _es * work; _ES = 0xb800; // загрузка базового адреса видеопамяти на регистр ES ……………………………… work = (unsigned _es *)(i * 160 + j * 2); * work = (unsigned)(atr << 8) | ‘A’; // размещение символа и атрибута в пределах // 16-разрядного слова и запись Наиболее надежные программы, выполняющие непосредственный доступ к видеопамяти, определяют для записи те моменты времени, когда адаптер не выполняет обновления изображения на экране [12]. Вопросы для самоконтроля · Какие типы мониторов различают? · Какие параметры изменяются при изменении кодов режимов? · Как выглядят атрибуты символов в видеопамяти и на что они влияют? · Какие данные располагаются в области данных bios, связанные с управлением монитором? · Каким образом выполняется расчет координат символа и его атрибута в случае вывода символа непосредственно в видеопамять? Не нашли, что искали? Воспользуйтесь поиском:
|