Смекни!
smekni.com

Методические указания для выполнения курсовой работы по информатике для студентов специальностей 220100 Вычислительные машины, комплексы, системы и сети (стр. 2 из 10)

(4+0)! 4!

4!*0! 4!

2
1 единица, 3 нуля

r0 = 3, r1 = 1

(1+3)! 4! 2*3*4

1!*3! 2*3 6

3

2 единицы, 2 нуля

r0 = 2, r1 = 2

(2+2)! 4! 2*3*4

2!*2! 2*2 4

4

3 единицы, 1 ноль

r0 = 1, r1 = 3

аналогично второму способу, т.е. 4

5

все единицы

r0 = 0, r1 = 4

аналогично первому способу, т.е. 1

Суммирование полученного числа кодовых комбинаций (1+4+6+4+1=16) показывает, что для кодирования символов исходного алфавита А с заданной мощностью N достаточно принятых способов заполнения разрядов кода, поскольку 16>(N=13),

4) упорядочим список символов алфавита А по убыванию частоты. Получим табл. 4 (графы 1,2),

5) назначим символам коды постоянной длины, число единиц в которых тем больше, чем меньше частота символа (графа 4 табл. 4).

Таблица 4

Символ

алфавита А

Число

появлений mi

Способы заполнения кодовых разрядов

Код

Число кодовых комбинаций[2]

1

2

3

4

5

в 4 все нули 0000 1
и
3 1 единица, 3 нуля 0001 4
а 2 1 единица, 3 нуля 0010
е 2 1 единица, 3 нуля 0100
л 1 1 единица, 3 нуля 1000
н
1 2 единицы, 2 нуля 1010 6
о 1 2 единицы, 2 нуля 1001
п 1 2 единицы, 2 нуля 0110
р 1 2 единицы, 2 нуля 0101
с 1 2 единицы, 2 нуля 0011
т 1 2 единицы, 2 нуля 1100
ч
1 3 единицы, 1 ноль 1011 2
ь 1 3 единицы, 1 ноль 1101

Кодирование исходного текста полученным кодом дает результат (отдельно закодированы фамилия, имя и отчество):

петров 0110 0100 1100 0101 1001 0000

иван 0001 0000 0010 1010 (9)

васильевич 0000 0010 0011 0001 1000 1101 0100 0000 0001 1011

Задание 3. Коды Грея

Для символов алфавита А (из задания 1) построить код Грея. Закодировать полученным кодом исходный текст.

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

Для построения кода Грея выполним следующие шаги:

1) исходя из мощности множества А, определим размер nxm таблицы для построения кода Грея, где n – число строк, m – число столбцов таблицы. Для этого будем последовательно наращивать число столбцов и число строк, начиная с одной строки и одного столбца, каждый раз проверяя, не достигнут ли требуемый размер таблицы. При этом схема наращивания числа строк и столбцов будет определяться следующим образом: число столбцов на каждом шаге итерации равно или на 1 превышает число строк (табл. 5).

Таблица 5

Номер шага

Число столбцов m

Число строк n

Размер таблицы nxm

1

2

3

4

1 1 1 1
2 2 1 2
3 2 2 4
4 3 2 6
5 3 3 9
6 4 3 12
7 4 4 16 > 13

Поскольку на седьмом шаге итерации удалось достичь требуемого размера таблицы, определение ее размеров закончено. Таким образом, получена таблица размером 4х4,

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

Таблица 6

00 01 11 10
00
а в е и
01
п о н л
11
р с т ч
10 ь

3) разместим в ячейках таблицы упорядоченные по алфавиту символы исходного множества (см. графу 1 табл.1) в направлении, указанном стрелками в табл.6,

4) для формирования кода Грея по каждому символу объединим номера строки и столбца ячейки, в которой находится символ. Получим графу 2 табл. 7.

Таблица 7

Символ алфавита А

Код Грея

1

2

а 0000
в 0001
е 0011
и 0010
л 0110
н 0111
о 0101
п 0100
р 1100
с 1101
т 1111
ч 1110
ь 1010

Кодирование исходного текста полученным кодом дает результат:

петров 0100 0011 1111 1100 0101 0001

иван 0010 0001 0000 0111 (10)

васильевич 0001 0000 1101 0010 0110 1010 0011 0001 0010 1110

1.2. Криптографическое кодирование дискретного сигнала

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

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

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

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

Таблица 8

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

Произвольный номер символа

Коды

1

2

3

а 9 1001
в 11 1011
е 12 1100
и 1 0001
л 10 1010
н 6 0110
о 7 0111
п 0 0000
р 2 0010
с 3 0011
т 4 0100
ч 5 0101
ь 8 1000

2) для кодирования исходного текста используем табл.8. Получаем:

петров 0000 1100 0100 0010 0111 1011

иван 0001 1011 1001 0110 (11)

васильевич 1011 1001 0011 0001 1010 1000 1100 1011 0001 0101

Задание 5. Метод Вижинера

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

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

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