Шрифт:
Сообщения в
двоичном коде
Добавочный
знак
Сообщения с
добавочным знаком
00
0
000
01
1
011
10
1
101
11
0
110
В одних случаях добавляется 0, в других - 1. В результате в любом сообщении (см. 3-ю колонку) будет содержаться четное число единиц.
В какой бы момент ни появилась теперь помеха, она не сможет создать ложного числа. Она может превратить сообщение 101 в 111 или ООО в 100, но ни одна из этих ложных комбинаций не содержится в нашей таблице, потому что помеха, добавив знак 1, создала нечетное число единиц. Значит, приняв такое сообщение, мы сразу обнаружим, что оно содержит ошибку, которую породил посторонний сигнал.
Однако это лишь одна сторона вопроса. Ведь, обнаружив ложное число 111, мы еще не можем установить истину, так как в этом случае могло передаваться и 011, и 110, и 101. Оказывается, можно создать и такие коды, которые способны исправить самих себя. Этот код выглядит так:
Передаваемое
число
Обозначение
кодом
1
00 000
2
01 110
3
10 101
4
11 011
Код построен таким образом, что любые две комбинации отличаются друг от друга не менее чем тремя знаками (например, у 10 101 и 11 011 отличаются 2-й, 3-й и 4-й знаки). Пусть пришло сообщение: 10 111. Истинно оно или ложно? Автомат начинает «оценивать» этот сигнал. В его памяти хранятся все истинные комбинации:
00
000
(I)
01
110
(II)
10
101
(III)
11
011
(IV)
Он начинает по очереди извлекать их из «памяти» и сравнивать с принятым числом 10 111. Может быть, было передано 00 000? Нет, сходства здесь нет никакого: четыре знака принятого сигнала не совпадают с этим числом. Автомат продолжает действовать.
II комбинация (01 110) уже больше похожа на принятую, но и здесь не совпадают целых 3 знака. Зато III комбинация отличается только одним знаком: в памяти есть комбинация 10 101, а принято 10 111. Автомат делает вывод: передавалось число 10 101, но в момент передачи 4-го знака появилась помеха, и потому вместо 0 в приемник пришла лишняя единица. Такой код не требует повторений: автомат однажды «запомнил» истину и ни одного сообщения не принимает «на веру».
Он восстановит истинное значение в том случае, если в переданном сообщении есть один ложный знак. Но ведь могло случиться и так, что в момент передачи сигнала помеха возникла дважды?
Могло. Но вероятность такой помехи слишком мала. А если надо избавить себя даже от этих редких случайностей, придется прибегнуть к еще более сложному коду, который даже в этом случае поможет автомату правильно прочитать сигнал. Но ничего не дается даром: чем больше надежность «упаковки», тем больше импульсов содержит в себе каждый переданный сигнал.
В чужом городе
Представьте себе на минуту такую картину: только что в космос запущен спутник, на борту которого установлена аппаратура, изготовленная заводами Нового Города по нашим схемам и чертежам. Мы стоим у приемника наземной станции и с замиранием сердца ждем, когда появится первый сигнал. Пять, десять минут проходят в томительном ожидании, а на экране вместо четко очерченных импульсов видны лишь нескончаемые хаотичные всплески. А в наушниках вместо позывных сигналов со спутника раздается шорох и треск. В чем же дело? Ведь мы учли опасность помехи и применили специальный код. Этот код должен помочь нам отличить ложные импульсы от настоящих. Но теперь мы убеждаемся, что и эти меры не избавили нас от помехи: она оказалась настолько сильной, что вообще уничтожила импульсы, «утопив» их в шумах. Как видно, нет от нее избавленья...
Но инженер, знакомый с теорией информации, рассуждает иначе. Он знает, что в хаосе посторонних сигналов скрываются все нужные сообщения, надо лишь найти способ выделить их из шумов.
Легко сказать «выделить»! А как это сделать? На каждый полезный импульс приходятся сотни случайных всплесков; извлекать его, очевидно, не легче, чем искать в амбаре с пшеницей рисовое зерно.
И все же его извлекают. У сигнала есть свойство, отличающее его от случайных помех: он имеет регулярный характер. А события, повторяющиеся регулярно, всегда выступают на первый план.
Представьте себе, что вы первый раз идете по улице незнакомого города. Вам здесь все интересно: архитектура зданий, одежда людей, модели автомашин. Время вас не стесняет, и вы идете безо всякой конкретной цели, как говорится, куда глаза глядят.
Вечером вы вернетесь в гостиницу утомленный всем, что вам довелось увидеть, и будете спать крепким сном. А если утром сосед вас спросит, где были вы накануне, в каком районе есть такая-то площадь, где находятся театры или музеи и каким транспортом можно до них добраться, вы не сможете толково ответить ни на один подобный вопрос. И вот что характерно: в ответ на эти вопросы в вашей памяти всплывут и площади, и музеи, и театры; вы вспомните, что встречали именно те названия, о которых спрашивал сосед. Но где именно? Что встречалось раньше, что позже? Что находится близко, а что далеко? Все впечатления первого дня превратились в пестрый хаос деталей, из которого трудно извлечь именно то, о чем спрашивает сосед.