813

Особенности использование кодов

Практическая работа

Информатика, кибернетика и программирование

Создать алфавит А, используемый при форматировании Ф.И.О., которые будут являться исходным текстом. Построить прямые двоичные коды постоянной длины и закодировать ими исходный текст. Коды, учитывающие частоту символов. Коды Грея. Построение кода для обнаружения и исправления ошибок.

Русский

2013-01-06

170 KB

12 чел.

Задание 1.

Прямые коды.

Создать алфавит А, используемый при форматировании Ф.И.О., которые будут являться исходным текстом. Построить прямые двоичные коды постоянной длины и закодировать ими исходный текст.

 гущиналексейниколаевич     A = (гущиналексйовч)

                                         

таблица 1

                  

Символ

Код постоянной длины

А

0

0000

В

1

0001

Г

2

0010

Е

3

0011

И

4

0100

Й

5

0101

К

6

0110

Л

7

0111

Н

8

1000

О

9

1001

С

10

1010

У

11

1011

Ч

12

1100

Щ

13

1101

                                        

    

I = [ ]

     N = 14

Для предметов каждого N символа ввиде 4-х разрядного кода. Рассмотрим возможные варианты из комбинации нуля и единицы.

1) все нули.

0000

2) одна единица и три нуля.

0001

0010

0100

1000

3) две единицы и два нуля.

0011

0110

1001

1010

0101

1100

4) три единицы и один ноль.

0111

1011

1101

       г              у            щ             и              н

Фамилия Гущин   0010 1011 1101 0100 1000

       а       л       е       к       с       е       й

Имя   Алексей  0000 0111 0011 0110 1010 0011 0101

                                                  н       и       к      о      л       а       е       в       и      ч       

Отчество Николаевич  1000 0100 0110 1001 0111 0000 0011 0001 0100 1100

Задание 2.

Коды, учитывающие частоту символов.

 Построить для алфавита А двоичные коды учитывающие чистоту символов, расчёт чистоты выполнить по исходящему по типу и закодировать полученным кодом  исходящий текст.

 таблица 2

Символ

Частота

Код

Е

3

0000

И

3

0001

А

2

0010

К

2

0011

Л

2

0100

Н

2

0101

В

1

0110

Г

1

0111

Й

1

1000

О

1

1001

С

1

1010

У

1

1011

Ч

1

1100

Щ

1

1101


Используя данный полученные в задание 1 кодируем каждую чистоту 4-х разрядным кодом. Назначим символами коды постоянной длины, число единиц , которых тем больше чем меньше чистота символа.

Гущин          0111 1011 1101 0001 0101

Алексей        0010 0100 0000 0011 1010 0000 1000

Николаевич  0101 0001 0011 1001 0100 0010 0000 0110 0001 1100

Задание 3.

Коды Грея.

 

Для символов алфавита А (из задания 1) построим код Грея и закодируем им исходный текст. Для этого сначала построим таблицу ,строки и столбцы которой пронумеруем двоичными числами из множества {00,01,10,11},элементы которого сами

являются кодами Грея.

 таблица 3

00

01

10

11

00

А

В

Г

Е

01

Л

К

Й

И

10

Н

О

С

У

11

Щ

Ч

         

Разместим в ячейках таблицы упорядоченные по алфавиту символы из множества А. Для формирования кода Грея каждому символу объединим номера строки и столбца ячейки, в которой находится символ.

таблица 4

Символ

Алфавита А

Код Грея

1

2

А

0000

В

0001

Г

0010

Е

0011

Л

0100

К

0101

Й

0110

И

0111

Н

1000

О

1001

С

1010

У

1011

Щ

1110

Ч

1111

Гущин   0010 1011 1110 0111 1000

Алексей   0000 0100 0011 0101 1010 0011 0110

Николаевич 1000 0111 0101 1001 0100 0000 0011 0001 0111 1111

Задание 4.

Метод простой подстановки.

Выполнить криптографическое кодирование исходного текста методом простой подстановки. Исходным алфавитом принять множество А (из задания 1).

Для построения кода составим таблицу соответствия между символами исходного алфавита А и произвольными 4-х разрядными кодами. Для упрощения процедуры используем произвольный номер символа алфавита А в пределах от 0 до 12.

таблица 5

Символы исходного

алфавита

Произвольный

номер символа

Коды

А

1

0001

В

5

0101

Г

3

0011

Е

2

0010

Л

4

0100

К

7

0111

И

10

1010

Й

8

1000

Н

14

1011

О

9

1001

С

6

0110

У

0

0000

Щ

11

1011

Ч

13

1101

Гущин   

Алексей    

Николаевич 

Задание 5.

Метод Вижинера

Выполнить криптографическое кодирование исходного текста методом Вижинера. Исходным алфавитом принять множество A (из задания 1). В качестве ключа кодирования использовать имя собственное. В качестве символов кодирования принять l-разрядные двоичные кодовые комбинации (величина l определена в задании 1), значение которых находится в пределах от 0 до двоичного эквивалента числа N-1 , где N – мощность алфавита A.

                                           Указания по выполнению задания 5

  1.  для построения кода пронумеруем символы исходного алфавита, начиная с 0, и каждому десятичному номеру сопоставим двоичный эквивалент размером l.

