logo search
несколько программ / bsp33

Ввод строки символов

Функция 0Ah предназначена для ввода с клавиатуры строки символов:

Регистры на входе:

AH = 0Ah

DS:DX = адрес буфера для ввода строки

Регистры на выходе:

Буфер содержит введенную строку

Функция проверяет комбинации клавиш <Control+C>и<Control+Break>

Перед вызовом функции необходимо специальным образом подготовить буфер, адрес которого передается в регистрах DS:DX - в первый байт буфера следует записать максимальную длину max вводимой строки (в диапазоне от 1 до 244).

После возврата из функции первый байт буфера останется без изменений, а во второй байт будет записана длина введенной строки без учета завершающего ввод символа возврата каретки.

Ввод осуществляется до тех пор, пока либо количество введенных символов не достигнет max-1, либо пока не будет нажата клавиша <Enter>с кодом 0Dh. Если оператор уже ввел max-1 символ и продолжает вводить символы дальше, функция выдает звуковой сигнал и игнорирует вводимые символы до тех пор, пока не будет нажата клавиша<Enter>.

При вводе строки можно использовать стандартные средства редактирования MS-DOS, используемые при вводе команд в режиме командной строки.