4. Кодирование и декодирование информации: #291243
По каналу связи передаются сообщения, содержащие только буквы из набора: А, З, К, Н, Ч. Для передачи используется двоичный код, удовлетворяющий условию Фано. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Кодовые слова для некоторых букв известны: Н – $1111$, З – $110$. Для трёх оставшихся букв А, К и Ч кодовые слова неизвестны.
Какое количество двоичных знаков потребуется для кодирования слова КАЗАЧКА, если известно, что оно закодировано минимально возможным количеством двоичных знаков?
В слове КАЗАЧКА:
- буква А встречается $3$ раза;
- буква К — $2$ раза;
- буквы З и Ч — по $1$ разу.
Поэтому самое короткое свободное кодовое слово нужно назначить букве А, следующее по длине — букве К.
Код $0$ не является началом известных кодов, поэтому выберем: А — $0$.
Следующее кратчайшее свободное слово: К — $10$.
Для буквы Ч кратчайшим возможным кодом будет $1110$. Получаем код:
| Буква | Кодовое слово |
|---|---|
| А | $0$ |
| К | $10$ |
| З | $110$ |
| Ч | $1110$ |
| Н | $1111$ |
Этот код удовлетворяет условию Фано.
Количество двоичных знаков для слова КАЗАЧКА: $2\cdot2+3\cdot1+1\cdot3+1\cdot4=4+3+3+4=14$.