Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XXXII Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 26 мая 2015 г.)

Наука: Математика

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
КОЛИЧЕСТВО ОБРАЗУЮЩИХ МАТРИЦ СИСТЕМАТИЧЕСКОГО ЦИКЛИЧЕСКОГО КОДА (15,11) // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. XXXII междунар. студ. науч.-практ. конф. № 5(31). URL: http://sibac.info/archive/technic/5(31).pdf (дата обращения: 14.05.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

КОЛИЧЕСТВО  ОБРАЗУЮЩИХ  МАТРИЦ  СИСТЕМАТИЧЕСКОГО  ЦИКЛИЧЕСКОГО  КОДА  (15,11)

Хантова  Анна  Дмитриевна

студент  3  курса,  факультет  информатики  СГАУ  им.  академика  С.П.  Королева,  РФ,  г.  Самара

E -mailad.khantova@yandex.ru

Додонова  Наталья  Леонидовна

научный  руководитель,  доцент,  кафедра  прикладной  математики  СГАУ  им.  академика  С.П.  Королева,  РФ,  г.  Самара

 

Введение

Передачей  информации   можно  назвать  своего  рода  физический  процесс,  посредством  которого  осуществляется  перемещение  информации  в  пространстве  и  времени.

Для  того  чтобы  перенести  информацию  в  пространстве  и  времени,  её  представляют  форме  сообщения.  Сообщение  же  всегда  представляется  в  виде  сигнала.  Построение  сигнала  по  определенным  правилам,  обеспечивающим  соответствие  между  сообщением  и  сигналом,  называют  кодированием.

Если  понимать  кодирование  в  широком  смысле,  то  это  преобразование  сообщения  в  сигнал.  Кодирование  в  узком  смысле  —  это  представление  дискретных  сообщений  определенными  сочетаниями  символов. 

Одним  из  наиболее  важных  кодов  является  циклический  код.  Циклические  коды  применяются  при  записи  на  CD  и  DVD,  при  передаче  аудио  и  видео  информации  ,при  использовании  USB-портов  для  обмена  информацией.

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

Построение  циклического  кода.

В  процессе  кодирования  сообщений  длинная  последовательность  обычно  формируется  из  кодовых  комбинаций,  каждая  из  которых  соответствует  одному  знаку.  Число  символов,  из  которых  составлена  такая  кодовая  комбинация,  называется  длиной  кода. 

Пусть  сообщение  состоит  из  k  =  11  символов.  Построим  код,  обнаруживающий  и  исправляющий  одиночные  ошибки. 

Чтобы  исправить  одиночную  ошибку  в  принятой  комбинации  из  n  разрядов,  сначала  нужно  определить,  какой  именно  из  разрядов  был  искажен.  Чтобы  это  сделать,  каждой  одиночной  ошибке  в  определенном  разряде  должен  соответствовать  свой  опознаватель.  В  циклическом  коде  опознавателями  ошибок  служат  остатки  от  деления  многочленов  ошибок  на  образующий  многочлен  кода.  Поэтому  образующий  многочлен  должен  обеспечить  требуемое  число  различных  остатков  при  делении  векторов  ошибок  с  единицей  в  искаженном  разряде.  Наибольшее  число  остатков  дает  неприводимый  многочлен.  При  степени  многочлена  m=n  -k  он  может  дать  2n-k-1  ненулевых  остатков.  Таким  образом,  выполнение  неравенства  (1)  является  необходимым  условием  исправления  любой  одиночной  ошибки. 

 

  (1)

 

Сn  —  это  общее  число  разновидностей  одиночных  ошибок  в  кодовой  комбинации  из  n  символов.  Тогда  степень  образующего  многочлена  кода.

 

  (2)

 

Посчитаем  длину  кода  при  k=11  согласно  формуле  (1).

Возьмем  n=14

214-11>=15

8>=15 

Это  выражение  не  верно.

Возьмем  n=15

215-11>=16

16>=16

Выражение  верно,  значит  n=15,m=15-11=4.

Таким  образом,  мы  получили  код  (15,11).Выберем  образующий  многочлен.  Образующий  многочлен  должен  быть  делителем  многочлена  х  n+1,  то  есть  в  нашем  случае  х15+1. 

Многочлен  х  n+1  можно  представить  в  виде  произведения  всех  неприводимых  многочленов,  степени  которых  являются  делителями  числа  m.

Делители  m=4:  4,2,1.

Для  нахождения  неприводимых  многочленов  нужных  степеней  можно  воспользоваться  таблицей  неприводимых  многочленов:

неприводимые  многочлены  первой  степени:  х+1

неприводимые  многочлены  второй  степени:  х2+х+1

неприводимые  многочлены  четвертой  степени:  х4+х+1;  х43+1;  х432+х+1

х15+1=(  х+1)(  х2+х+1)(  х4+х+1)(  х43+1)(  х432+х+1)

Верность  этого  утверждения  можно  проверить,  перемножив  все  неприводимые  многочлены.  Однако  это  вычисление  весьма  громоздкое,  и  я  не  буду  приводить  его  здесь.

Один  из  сомножителей  степени  m=4  может  быть  принят  за  образующий  многочлен  код. 

Составим  таблицу  остатков  для  трех  неприводимых  многочленов  четвертой  степени

Таблица  1. 

Таблица  остатков  от  деления  на  многочлен

 

 

g 1=  х4+х+1

g 2=  х43+1

g 3=  х432+х+1

E0

000  000  000  000  001

0001

0001

0001

E1

000  000  000  000  010

0010

0010

0010

