Функция 13h предоставляет широкие возможности для вывода текстовых строк на экран монитора. В зависимости от параметров функции, можно определять атрибуты как строки в целом (атрибуты всех символов одинаковы), так и отдельных символов строки. После вывода строки на экран, курсор может либо оставаться на месте, либо переместиться в позицию за последним символом только что выведенной строки.
Данная функция обрабатывает следующие управляющие символы: звуковой сигнал (BELL), перевод курсора на одну позицию назад (BACKSPACE), возврат каретки (CARRIAGE RETURN) и перевод строки (LINEFEED).
На входе: |
AH |
13h - вывод строки на экран |
|
AL |
Режим отображения строки: 0 - курсор не перемещается, атрибуты символов в строке одинаковы и определяются значением регистра BL, 1 - курсор перемещается за конец отображаемой строки, атрибуты символов в строке одинаковы и определяются значением регистра BL, 2 - курсор не перемещается, атрибуты каждого символа задаются отдельно, 3 - курсор перемещается, атрибуты каждого символа задаются отдельно |
BH |
Номер страницы видеопамяти |
|
BL |
Атрибуты символов отображаемого текста. Используется если регистр AL содержит 0 или 1 |
|
CX |
Длина отображаемой строки |
|
DH |
Номер строки экрана, в которой отображается текстовая строка |
|
DL |
Позиция в строке экрана с которой отображается текстовая строка |
|
ES:BP |
Адрес строки в оперативной памяти |
|
На выходе: |
Не используются |
В режимах 2 и 3 атрибуты каждого символа задаются вперемежку с самими символами строки. Сначала идет ASCII-код символа, а затем его атрибут.