Функции DOS вывода на экран позволяют выводить символы в виде строк на экран, но не позволяют изменить цвет текста и не позволяют изменить цвет текста.
Для вывода текста необходимо сначала задать номер текстового режима, в котором будет работать монитор компьютера. Задание видеорежима осуществляется следующими командами:
MOV AH,0000h ; установить видеорежим
MOV АL,<номер видеорежима>
INT 10h ; задание прерывания для установки видеорежима
через систему BIOS
Номера видеорежимов обозначают следующее:
О и 1 — это 16-цветные режимы с 25 строками по 40 символов в строке;
2 и 3 — это 16-цветные режимы с 25 строками по 80 символов в строке;
7 — это монохромный режим с 25 строками по 80 символов в строке.
Видеорежим, который используется в системе DOS по умолчанию, — текстовый режим 3.
Перед непосредственным выводом символа на экран монитора необходимо сначала задать положение курсора. Для установки курсора в любую позицию экрана необходимо выполнить следующие команды:
MOV AH,0002h ; установить положение курсора
MOV ВН,<номер страницы>
MOV DН,<номер строки>
MOV DL,<номер столбца>
INT 10h; задание прерывания для установки положения курсора через систему BIOS
С помощью данных команд можно установить курсор в любую позицию экрана. Отсчет номера строки и столбца ведется от верхнего левого угла экрана. Первый символ имеет координату (0,0). Номера страниц соответствуют области памяти, содержимое которой в данный момент отображается на экране. Если текст выводится в активной странице, то команду MOV ВН,<номер страницы> можно не указывать.
Для вывода символа на экран необходимо выполнить следующие команды:
MOV AH,0009h ; вывести символ на экран
MOV ВН,<номер страницы>
MOV АL,<код символа> ; задается ASCII-код символа
MOV ВL,<атрибут символа>
MOV СХ,<число повторений символа>
INT 10h ; задание прерывания для вывода символов через систему BIOS
В регистре BL побитно задаются следующие атрибуты выводимого символа:
0-2 биты (крайние правые) — определяют цвет символа;
3 бит — задает яркий цвет символов, если равен 0 и обычный цвет, если равен 1;
4-6 биты — задают цвет фона;
7 бит — задает мигающий символ.
Кодирование цвета осуществляется тремя битами в соответствии со следующей таблицей:
000 черный;
001- синий;
010-зеленый;
011 -голубой;
100-красный;
101 — пурпурный;
110-коричневый;
111 — светло-серый (белый).
Т.е. для того чтобы задать символ синего цвета на светло-сером фоне необходимо задать команду MOV BL,00011111b
Для считывания параметров и атрибутов символа, выведенного на экран, необходимо выполнить следующие команды:
MOV AH,0008h ; считать параметры символа в текущей позиции
курсора
MOV ВН,<номер страницы
INT 10h ; задание прерывания для считывания символов
через систему BIOS
После выполнения данных команд в регистр AL будет занесен код символа, а в регистр АН будет занесены атрибуты символа. Кстати, если хотите изучить основы командной строки Windows, рекомендую пройти по вышеуказанной ссылке.