Коды Хэмминга. Создание проверочной матрицы кода Хэмминга. Декодирование кодового слова кода Хэминга

Страницы работы

Содержание работы

1. Коды Хэмминга:

1.1 Создание проверочной матрицы кода Хэмминга для поля GF(2)^k

используется процедура hamming_check_binary(k);

где k-количество строк

> hamming_check_binary(3);

1.2 Создание проверочной матрицы кода Хэмминга для поля GF(p)^k

используется процедура hamming_check(k,p);

и hamming_check_nonstandard(k,p) - перевернутая матица где k-количество строк

p-число элементов поля

>

> H:=hamming_check(3,2);

> hamming_check_nonstandard(3,2);

>

>

1.3 Создание порождающей матрицы кода Хэмминга для поля GF(p)^k

используется процедура hamming_generator(k,p);

где p^k-k-1 - количество строк(k= количестово столбцов-количество строк);

p-число элементов поля

>

>  G3:=hamming_generator(3,2);

1.4 Нахождение дуальных кодов  используется процедура dual_code_list(G,p);

где G - порождающая(генераторная) матрица ;

p-число элементов поля

> dual_code_list(G3,2);

1.5 Нахождение всех кодовых словых в порождающей матрице используется процедура code_list(G,p);

где G - порождающая(генераторная) матрица ;

p-число элементов поля

> C:=code_list(G3,2);

Сортировка  кодовых слов в соответствии с их весом

> C:=sort(C,weight_order);

>

1.6 Нахождение количества кодовых слов с одинаковым весом используется процедура weight_enumerator_vector(G,p);

где G - порождающая(генераторная) матрица ;

p-число элементов поля

> weight_enumerator_vector(G3,2);

это значит что 7 кодовых слов имеют вес 3 и 7-4

1.7 Нахождение минимального кодового расстояния используется процедура min_distance(G,p);

где G - порождающая(генераторная) матрица ;

p-число элементов поля

> min_distance(G3,2);

1.8 Умножение матрицы на вектор используется процедура matrix_times_vector_modp(H,v,2);

где G -  матрица ;

v-вектор

p-число элементов поля

> v:=[1,1,1,0,0,0,0];

matrix_times_vector_modp(H,v,2);

1.9 Декодирование кодового слова кода Хэмминга для поля GF(2) используется процедура decode_hamming_binary(v);

где v-декодируемое слово;

> decode_hamming_binary(v);

1.10 Декодирование кодового слова кода Хэминга для поля GF(p) используется процедура decode_hamming(v,p);

где v-декодируемое слово;

p- количество элементов поля

> decode_hamming(v,2);

1.11 Декодирование кодового слова для любого кода для поля GF(p) используется процедура decode(v,G,p,d);

где v-декодируемое слово;

G-порждающая матрица

p- количество элементов поля

d- кодовое расстояние

> decode(v,G3,2,3);

Похожие материалы

Информация о работе