E2

000  000  000  000  100

0100

0100

0100

E3

000  000  000  001  000

1000

1000

1000

E4

000  000  000  010  000

0011

1001

1111

E5

000  000  000  100  000

0110

1011

0001

E6

000  000  001  000  000

1100

1111

0010

E7

000  000  010  000  000

1011

0111

0100

E8

000  000  100  000  000

0101

1110

1000

E9

000  001  000  000  000

1010

0101

1111

E10

000  010  000  000  000

0111

1010

0001

E11

000  100  000  000  000

1110

1101

0010

E12

001  000  000  000  000

1111

0011

0100

E13

010  000  000  000  000

1101

0110

1000

E14

100  000  000  000  000

1001

1100

1111

 

Остатки  получим,  деля  на  g(x)  комбинацию  в  виде  единицы  с  рядом  нулей  и  выписывая  все  промежуточные  остатки.

1)  g1=  х4+х+1

Этому  многочлену  соответствует  кодовая  комбинация  10011

 

Таким  образом,  многочлен  g1=  х4+х+1образует  15  остатков,  а  значит  может  быть  выбран  в  качестве  образующего.

2)  g2=  х43+1

 

Таким  образом,  многочлен  g2=  х43+1  образует  15  остатков,  а  значит  может  быть  выбран  в  качестве  образующего.

3)  g3=  х432+х+1

 

Таким  образом,  многочлен  g3=  х432+х+1

образует  всего  5  остатков,  а  значит  не  может  быть  выбран  в  качестве  образующего.

Составим  образующие  матрицы  для  каждого  из  образующих  многочленов. 

Образующей  называется  матрица,  которая  состоит  k  линейно  независимых  строк.  Каждая  из  этих  строк  является  разрешенной  кодовой  комбинацией.  Все  остальные  разрешенные  комбинации  могут  быть  представлены  в  виде  линейной  комбинации  строк  образующей  матрицы.

Если  код  должен  быть  систематическим,  то  образующая  матрица  представляется  в  виде  двух  блоков:  единичной  матрицы  и  матрицы-дополнения.  Строки  матрицы-дополнения  определяются  путем  вычисления  многочленов  r(x)  для  каждой  строки,  то  есть  делением  на  g(x).

 

(3)

 

Для  составления  образующих  матриц  воспользуемся  результатами  таблицы  1.

Таблица  2.

Образующая  матрица  для  многочлена  g 1=  х4+х+1

1

0

0

0

0

0

0

0

0

0

0

0

0

1

1

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

1

0

0

0

0

0

0

0

0

1

1

0

0

0

0

0

1

0

0

0

0

0

0

0

1

0

1

1

0

0

0

0

1

0

0

0

0

0

0

0

1

0

1

0

0

0

0

0

1

0

0

0

0

0

1

0

1

0

0

0

0

0

0

0

1

0

0

0

0

0

1

1

1

0

0

0

0

0

0

0

1

0

0

0

1

1

1

0

0

0

0

0

0

0

0

0

1

0

0

1

1

1

1

0

0

0

0

0

0

0

0

0

1

0

1

1

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

0

1

 

Таблица  3.

Образующая  матрица  для  многочлена  g 2=  х43+1

1

0

0

0

0

0

0

0

0

0

0

1

0

0

1

0

1

0

0

0

0

0

0

0

0

0

1

0

1

1

0

0

1

0

0

0

0

0

0

0

0

1

1

1

1

0

0

0

1

0

0

0

0

0

0

0

0

1

1

1

0

0

0

0

1

0

0

0

0

0

0

1

1

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

1

0

0

0

0

0

0

1

0

0

0

0

1

1

0

1

0

0

0

0

0

0

0

1

0

0

0

0

0

1

1

0

0

0

0

0

0

0

0

1

0

0

0

1

1

0

0

0

0

0

0

0

0

0

0

1

0

1

1

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

0

0

 

Подсчет  количества  матриц.

Перестановка  строк  (столбцов)  образующей  матрицы  приводит  к  эквивалентному  коду  с  той  же  корректирующей  способностью.

Однако,  поскольку  код  должен  оставаться  систематическим,  мы  можем  переставлять  только  последние  m  столбцов.

То  есть,  надо  посчитать,  сколько  всего  существует  перестановок  из  m  элементов.  Это  можно  сделать  по  формуле

 

Pn   =m·(m−1)·(m−2)...3·2·1  =  m!  (4)

 

4!=4*3*2*1=24

Значит,  для  каждого  образующего  многочлена  мы  можем  получить  24  образующих  матриц  систематического  кода.

 

Список  литературы:

1.Дмитриев  В.И.  Прикладная  теория  информации.  Учебник  для  студентов  ВУЗов  по  специальности  «Автоматизированные  системы  обработки  информации  и  управления».  М.:  Высшая  школа,  1989  —  320  с.

2.Евсеев  А.И  Передача  информации  [Электронный  ресурс]  —  Режим  доступа.  —  URL:  http://peredacha-informacii.ru/   (дата  обращения  30.04.2015).
3.Прохоров  В.С.  ТЕОРИЯ  ИНФОРМАЦИИ  Лекции  [Электронный  ресурс]  —  Режим  доступа.  —  URL:  http://profbeckman.narod.ru/Informat.files/Teorinf.pdf   (дата  обращения  28.04.2015).
4.Фурсов  В.А.  Лекции  по  теории  информации:  Учеб.  пособие  под  редакцией  Н.А.  Кузнецова  Самара:  Изд-во  СГАУ,2006.  —  148  с.

Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.