Assembler для начинающих


         

Принтер и асинхронные коммуникации - часть 4


    принят. Проверка появления символа позволит вам продолжить работу с
    ним при условии, что до этого программа выполняла другие действия.
 
      Важно отметить также способ обработки ошибок программ BIOS.
    Используя программы BIOS, очень трудно "подвесить" систему. За
    исключеннием того случая, когда вы ожидаете символ из
    последовательного канала, BIOS всегда возвращают управление
    вызвавшей программе, даже если возникла ошибка внешнего устройства.
    В каждом цикле, который ожидает выполнения некоторого действия
    внешним устройством, BIOS использует счетчик. Например, когда
    программа печати ожидает завершения работы печатающего устройства,
    в регистрах BL и CX находится счетчик. Если значение счетчика в
    этих регистрах становится нулевым до того, как печатающее
    устройство освободится, BIOS возвращает управление с ошибкой
    исчерпания времени. Это означает, что выключение печатающего
    устройства до того, как оно закончило печать, не вызовет
    "зависания" системы. BIOS в конце концов вернет управление
    программе, указывая, что произошла ошибка устройства печати.
 
      В BIOS возникают небольшие трудности в связи с исчерпанием
    времени. Когда в печатающее устройство попадает символ перевода
    страницы 0CH, бумага пропускается до начала очередной страницы.
    Если на текущей странице более 51 строки, печатающее устройство
    будет двигать бумагу долго, и возникнет ошибка по исчерпанию
    времени. То есть можно получить индикацию ошибки даже тогда, когда
    печать работает правильно. Величина, задающая интервал времени, в
    течение которого контролируется печатающее устройство,
    скорректировано во второй версии программы BIOS и устраняет эту
    проблему. Если вы имеете первую версию, вы можете заново повторить
    операцию печати, вызвавшую ошибку исчерпания времени. Получение
    ошибки вновь гарантирует, что это не ошибка программы BIOS.



Содержание  Назад  Вперед