Мы с Катей переглянулись, а отец тем временем говорил:
— Мы введём несколько служебных символов: «Запрос на начало передачи», «Ответ о готовности приёма» и «Окончание передачи». Подумайте и ответьте мне, для чего нужны эти символы.
Я сказал:
— С их помощью мы сможем подзывать друг друга к устройству и сообщать, что готовы принять телеграмму. И в конце передачи сообщать, что телеграмма закончена.
Отец согласился, а потом обратился к Кате:
— Екатерина, ты можешь придумать, как будут выглядеть эти три служебных символа?
— Думаю, что они должны состоять из последовательности сигналов, которые непохожи на наши биты «0» и «1».
— Почему?
— Так будет проще понять, что это служебная информация, а не текст телеграммы.
— Здорово, молодец! Это, в общем, необязательно: в компьютерных системах используются только биты и ничего другого. Но мы действительно можем позволить себе применить другие символы, чтобы проще отличать. Поэтому предлагаю такую схему…
И папа записал на листке рядом с таблицей букв три строки.
Для запроса на начало передачи — три длинных звонка.
Для указания готовности к приёму — один длинный звонок.
Для окончания передачи — два длинных звонка.
Длительность каждого из этих звонков была в два раза больше, чем длительность бита «1».
Затем он сказал:
— Определим алгоритм. Пусть Кирилл хочет передать Екатерине сообщение. Он посылает служебный символ «запрос на передачу», после чего ждёт ответа. Если ответ не пришёл в течение минуты, то Кирилл может послать запрос ещё раз, а потом ещё, пока не получит ответ, либо заняться своими делами и снова послать запрос через некоторое время. Если же он получает сигнал готовности к приёму, это означает, что Екатерина готова записывать. После этого Кирилл передаёт своё предварительно закодированное сообщение, а после него ставит символ окончания передачи. Далее Екатерина может выбрать из двух вариантов. Она может закончить сессию приёма-передачи, послав в ответ символ окончания. Это значит, что у Екатерины нет ответа, и передача закончена. Или она может передать свой закодированный ответ и закончить его символом окончания передачи. И тогда уже Кирилл получает возможность выбирать, заканчивать ли передачу. Если да, то он передаёт символ окончания. Если нет, то пишет ответ и передаёт слово Екатерине. И так далее, до конца.
Рассказав всё это, папа нарисовал схему:
— Так выглядит формальное представление алгоритма в специальной нотации, которая позволяет описывать взаимодействие нескольких лиц. Запоминайте эти хорошие слова: «алгоритм», «нотация» и другие. Потом они помогут вам понимать многие важные вещи.