Научная литература
booksshare.net -> Добавить материал -> Физика -> Аветисян Р.Д. -> "Теоретические основы информатики" -> 19

Теоретические основы информатики - Аветисян Р.Д.

Аветисян Р.Д., Аветисян Д.О. Теоретические основы информатики — Телеком , 2003. — 170 c.
Скачать (прямая ссылка): teoriticheskieosnoviinformatiki2003.pdf
Предыдущая << 1 .. 13 14 15 16 17 18 < 19 > 20 21 22 23 24 25 .. 64 >> Следующая


Пусть нам предстоит закодировать текст, записанный на некотором языке, таком, что число букв в алфавите этого языка п = 2'" (т целое число), а появление в тексте тех или иных букв алфавита равновероятно и не зависит от того, какие буквы им предшествовали. Тогда имеем

p(i) = p(j) = -\ W = Wl=Iogwz = H/. п

Условия задачи таковы, что достичь оптимального кодирования можно самым незатейливым методом кодирования - побуквенным кодированием с постоянной длиной (/ = т) кодовых наборов. При этом, однако, мы оказались бы лишенными какой-либо возможности обнаруживать, а тем более исправлять ошибки. Чтобы такая возможность появилась, необходимо отказаться от оптимальности кода, "раскошелиться" на несколько дополнительных двоичных символов на букву, т.е. умышленно ввести некоторую избыточность, которая смогла бы помочь нам обнаружить или исправить ошибки. Необходимое число дополнительно вводимых двоичных символов на одну букву обозначим через х, и тогда длина кодового набора станет равной / = т + д\ Примем, что в результате помех (случайных или преднамеренных) лишь один или вовсе никакой из т + х двоичных символов может превращаться из единицы в нуль или, наоборот, из нуля в единицу. Примем далее, что 1 + т + X событий, заключающиеся в том, что ошибка вообще не произойдет, произойдет на уровне первого, второго, ..., (т + + л)-го символа кодового набора, равновероятны. Энтропию угадывания того, какое именно из этих 1 + т + х событий будет иметь место, в силу равновероятности этих событий можно определить по формуле (2.3а), т.е. она получается равной W = Iog2 (1 + т + х) бит. Таким образом, для обнаружения самого факта наличия одиночной ошибки и установления ее позиции необходимо заполучить информацию в количестве не менее W = Iog2 (1 + т + л) бит. Источником этой

47

ГЛАВА 1 Рис. 2.4. Характер зависимости наименьшего допустимого значения параметра х от аргумента т (сплошная линия) Характер зависимости параметра (6/Icp.). 100% от аргумента т (пунктирная линия)

информации служат лишь дополнительно введенные л двоичных символов, так как остальные т символов из-за оптимальности кодирования до предела заняты описанием самого текста. Выше уже говорилось о том, что л двоичных символов в лучшем случае могут содержать информацию в количестве .v бит. Таким образом, при конструировании кода, обнаруживающего и исправляющего одиночную ошибку, следует учесть, что этого можно добиться лишь при значениях л. удовлетворяющих неравенству

JcSHog2O + т + х), (2.10)

или

2Л-х-is=/«. (2.10а)

На рис. 2.4 приведена кривая, устанавливающая зависимость нижней границы допустимых значений л от т.

Р. Хэммпнг разработал конкретную конструкцию кода, которая обеспечивает весьма элегантное обнаружение и исправление одиночных ошибок при минимально возможном числе дополнительно вводимых двоичных символов, т.е. при знаке равенства в (2.10) [3]. Проследим за построением этого кода, когда т = 4. Из рис. 2.4 следует, что при этом допустимое значение х равно трем, т.е. при числе основных (информационных) двоичных символов т = 4, число дополнительно введенных, т.е. контрольных символов должно быть не менее трех. Примем, что нам удалось "обойтись" именно тремя дополнительными символами, т.е. удалось сконструировать такой код, при котором каждый из дополнительно введенных грех символов дает нам максимально возможное количество информации, т.е. по одному биту. Тогда в расширенном ко-

48 довом наборе окажутся семь двоичных символов:

?l?2?3?4 ?5?6?7

(информационные символы) (контрольные символы)

Поскольку символы P1 ?4 заняты кодированием собственно текста, то управлять их значениями нам не дано. Что же касается символов ?5 •+• ?7, то они предназначены именно для обнаружения и исправления ошибок и поэтому их значения мы можем увязать со значениями информационных символов произвольными тремя функциями от аргументов P1-S-P4

P5=P5(P1^P4), (2.11)

P6=P6(P1^P4), (2.12)

P7=P7(P1^P4) (2.13)

такими, чтобы в последующем с помощью трех других функций от аргументов P1 -h P7

е0 = е0 (P1 + P7), (2.14)

*,=*,(&+?7), (2.15)

=C2(P1^P7) (2.16)

определить значения е(), е\, е2, содержащие информацию о том, произошла ли ошибка вообще и если да, то на уровне какого именно из семи символов. Очевидно, имеется множество различных вариантов при выборе функций (2.11) -н (2.16). Р. Хэмминг поставил перед собой задачу выбора именно такой совокупности функций (2.11) -н (2.16), чтобы набор значений Є2ЄІЄ0 оказался двоичной записью позиции, где произошла ошибка. В случае же, когда ошибка не имела места, набор значений е2е\е{) должен указать на "нулевую" позицию, т.е. на несуществующий СИМВОЛ Р(). Из двоичной записи этих позиций

ООО (0) 100 (4)

00 1 (1) 10 1 (5)

0 10 (2) 110 (6)

0 11 (3) 111 (7)

легко уследить, что значение <?0 "несет ответственность" за позиции ?b Рз, P5 и P7 и поэтому в качестве функции (2.14) берется зависимость

<?„ = P1+ Рз + P5 + P7 mod 2. (2.14а)

Аналогично, обращая внимание на то, что значения el и е2 отвеча-
Предыдущая << 1 .. 13 14 15 16 17 18 < 19 > 20 21 22 23 24 25 .. 64 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed