Автор работы: Пользователь скрыл имя, 11 Января 2011 в 19:34, лекция
Язык ассемблера - это один из самых старых из всех существующих языков программирования. Когда-то это был один из основных языков программирования, без знания которого нельзя было заставить компьютер сделать что-либо полезное. Появились более удобные средства общения с компьютером. Но в отличии от других языков ассемблер не умирал, более того он это не смог сделать в принципе.
В графическом режиме ROM содержит точечные образы только для первых 128 ASCII-кодов. Команда INT 1FH обеспечивает доступ к 1К байтовой области в памяти, определяющей остальные 128 символов. (8 байт на символ). Отображение графических байтов в видео сигналы аналогично, как для среднего, так и для высокого pазрешения.
РЕЖИМ СРЕДНЕГО РАЗРЕШЕНИЯ
При среднем разрешении каждый байт представляет четыре точки, пронумерованных от 0 до 3:
Байт: |C1 C0|C1 C0|C1 C0|C1 C0|
Пиксели: 0 1 2 3
В любой момент для каждой точки возможны четыре цвета, от 0 до 3. Ограничение в 4 цвета объясняется тем, что двухбитовая точка имеет 4 комбинации значений битов: 00, 01, 10 и 11. Можно выбpать значение 00 для любого из 16 возможных цветов фона или выбрать значение 01, 10, и 11 для одной из двух палитр. Каждая палитpа имеет три цвета:
C1 C0 Палитра 0 Палитра 1
0 0 фон фон
0 1 зеленый голубой
1 0 красный сиреневый
1 1 коричневый белый
Для выбора цвета палитры и фона используется INT 10H. Таким обpазом, если, например, выбран фон желтого цвета и палитра 0, то возможны следующие цвета точки: желтый, зеленый, красный и коричневый. Байт, содержащий значение 10101010, соответствует красным точкам. Если выбрать цвет фона - синий и палитру 1, то возможные цвета: синий, голубой, сиреневый и белый. Байт, содержащий значение 00011011, отображает синюю, голубую, сиреневую и белую точки.
Прерывание BIOS INT 10H для графики
Функция AH=00 команды INT 10H устанавливает графический режим. Функция AH=11 команды INT 10H позволяет выбрать цвет палитры и вывести на экран графический символ. Код в регистре AH определяет функцию:
AH=00: Установка режима. Нулевое значение в регистре AH и 04 в pегистре AL устанавливают стандартный цветной графический режим:
MOV AH,00 ;Функция установки режима
MOV AL,04 ;Разрешение 320х200
INT 10H
Установка графического режима приводит к исчезновению курсора с экрана. Подробности по установке режима приведены в главе 9.
AH=0BH: Установка цветовой палитры. Число в регистре BH определяет назначение регистра BL:
BH=00 выбирает цвета фона и бордюра в соответствии с содержимым регистра BL. Цвет фона от 1 до 16 соответствует шест. значениям oт 0 до F; BH=01 выбирает палитру соответственно содержимому регистра BL (0 или 1):
MOV AH,0BH ;Функция установки цвета
MOV BH,01 ;Выбор палитры
MOV BL,00 ; 0 (зеленый, красный, корич.)
INT 10H ;Вызвать BIOS
Палитра, установленная один раз, сохраняется, пока не будет отменена другой командой. При смене палитры весь экран меняет цветовую комбинацию. При использовании функции AH=0BH в текстовом режиме, значение, установленное для цвета 0 в палитре, определяет цвет бордюра.