Сборник по задачам и примерам Assembler

Покер-рум GG ПокерОк            

Прямой ввод с эхом символа с клавиатуры (06h int 21h)



Прямой ввод с эхом символа с клавиатуры (06h int 21h)

Функция 06h также позволяет ввести один символ с клавиатуры. Но в отличие от функции 01h она не ожидает ввода при отсутствии символа в буфере. Вводимый символ отображается на экране (эхо).

Вход: АН = 06h — чтение символа с эхом без ожидания; DL = 0ffn — признак того, что функция 06h используется для ввода; если DL <> 0ffn, то функция используется для вывода символа (см. ниже).

Выход: если ZF=O, то AL = ASCII-код символа; если ZF-1, то символа в буфере нет. Результаты работы этой функции необходимо оценивать прежде всего по значению флага ZF. Если ZF=O, то функция поместила в регистр AL ASCII-код символа или 0. Наличие нуля в регистре AL говорит о том, что в буфере клавиатуры находится расширенный ASCII-код и необходимо повторить вызов функции с тем, чтобы прочитать его второй байт. Функция 06h не проверяет наличие в буфере символов нажатия комбинации Ctrl+C (Ctrl+Break).



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