Задача 1. Цель: понять, подробное решение.
- Алфавит древнего языка состоит из 32 символов. Каков информационный вес одного символа?
- Формула: вес символа = log2(m), где m — размер алфавита.
- Здесь m = 32, поэтому вес = log2(32) = 5 бит.
- Система сигнализации использует световые импульсы двух цветов. Сколько различных сигналов можно передать с помощью последовательности из 7 импульсов?
- Каждый импульс может быть одного из 2 цветов → 2 варианта на импульс.
- Всего последовательностей длиной 7: 2^7 = 128.
- Для кодирования символов ↑, →, ↓, ←, •, ◦, ♠, ♣ используют последовательные трехбитные двоичные коды, начиная с 000 для ↑. Закодируйте последовательность символов «→•♣←».
- Раскладка кодов (начиная с 000 для ↑, далее по возрастанию):
- ↑ = 000
- → = 001
- ↓ = 010
- ← = 011
- • = 100
- ◦ = 101
- ♠ = 110
- ♣ = 111
- Соответствие символов «→ • ♣ ←»:
- → = 001
- • = 100
- ♣ = 111
- ← = 011
- Итоговая последовательность бит: 001 100 111 011, т. е. 001100111011.
- Информационное сообщение объемом 2 Кбайта содержит 2048 символов. Какова мощность алфавита, с помощью которого было записано это сообщение?
- Объем сообщения: 2 Кбайта = 2048 байт = 2048 символов.
- Общее количество бит в сообщении равно 2048 байт × 8 бит/байт = 16384 бит.
- Если каждый символ кодируется алфавитом размера m и каждый символ несет log2(m) бит информации, то суммарно: 2048 × log2(m) = 16384 log2(m) = 8 m = 2^8 = 256.
- Значит, используемый алфавит имеет размер 256 символов.
- В компьютерной игре каждый уровень кодируется минимально возможным количеством битов. Известно, что в игре 90 уровней. Какое минимальное количество битов потребуется для кодирования номера уровня? Хватит ли одного байта для кодирования номера любого уровня? Обоснуйте.
- Нужно ceil(log2(90)) бит. log2(64) = 6, log2(128) = 7 → 90 лежит между ними, значит минимально 7 бит.
- Один байт = 8 бит. 90 ≤ 256 = 2^8, значит одного байта вполне достаточно для кодирования любого номера уровня.
- Ответ: минимально 7 бит; да, одного байта хватит.
Задача 2. Цель: понять, пояснить и привести примеры.
Важно: здесь многое зависит от конкретной учебной таблицы кодировки. Без неё точно закодировать слово «ПИОН» нельзя. Ниже приводятся пояснения и возможный пример на контекстной основе.
- Кодирование слова «ПИОН» (используя учебную таблицу кодировки)
- Сыммируемый подход: в разных таблицах кириллические буквы кодируются по-разному. Часто в учебниках используют локальные таблицы (например, таблицу кодировок, где каждая буква кодируется одним кодом фиксированной длины, иногда 8 бит или 5–6 бит).
- Пример на одной распространённой кодировке (для иллюстрации): в кодировке Windows-1251 (cp1251) буквы П/И/О/Н имеют следующие байты:
- П = 0xCF, И = 0xC8, О = 0xCE, Н = 0xCD
- В двоичном виде это: 11001111 11001000 11001110 11001101
- Примечание: это именно пример на cp1251. В вашей учебной таблице кодировки значения будут иными. Сообщите таблицу — дам точный код для «ПИОН» по ней.
- Декодируйте сообщение: 01001000 01000001 01001100
- Это стандартная последовательность байтов ASCII.
- 01001000 = 0x48 = 'H'
- 01000001 = 0x41 = 'A'
- 01001100 = 0x4C = 'L'
- Итого: HAL.
- Сообщение содержит 25 символов. Каков его информационный объем в байтах?
- Если речь идёт об обычной 8-битной кодировке (один символ — один байт), то 25 символов занимают 25 байт.
- В контексте ASCII/Latin-символов это нормально.
- Для записи текста использовался 16-символный алфавит. Каков информационный вес одного символа в битах?
- Вес символа = log2(число символов) = log2(16) = 4 бита.
- Текст занимает 2 страницы по 50 строк в каждой. В каждой строке 40 символов. Какой объем информации в байтах он содержит?
- Общее число символов: 2 × 50 × 40 = 4000 символов.
- Если каждый символ кодируется одним байтом (типично для стандартной однобайтовой кодировки), то объем = 4000 байт.
Итого по задачам во втором блоке:
- Кодирование «ПИОН» требует уточнения таблицы кодировки; пример для cp1251 даёт 4 байта: CF C8 CE CD (0011-ограниченно: 11001111 11001000 11001110 11001101).
- Декодирование 01001000 01000001 01001100 даёт HAL.
- 25 символов → 25 байт (при 8 бит на символ).
- 16-символьный алфавит → 4 бита на символ.
- 4000 символов → 4000 байт.
Если дадите конкретную учебную таблицу кодировки (например, точное соответствие для вашего курса), я скорректирую ответ под неё и дам точные двоичные коды для слова «ПИОН» по вашей таблице.