Новости Словари Конкурсы Бесплатные SMS Знакомства Подари звезду
В нашей
базе уже
59876
рефератов!
Логин

Пароль

Кодовые композиции на базе циклических кодов.

Кодовые композиции на базе циклических кодов инструкция
Документ содержит описание программы, которая строит кодовые композиции на базе циклических кодов. Программа кодирует и деко-дирует информационные слова. Иммитируется работа источника, переда-ющего информационное слово, кодировщика, кодирующего данное слово, канала связи и декодировщика, обнаруживающего и исправляющего ошибки в информационном полиноме. Программа работает по принципу приёмник – источник, так ,как это реализовано в устройствах, передающих информацию либо обыкновенных приводах для внешних носителей в PC.
СОДЕРЖАНИЕ
1. Введение
2. Постановка задачки
3. Операции над циклическими кодами
4. Принцип построения циклических кодов
4.1. Получение кодовой композиции добавлением остатка R(x)
4.2. Получение кодовой композиции умножением на образующий
полином
5. Разработка схемы метода
6. Разработка текста программы
7. Результаты работы программы
Литература
Приложение № 1
Приложение № 2

§ 1 Введение
Код ,в котором кодовая композиция, полученная методом циклического сдвига разрешенной кодовой композиции является также разрешенной кодовой композицией именуется циклическим ( полиномиальным, кодом с циклическими избыточными проверками-ЦИП).
Сдвиг осуществляется справа налево, при этом крайний левый знак переносится в конец композиции.
Циклический код относится к линейным, блочным, корректирующим, равномерным кодам.
В циклических кодах кодовые композиции представляются в виде многочленов, что дозволяет дозволяет свести деяния над кодовыми комбинациями к действием над многочленами (используя аппарат полиномиальной алгебры).
Циклические коды являются разновидностью систематических кодов
и поэтому владеют всеми их качествами. Сначало они были сделаны для упрощения схем кодировки и декодирования. Их эффек-
тивность при обнаружении и исправлении ошибок обеспечила им широеое применение на практике.
Циклические коды употребляются в ЭВМ при последовательной передаче данных .
( 2 Постановка задачки
выстроить циклический код для передачи 31 разрядной кодовой композиции с исправлением однократной ошибки ( n=31 ,s=1) двумя
методами.
Показать процесс обнаружения и исправления однократной ошибки в передаваемой кодовой композиции. Составить программу, реализующую метод кодировки, декодирования и исправления ошибки при передаче данных с внедрением циклического кода.
( 3 Операции над циклическими кодами
1. Сдвиг справа налево осуществляется методом умножения полинома на x:
G(x)=x4+x2+1 ? 0010101;
G(x)?x=x5+x3+x ? 0101010.
2. Операции сложения и вычитания выполняются по модулю 2 .
Они являются эквивалентними и ассоциативными :
G1(x)+G2(x)=>G3(x);
G1(x) -G2(x)=>G3(x);
G2(x)+G1(x)=>G3(x);
Пример:
G1(x)= x5 +x3+x;
G2(x)=x4 +x3 +1;
G3(x)=G1(x) ? G2(x) = x5 +x4+x+1.
3. Операция деления является обыденным делением многочленов, лишь заместо вычитания употребляется сложеное по модулю 2 :
G1(x)=x6+x4+x3 ;
G2(x)=x3+x2+1 .

x6+x4+x3 x3+x2+1
? x6+x5+x3 x3 +x2
x5 + x4
? x5 + x4 +x2
x2
то же в двоичном коде:

1011000 1101
?1101 1100
1100
? 1101
100
Все операции просто реализуются аппаратно на регистрах сдвига с обратными связям.
( 4 Принцип построения циклических кодов
мысль построения циклических кодов базируется на использовании неприводимых многочленов. Неприводимым именуется много-член,который не может бять представлен в виде произведения многочленов низших степеней ,т.Е. Таковой многочлен делиться лишь на самого себя либо на единицу и не делиться ни на какой другой многочлен. На таковой многочлен делиться без остатка двучлен xn+1.Неприводимые многочлены в теории циклических кодов играются роль образующих полиномов.
чтоб понять принцип построения циклического кода,умножаем комбинацию обычного k-значного кода Q(x) на одночлен xr ,а потом делина образующий полином P(x) , степень которого равна r. В итоге умножения Q(x) на xr степень каждого одночлена, входящего в Q(x), повы-шается на r. При делении произведения xrQ(x) на образующий полином выходит частное C(x) таковой же степени, как и Q(x).итог можно представить в вид
Q(x) xr R(x)
???? = C(x) + ??? , (1)
P(x) P(x)
где R(x) - остаток от деления Q(x) xr на P(x).
Частное C(x) имеет такую же степень, как и кодовая композиция Q(x) обычного кода, поэтому C(x) является кодовой композицией этого же
постого k-значного кода. Следует заметить,что степень остатка не может быть больше степени образующего полинома, т.Е. Его наивысшая степень может быть равна (r-1). Следовательно, наибольшее число разрядов остатка R(x) не превосходит числа r.
Умножая обе части равенства (1) на P(x) и произведя некие перестановки получаем :
F(x) = C(x) P(x) = Q(x) xr + R(x) (2)
таковым образом, кодовая композиция циклического n-значного кода может
быть получена двумя методами:
1) умножение кодовой композиции Q(x) обычного кода на одночлен xr
и добавление к этому произведению остатка R(x) , полученного в итоге деления произведения Q(x) xr на образующий полином P(x);
2) умножения кодовой композиции C(x) обычного k-значного на образующий полином P(x).
При построении циклических кодов первым методом расроложение информационных знаков во всех композициях строго упорядочено -
они занимают k старших разрядов композиции, а другие (n-k) разрядов
отводятся под контрольные.
При втором методе образования циклических кодов информа-
ционные и контрольные знаки в композициях циклического кода не разделены друг от друга, что затрудняет процесс декодирования.


( 4.1 Получение кодовой композиции добавлением остатка R(x)
выстроить циклический код для передачи 31 разрядной кодовой
композиции с исправлением однократной ошибки ( n=31, s=1)
Решение.
1. Определим число контрольных разрядов - m :
m = log2 (n+1) = log2 (31+1) = 5.
2. Определим количество информационных разрядов k :
k = n-m = 26,
т.Е получили (31, 26 ) - код .
3. Строим информационный полином,сответствующий информационному слову длиной k-бит:
G(x)=00000000000000000000000101= x2 +1.
4. Осуществлям сдвиг кода влево на m=n-k=5 разрядов т.Е полином G(x) множится на xm :
xm G(x)= (x2+1) x5= x7+ x5 =0000000000000000000000010100000.
5. Выбирается образующий многочлен-P(x) по таблице неприводимых многочленов. Для исправления одиночной ошибки (d0=3) образующий полином P(x) обязан быть степени m=n-k=5 и количеством ненулевых членов не меньше малого кодового расстояния d0 =3. Исходя из
этого образуюший полином P(x) равен :
P(x)= x5 + x4 +x3 +x 2 +1 = 111101.
6. Определим остаток R(x) от деления G(x)?x m на образующий по-
лином P(x)
x7+ x5 x5 + x4 +x3 +x 2 +1 10100000 111101
x7 + x6 +x5 +x 4 +x2 x2 +x +1 111101 111
x6 + x4 +x2 101010
x6 + x5 +x4 +x 3 +x 111101
x5 + x3 +x2 +x 101110
x5 + x4 +x3 +x 2 +1 111101
x4 +x +1 10011
Остаток R(x)= x4+x+1 =10011.
7. Строим передаваемый кодовый пролином F(x) :
F(x)=xm G(x)?R(x)= x7+ x5+ x4+x+1 =0000000000000000000000010110011.
8. Пусть в принятом сообщении произошла ошибка в тридцать первом разряде,при зтом принято
Умар.Ш. был тут !!!!!
 
давайте изгоним мат !!!
 
ДОБРОЙ НОЧИ ОТ Ъ
ЛОКИ ИНО
 
ДМК МЭ
 
где инфааа?