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



         

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


    параметрах линии связи. Детали кода инициализации, передаваемого
    программе с помощью регистра AL, показаны в прологе к программе
    обслуживания последовательного канала.
 
      Другие функции BIOS поддержки печати и последовательного канала
    дают возможность записывать (для последовательной связи также
    читать) данные в устройство. Особенно важно то, что ввод-вывод
    делается синхронно. Это означает, что когда программа передает
    управление BIOS, чтобы она выполнила нужную функцию, управление не
    возвращается до тех пор, пока работа не будет завершена. Когда
    символ печатается, управление остается в программе печати до тех
    пор, пока она не передаст символ в устройство печати. Если
    печатающее устройство занято, BIOS образует цикл, ожидая конца
    работы печатающего устройства. Когда символ передается по каналу
    асинхронной связи, программа BIOS ждет, пока аппаратура разрешит
    передачу следующего символа. Аналогично программа приема
    последовательного канала ждет до тех пор, пока адаптер не принял
    символ. Если внешнее устройство никогда не пришлет символ,
    программа, вызвавшая функцию BIOS, никогда не получит управление
    назад.
 
      По этой причине обе программы содержат функцию состояния. Она
    позволяет программе решить, может ли BIOS выполнить операцию в
    текущий момент времени. Функция состояния печати сообщает, занято
    ли печатающее устройство в данный момент. Программа состояния
    последовательного канала показывает, может ли символ быть передан
    или принят в данный момент. Программа может использовать эти
    программы состояния, чтобы определить, можно ли непосредственно
    выполнить операцию. Вы можете решить сделать в вашей программе
    что-либо еще в то время, пока операция ввода-вывода не может
    выполняться. Если вы проверяете появление некоторого внешнего
    события, например приема символа адаптером, программа состояния
    позволит не останавливать программу до тех пор, пока символ не



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