2. Кодирование и шифрование информации
Задачи
Сколько нужно бит (разрядов) для кодировки всех 111 символов на клавиатуре компьютера?
Решение.
1 символ кодируется 8 битами. Значит для кодировки 111 символов потребуется 111*8 = 888 бит.
Какой минимальной длины битовая комбинация достаточна для кодировки слова "Информационный" (без учета кавычек) в ЭВМ по принципу "один символ – один байт" битовой комбинацией длины?
Решение. Подсчитаем количество букв в слове. Оно равно 14.
Каждая буква в стандарте ASCII кодируется 1 байтом, значит, минимальной длины битовой строкой для кодирования слова может быть строка длиной 14*8 =112 бит.
Сколько различных байтов в ASCII–коде предложения вида "Информационная технология" (без учета кавычек)?
Решение. Подсчитаем количество символов в предложении. Им будет число: 14 + 11 = 25. Различные байты соответствуют разным символам и составим таблицу частоты встречающихся символов в предложении. Получим:
-
и
н
ф
о
р
м
а
ц
и
о
н
н
ы
4
4
1
4
1
1
1
1
-
-
-
-
1
е
т
е
х
н
о
л
о
г
и
и
2
1
1
-
1
-
-
1
-
1
-
-
Вычтем из общего числа символов 25 число клеток с повторами, которые обозначены в таблице “-“, т.е. 25 – 10 = 15.
Сколько различных символов в битовом сообщении 1111000101010000111100011001111011010000, закодированном по принципу "1 байт – 1 символ"?
Решение. Разделим строку на блоки по 8 бит. Получим:
11110001 01010000 11110001 10011110 11010000.
Проверим каждый байт на совпадение. Получим ответ - все символы различны.
Что больше – длина битовой комбинации, необходимой для записи десятичного числа 212 или количество различных чисел, кодируемых 12 битами?
Решение. Больше длина битовой комбинации, необходимой для записи десятичного числа 212, т.к. в таком представлении присутствует еще 1 бит, а именно 20, т.е. этому числу требуется 13 бит.
Текст ADBCE закодирован как 0001000101000110010000110. Как будет декодирован текст 000100001100100001100001100101, закодированный по этому же коду?
Решение. Подсчитаем общее количество символов в строке, разделим на количество букв, получим длину кода символа: 25/5 = 5. Разделим строку на 5 блоков по 5 символов и запишем их в таблицу:
-
A
D
B
C
E
00010
00101
00011
00100
00110
Текст, который нужно декодировать разделим на блоки длиной 5, получим:
00010 00011 00100 00110 00011 00101
Найдем эти коды в таблице и, используя соответствие кода и символов восстановим текст. Получим восстановленный текст: ABCEBD.
7. Задание на лабораторную работу включает решение следующих задач:
Выбрать текст для шифрования длиной не более 15-20 символов.
Используя заданный алфавит для шифровки:
-
А
Б
В
Г
Д
Е
Ж
З
И
Й
К
Л
М
Н
О
П
Р
С
Т
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
У
Ф
Х
Ц
Ч
Ш
Щ
Ъ
Ы
Ь
Э
Ю
Я
,
.
!
?
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
зашифровать текст тремя алгоритмами:
- алгоритмом Цезаря, К=4;
- алгоритмом простой перестановки, К=3142;
Зашифруйте осмысленное слово длиной не более 8 символов
любым методом из трех заданных, отдайте на расшифровку
вместе с ключом (ключами).
Возьмите зашифрованный текст, ключ шифрования.
Дешифруйте переданный текст, подобрав алгоритм.