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



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

На входе: AH = 0Ah; DS:DX = адрес буфера для ввода строки; На выходе: Буфер содержит введенную строку. Функция проверяет комбинации клавиш Ctrl-C и Ctrl-Break.

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

После возврата из функции буфер будет иметь следующий формат: ----T---T---T---T---T---T- - - ¦max¦len¦ T E X T 0Dh L-T-+-T-+---+---+---+---+ - - ¦ ¦ ¦ L------- длина введенной строки (без учета ¦ завершающего символа CR) L----------- остается без изменений

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

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



- Начало - - Назад - - Вперед -