Получим таблицу соответствия (табл.9),

Таблица 9.

                                                                                                                                               

 

символы исходного алфавита

А

В

Г

Е

И

Й

К

Л

Н

О

С

У

десятичные номера символов

0

1

2

3

4

5

6

7

8

9

10

11

12

13

двоичные номера символов

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

  1.    для кодирования выполняем шаги:

- выписываем исходный текст (строка 1 табл. 10),

- формируем номера символов исходного текста из табл. 9 (строка 2 табл. 10),

- многократно записываем ключ под исходным текстом (строка 3 табл.10),

- заполняем номера символов ключа из табл. 9 (строка 4 табл.10),

- складываем по модулю 13 (это мощность множества A) номера символов (строка 5 табл. 10),

- заменяем полученные числа символами исходного алфавита из табл. 9 (строка 6 табл. 10). Таким образом, получаем строку, соответствующую исходному тексту:

ччлпвиввголдпгдлвпофгфлги.

                                                                                                     

                                                                                                      

                                                                                                       Таблица 10.

Номер строки

Результаты выполнения

1

Ф

И

Л

И

П

П

О

В

В

Л

А

Д

И

С

Л

А

В

О

Л

Е

Г

О

В

И

Ч

2

10

5

6

5

8

8

7

1

1

6

0

3

5

9

6

0

1

7

6

4

2

7

1

5

11

3

В

Л

А

Д

И

С

Л

А

В

В

Л

А

Д

И

С

Л

А

В

В

Л

А

Д

И

С

Л

4

1

6

0

3

5

9

6

0

1

1

6

0

3

5

9

6

0

1

1

6

0

3

5

9

6

5

11

11

6

8

1

5

1

1

2

7

6

3

8

2

3

6

1

8

7

10

2

10

6

2

5

6

Ч

Ч

Л

П

В

И

В

В

Г

О

Л

Д

П

Г

Д

Л

В

П

О

Ф

Г

Ф

Л

Г

И

- Заменяем символы строки (12) двоичными номерами из табл. 9. Получаем результат (отдельно закодирована фамилия, имя и отчество):

Филиппов – 1011, 1011, 0110, 1000, 0001, 0101, 0001, 0001.

Владислав – 0010, 0111, 0110, 0011, 1000, 0010, 0011, 0110, 0001.

Олегович – 1000, 0111, 1010, 0010, 1010, 0110, 0010, 0101.

                                      Задание 8.

          Построение кода для обнаружения ошибок.

 

      Построить помехозащитный код для обнаружения ошибок кратности 1 для символов алфавита А(из задания 1). Выполнить кодирование исходного текста и продемонстрировать помехозащитные свойства построенного кода.

  1.  Для кода указанной корректирующей способностью кодовое расстояние d должно удовлетворять соотношению: d≥2. Для построения кода используем схему построения кода  Грея и кода символов исходного алфавита из таблицы 7.

                                                                                    Таблица 15

Номера строк

    Номера столбцов

Полученные коды

0

1

0000

А

00000

0001

В

00011

0011

Г

00110

0010

Д

00101

0110

Е

01100

0111

И

01111

0101

Л

01010

0100

О

01001

1100

П

11000

1101

С

11011

1111

Ф

11110

1110

Ч

11101

Для проверки требуемой корректирующей способности рассчитаем кодовое расстояние полученного кода.

                                      Таблица 16

В

И

Л

О

А

В

|||||

2

2

2

2

И

|||||

2

2

4

Л

|||||

2

2

О

|||||

2

Филиппов-11110, 01111, 01010, 01111, 11000, 11000, 01001, 00011.

Владислав-00011, 01010, 00000, 00101, 01111, 11011, 01010, 00000, 00011.

Олегович-01001, 01010, 01100, 00110, 01001, 00011, 01111, 11101.

Для проверки корректирующей способности  кода предложим, что на передаваемую кодовую комбинацию 00101 (символ  Д) накладывается ошибка кратности 1 :

                                00101 – 00001= 00100

Полученный код не принадлежит кодовым комбинациям из таблицы 15.

Задание 9.

Построение кода для исправления ошибок.

Построить помехозащитный код для исправления ошибок кратности 1 для символов алфавита А ( из задания 1 ). Продемонстрировать помехозащитные свойства построенного кода.

  1.  для кода с указанной корректирующей способностью кодовое  расстояние d должно удовлетворять соотношению:  d ≥ 3. Для построения кода используем схему построения кода  Грея, коды символов исходного алфавита из таблицы 15 и саму схему решения задачи из задания 8.

                                                                                             Таблица  17

Номера    строк

Номера столбцов

Полученные    коды

0000

0001

0011

0010

0110

00000

В

000000000

00011

И

000110001

00110

Л

001100011

00101

О

001010010

01100

А

011000110

Для проверки требуемой корректирующей способности рассчитаем кодовое расстояние полученного кода.

                                       Таблица 18

