Передача данных
Получение данных
Программа обязана постоянно следить и проверять регистр статуса порта (линии). Проверяется при этом нулевой бит.
Если он равен «1», программа должна немедленно читать байт из регистра приема (иначе он будет затерт следующей принимаемой информацией). Если бит равен «0», то байт не принят портом, и процессор должен выполнять следующую команду программы.
При передаче байт данных загружается в регистр хранения, затем он в параллельном коде передается в регистр сдвига, из которого последовательно выводится в канал или модем с установленной при инициализации скоростью.
Чтобы узнать, свободен регистр хранения или нет, следует проверить 5-й бит в регистре статуса линии. Если он равен «1», то в регистр хранения можно загрузить очередной байт. Если -- «0», то следует подождать освобождения регистра хранения.
Передача байта происходит автоматически.
Алгоритм работы программы приема /передачи без прерываний
Программа непрерывно следит за состоянием регистра статуса линии и выполняет только функции по приему и передаче байт. Источником информации является клавиатура компьютера. Программа моделирует режим работы телеграфа.