Системное программное обеспечение персональных ЭВМ


Пример 5 - часть 2


Для ввода в регистр DL перед вызовом должен быть записан код 0xFF. При этом функция вводит символ без эхо и не обрабатывает Ctrl+Break. Если символа во входном потоке нет, функция устанавливает в 1 флаг Z, иначе - флаг Z сбрасывается, а в регистре AL - тот же выход, что и в предыдущих функциях.
  • Функция 0x0B - проверка символа. Она записывает в регистр AL код 0xFF, если символ есть, или 0 - если символа нет. Эта функция обрабатывает Ctrl+Break и может использоваться для этой обработки.
  • Функция 0x0A - ввод строки. Перед вызовом этой функции надо в памяти сформировать буфер, первый байт которого содержит размер остальной части этого буфера. Адрес буфера передается функции в регистрах DS:DX. После выполнения ввода буфер, начиная с третьего байта содержит символы введенной строки, заканчивающиеся кодом 0x0D. Первый байт буфера - тот же, что и до вызова, а второй содержит длину введенной строки (без учета символа 0x0D).

    Программный пример 7.6 позволяет поэкспериментировать с применением описанных функций DOS.




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