Ввод/вывод на консоль



2.5.4. Ввод/вывод на консоль

На входе: AH = 06h; DL = 0FFh - для ввода символа с консоли; или: DL = код символа, не равный 0FFh - для вывода символа на консоль. На выходе: ZF = 0, если в буфере имеется код нажатой на клавиатуре клавиши; ZF = 1, если буфер клавиатуры пуст; AL = ASCII-код символа или 0, если AH содержит расширенный ASCII-код символа. Функция проверяет комбинации клавиш Ctrl-C и Ctrl-Break.

Функция 06h может использоваться как для ввода с консоли, так и для вывода символов на консоль. Режим работы функции зависит от содержимого регистра DL при вызове функции. Если этот регистр содержит значение 0FFh, функция выполняет ввод с консоли, в противном случае символ, код которого записан в этот регистр, выводится на консоль.

Очевидно, что с помощью этой функции нельзя вывести на консоль символ с кодом 0FFh.

Основное отличие функции 06h от всех описанных ранее заключается в том, что эта функция не ожидает, пока оператор нажмет на клавишу. Если буфер клавиатуры пуст, функция просто устанавливает флаг процессора ZF в 1.

Если в буфере клавиатуры имеются символы, флаг ZF сбрасывается и в регистр AL функция записывает ASCII-код символа.



Содержание раздела