Page 24 - 4875
P. 24
2 Буферизований ввід без ехо-виводом
На вході: АН = 08h
На виході: АL = ASCII код або „0”
Аналогічно до 01h, але використовується тоді, коли не треба
дублювати на екрані символи, що вводяться з клавіатури.
3 Не фільтрований ввід з ехо-виводом
На вході: АН = 07h
На виході: АL = ASCII код або „0”
Якщо AL=0, то повторний виклик повертає розширений ASCII
код.
4 Ввід/вивід на консоль
Дана функція може використовуватись як для вводу, так і для
виводу. Основна відмінність – це те, що вона не проводить очікування
при відсутності в буфері даних про натискання клавіші. Якщо буфер
пустий, то ZF встановлюється в „1”.
На вході: АН = 06h
АL = 0FFh або код символу
На виході: ZF = „0” чи „1”
AL = ASCII код або “0”
Якщо в AL ввести 0FFh, то функція переключиться на ввід і
символ 0FFh вивести неможливо.
5 Ввід рядка символів
На вході: АН = 0Аh
DS:DX = <адреса буферу>
На виході: <буфер> містить введений рядок
Дана функція призначена для вводу рядка символів у буфер,
при чому в перший байт цього буфера необхідно записати максимальну
довжину рядка (1-244 символи).
DS:DX
max ? ? ... Завершення здійснюється клавішею Enter,
після чого буфер має наступний вигляд:
max len T E X T 0dh 1) Кількість символів
2) Введені символи
1 2
Рисунок 3.3 – Вигляд буфера
23