В

И

Л

О

А

В

|||||

3

4

3

4

И

|||||

3

4

7

Л

|||||

3

4

О

|||||

3

Для проверки корректирующей способности  кода предложим, что на передаваемую кодовую комбинацию 001100011 (символ Л) накладывается ошибка кратности 1 :

                                001100011-000000001=001100010

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

Рассчитывается  расстояние  между  разрешенными кодовыми комбинациями и искаженным кодом.

                                                  Таблица 19   

Искаженный

код

В

И

Л

О

А

000110000

2

1

4

3

6

По таблице 19 определяется тот символ, для которого расстояние между соответствующими кодами равно 1,  поскольку именно такова кратность ошибки, которую данные кол должен исправить.

                                 000110000→001100011

Предположим, что на передаваемую кодовую комбинацию 001100011 (символ Л) накладывается ошибка кратности 2, искажающая два младших разряда:

                        ……………- 000000011=

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


 

А также другие работы, которые могут Вас заинтересовать

18466. ЗАКОННОСТЬ И ПРАВОПОРЯДОК 41.62 KB
  ТЕМА 10. ЗАКОННОСТЬ И ПРАВОПОРЯДОК 10.1. Понятие законности и ее принципы 10.2. Правопорядок Контрольные вопросы Контрольные вопросы Темы рефератов Нормативные акты и правовая литература 10.1. Понятие законности и ее принципы Законность представля...
18467. ПРАВОТВОРЧЕСТВО. Законодательная техника 74.35 KB
  ТЕМА 11. ПРАВОТВОРЧЕСТВО 11.1. Понятие правотворчества и его принципы 11.2. Виды правотворческой деятельности в Российской Федерации 11.3. Основные стадии правотворческого процесса 11.4. Законодательная техника Контрольные вопросы Темы рефератов Пост...
18468. СИСТЕМАТИЗАЦИЯ ЗАКОНОДАТЕЛЬСТВА 62.92 KB
  ТЕМА 12. СИСТЕМАТИЗАЦИЯ ЗАКОНОДАТЕЛЬСТВА 12.1. Понятие систематизации законодательства 12.2. Учет нормативных актов 12.3. Инкорпорация законодательства 12.4. Консолидация законодательства 12.5. Кодификация законодательства Контрольные вопросы Темы рефер...
18470. РЕАЛИЗАЦИЯ НОРМ ПРАВА 142.5 KB
  ТЕМА 13. РЕАЛИЗАЦИЯ НОРМ ПРАВА 13.1. Понятие реализации норм права и ее основные формы 13.2. Применение права важнейшая форма реализации правовых норм 13.3. Стадии процесса применения права 13.4. Акты применения права 13.5 Пробелы в праве. Применение аналогии зако
18471. ОСНОВЫ КОНСТИТУЦИОННОГО СТРОЯ, НАРОДОВЛАСТИЕ В РОССИЙСКОЙ ФЕДЕРАЦИИ 87.25 KB
  ТЕМА 15. ОСНОВЫ КОНСТИТУЦИОННОГО СТРОЯ НАРОДОВЛАСТИЕ В РОССИЙСКОЙ ФЕДЕРАЦИИ 15.1. Понятие основ конституционного строя 15.2. Народовластие как важнейший принцип Конституционного строя России 15.3. Основные принципы конституционного строя Контрольные вопросы ...
18472. ОСНОВЫ ПРАВОВОГО СТАТУСА ЧЕЛОВЕКА И ГРАЖДАНИНА В РОССИЙСКОЙ ФЕДЕРАЦИИ 71.82 KB
  ТЕМА 16. ОСНОВЫ ПРАВОВОГО СТАТУСА ЧЕЛОВЕКА И ГРАЖДАНИНА В РОССИЙСКОЙ ФЕДЕРАЦИИ 16.1. Понятие правового статуса человека и гражданина 16.2. Понятие гражданства Российской Федерации 16.3. Способы утраты гражданства Российской Федерации 16.4. Институт конституционны...
18473. СИСТЕМА ОРГАНОВ ГОСУДАРСТВЕННОЙ ВЛАСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ 203.71 KB
  ТЕМА 18. СИСТЕМА ОРГАНОВ ГОСУДАРСТВЕННОЙ ВЛАСТИ РОССИЙСКОЙ ФЕДЕРАЦИИ 18.1. Понятие и принципы построения органов государственной власти 18.2. Структура органов исполнительной власти 18.3. Органы судебной власти и принципы осуществления правосудия 18.4. Принципы д...
18474. ФЕДЕРАЛЬНОЕ СОБРАНИЕ РОССИЙСКОЙ ФЕДЕРАЦИИ 169.63 KB
  ТЕМА 20. ФЕДЕРАЛЬНОЕ СОБРАНИЕ РОССИЙСКОЙ ФЕДЕРАЦИИ 20.1. Место Федерального Собрания в системе государственных органов РФ 20.2. Совет Федерации 20.3. Государственная Дума 20.4. Законодательный процесс в Федеральном Собрании РФ Контрольные вопросы Темы рефер...