
- •Код с проверкой на четность.
- •1.1 Нахождение корректирующих кодов.
- •1.2 Нахождение хэмминговых и кодовых расстояний.
- •Нахождение синдрома ошибки.
- •Код с повторением без инверсии.
- •2.1. Нахождение корректирующих кодов.
- •2.2.Нахождение хэмминговых и кодовых расстояний.
- •2.3.Нахождение синдрома ошибки.
- •Код с повторением и инверсией.
- •3.1. Нахождение корректирующих кодов.
- •3.2. Нахождение хэмминговых и кодовых расстояний.
- •3.3.Нахождение синдрома ошибки.
- •4.1. Нахождение корректирующих кодов.
- •4.2.Нахождение хэмминговых и кодовых расстояний.
- •4.3.Нахождение синдрома ошибки.
- •Код с постоянным весом.
- •5.1. Нахождение корректирующих кодов.
- •5.2.Нахождение хэмминговых и кодовых расстояний.
- •5.3.Нахождение синдрома ошибки.
- •Линейные коды.
- •Код Хэмминга не систематический.
- •6.1. Нахождение корректирующих кодов.
- •6.3.Нахождение синдрома ошибки.
- •7.1.Нахождение корректирующих кодов.
- •7.2.Нахождение хэмминговых и кодовых расстояний.
- •7.3.Нахождение синдрома ошибки.
Код с постоянным весом.
Этот код является
неразделимым, не систематическим,
циклическим, нелинейным кодом длины n.
Код имеет постоянное число единиц l
и нулей m
в кодовых комбинациях,
характеризуется
эквивалентным числом kэ
информационных и rэ
проверочных символов. kэ
+ rэ
= n.
N
– количество комбинаций кода. Длина
кода n
определяется путем подбора при
использовании соотношения
.
Обычно,
.
В этом случае имеем наибольшее число
сочетаний. Код имеет d
= 2 и применяется
для обнаружения ошибки.
Процедура построения: используя соотношение N ≤ Cnl . Методом подбора для заданного N определяем n и l . Из всех комбинаций N0=2n выбираем комбинации, содержащие l единиц. Затем строим кодовые комбинации – Vi=a1a2a3…an.
Корректирующая
способность кода: код обнаруживает все
ошибки за исключением одновременного
перехода 1 в 0 и такого же количества
переходов 0 в 1. В этом случае число 1
остается равным
и такие
ошибки не обнаруживаются. Процедура
обнаружения состоит в подсчете числа
единиц в кодовой комбинации. Результаты
проверки характеризуются одним символом
синдрома S =
S1.
S1
= 0, если
число единиц nℓ
в принятой кодовой комбинации равно l
(nl
= l),
то считается, что ошибки нет или ошибка
есть, но она не обнаруживается. Здесь
осуществляется обычно сложение (не по
модулю два), nl
= a1*+
a2*
+ a3*
+…+ an*,
a1*,
a2*
…..
an*
- символы
искаженной кодовой комбинации. S1
=1, если
число единиц nℓ
в принятой
кодовой комбинации неравно
,
то ошибка есть и она обнаруживается.
Относительная скорость передачи q
и избыточность кода И
определяются формулами:
,
И
.
Вероятность появления ошибочной комбинации на выходе устройства обнаружения ошибок при одноразовой передаче комбинации по двоичному симметричному каналу (ДСК) равна вероятности искажения одной единицы и одного нуля, дух единиц и двух нулей и т.д. Такие искажения не обнаруживаются.
где q = 1 – p – вероятность правильного приема одного символа, p – вероятность искажения одного символа.
5.1. Нахождение корректирующих кодов.
Комбинации |
Задействованные кнопки |
Корректирующий код а1 а2 а3 а4 а5 |
V1 |
k1, k2 |
1 1 0 0 0 |
V2 |
k1, k3 |
1 0 1 0 0 |
V3 |
k1, k4 |
1 0 0 1 0 |
V4 |
k 1, k5 |
1 0 0 0 1 |
V5 |
k 2, k3 |
0 1 1 0 0 |
V6 |
k 3, k4 |
0 0 1 1 0 |
V7 |
k 2, k5 |
0 1 0 0 1 |
V8 |
k 3, k4 |
0 0 1 1 0 |
V9 |
k 3, k5 |
0 0 1 0 1 |
V10 |
k 4, k5 |
0 0 0 1 1 |
5.2.Нахождение хэмминговых и кодовых расстояний.
Хэмминговы расстояния находятся для двух кодовых комбинаций.
(подробное описание нахождения Хэмминговых расстояний дано в пункте1.2 стр.2)
Комбинации |
Хэммингово расстояние dij |
||
Vi |
Vj |
Vij |
|
11000 |
10100 |
01100 |
2 |
11000 |
10010 |
01010 |
2 |
11000 |
10001 |
01001 |
2 |
11000 |
01100 |
10100 |
2 |
11000 |
00110 |
11110 |
4 |
11000 |
01001 |
10001 |
2 |
11000 |
00110 |
11110 |
4 |
11000 |
00101 |
11101 |
4 |
11000 |
00011 |
11011 |
4 |
10100 |
10010 |
00110 |
2 |
10100 |
10001 |
00101 |
2 |
10100 |
01100 |
11000 |
2 |
10100 |
00110 |
10010 |
2 |
10100 |
01001 |
11101 |
4 |
10100 |
00110 |
10010 |
2 |
10100 |
00101 |
10001 |
2 |
10100 |
00011 |
10111 |
4 |
10010 |
10001 |
00011 |
2 |
10010 |
01100 |
11010 |
3 |
10010 |
00110 |
10100 |
2 |
10010 |
01001 |
11011 |
4 |
10010 |
00110 |
10100 |
2 |
10010 |
00101 |
10111 |
4 |
10010 |
00011 |
10001 |
2 |
10001 |
01100 |
11101 |
4 |
10001 |
00110 |
10111 |
4 |
10001 |
01001 |
11000 |
2 |
10001 |
00110 |
10111 |
4 |
10001 |
00101 |
10100 |
2 |
10001 |
00011 |
10010 |
2 |
01100 |
01001 |
00101 |
2 |
01100 |
00110 |
01010 |
2 |
01100 |
00101 |
01001 |
2 |
01100 |
00011 |
01111 |
4 |
01001 |
00110 |
01111 |
4 |
01001 |
00101 |
01100 |
2 |
01001 |
00011 |
01010 |
2 |
00110 |
00101 |
00011 |
2 |
00110 |
00011 |
00101 |
2 |
00101 |
00011 |
00110 |
2 |
Для нахождения кодового расстояния необходимо найти минимальное хэмминговое расстояние из всех хэмминговых расстояний.
Кодовое расстояние d = 2