ОГЭ · Информатика · Информация, кодирование данных и перевод чисел (задания 1, 2, 10)
Информация, информационные процессы и двоичное кодирование
База всего курса: что такое информация, какие процессы с ней происходят, почему компьютер хранит всё в нулях и единицах и чем равномерный код отличается от неравномерного.
Информация и информационные процессы
Определение
Информация — сведения об окружающем мире и происходящих в нём процессах. Для компьютера — данные, представленные в дискретной форме
Определение
Дискретизация — представление непрерывного сигнала конечным набором отдельных значений. Только дискретные данные можно закодировать двоичным кодом
| Хранение | запись данных на носитель: диск, флеш-память, облако |
|---|---|
| Передача | перемещение данных по каналу связи от источника к приёмнику |
| Обработка | получение новых данных из имеющихся по заданным правилам |
| Поиск | выбор нужных данных из массива по условию |
| Защита | предотвращение потери и несанкционированного доступа |
Почему компьютер использует именно двоичный код
Любое устройство хранения данных надёжно различает два состояния: есть напряжение или нет, намагничено или нет, отражает свет или нет. Различать десять уровней напряжения технически гораздо сложнее и куда менее надёжно, поэтому вся информация в компьютере кодируется двумя символами — 0 и 1. Один такой символ несёт 1 бит информации. Если алфавит содержит N символов и каждый кодируется одинаковым числом бит k (это и есть равномерный код), то должно выполняться 2ᵏ ≥ N: количество различных двоичных цепочек длины k равно 2ᵏ, и их должно хватить на все символы. Отсюда стандартный ход рассуждения: для 5 символов 2² = 4 мало, а 2³ = 8 достаточно, значит нужно 3 бита. Для 32 символов ровно 2⁵ = 32, значит хватает 5 бит. Именно так связаны алфавитный подход к измерению информации и объём сообщения: объём всего сообщения I = k · L, где L — число символов.
| Равномерный код | все кодовые слова одинаковой длины; декодируется просто — режем поток на равные куски |
|---|---|
| Неравномерный код | кодовые слова разной длины; частые символы кодируют короче, сообщение получается компактнее |
| Проблема | неравномерный код можно прочитать неоднозначно, если одно слово — начало другого |
| Условие Фано | ни одно кодовое слово не является началом другого — тогда декодирование однозначно |
| Кодовое дерево | наглядная запись префиксного кода: символы стоят только в листьях, путь от корня даёт код |
Как читается кодовое дерево
• Из каждой вершины идут две ветви: влево — 0, вправо — 1.
• Символы располагаются только в листьях (там, где ветвление кончается).
• Код символа — последовательность нулей и единиц по пути от корня до листа.
• Если символ стоит в листе, его код не может быть началом другого кода — условие Фано выполнено автоматически.
• Обратная задача: по набору кодов построить дерево и проверить, нет ли символа в развилке.
Разбор примера
Разбор: сколько бит нужно на символ
Алфавит некоторого языка содержит 5 символов. Каждый символ кодируется двоичным кодом одинаковой длины. Какое наименьшее число бит нужно на один символ?
Показать решение по шагам
- 1. Число различных цепочек длины k равно 2ᵏ, и их должно хватить на все символы: 2ᵏ ≥ 5.
- 2. Проверяем: 2² = 4 — мало, 5 символов не закодировать.
- 3. 2³ = 8 ≥ 5 — хватает с запасом.
- 4. Наименьшее подходящее k = 3 бита.
Ответ: 3 бита
Разбор примера
Разбор: декодирование по кодовому дереву
Символы закодированы так: А — 0, Б — 10, В — 110, Г — 111. Расшифруйте сообщение 010110111.
Показать решение по шагам
- 1. Код удовлетворяет условию Фано: ни одно слово не начало другого, значит читаем слева направо без вариантов.
- 2. Первый символ: 0 → это А. Осталось 10110111.
- 3. Следующий: 10 → Б. Осталось 110111.
- 4. Следующий: 110 → В. Осталось 111.
- 5. Последний: 111 → Г. Получилось АБВГ.
Ответ: АБВГ
Ловушка задания 2: проверяя условие Фано, сравнивай начала кодовых слов, а не их концы. «Одно слово — начало другого» ломает однозначность, «одно слово — конец другого» нет.
Вопрос на проверку
Какое из утверждений о неравномерном коде верно?
Ответить и проверить себя — после бесплатной регистрации.
Разбор примера
Задание 1: сколько битов нужно на символ алфавита
Алфавит некоторого языка состоит из 24 символов. Каждый символ кодируется минимально возможным целым числом битов. Сообщение содержит 200 символов. Определите объём сообщения в байтах.
Показать решение по шагам
- 1. Число битов на символ находим из неравенства 2ⁱ ≥ N: 2⁴ = 16 < 24, 2⁵ = 32 ≥ 24, значит, i = 5 бит. Дробное число битов не бывает — округляют вверх.
- 2. Объём сообщения: I = K · i = 200 · 5 = 1000 бит.
- 3. Переводим в байты: 1000 / 8 = 125 байт.
- 4. Проверка: 125 · 8 = 1000 бит — сходится. Ловушка — взять i = 4,58 (логарифм 24 по основанию 2): в информатике объём символа всегда целое число битов.
Ответ: 125
Разбор примера
Задание 1: объём текста в двух кодировках
Текст из 300 символов набран в кодировке, где каждый символ занимает 1 байт. Сколько байт займёт тот же текст в кодировке Unicode с 2 байтами на символ и на сколько килобайт вырос объём?
Показать решение по шагам
- 1. В однобайтовой кодировке: I₁ = 300 · 1 = 300 байт.
- 2. В Unicode: I₂ = 300 · 2 = 600 байт.
- 3. Разность: 600 − 300 = 300 байт.
- 4. Переводим в килобайты: 1 Кбайт = 1024 байта, значит, 300 / 1024 ≈ 0,29 Кбайт. В информатике килобайт — это 1024, а не 1000 байт, и на этом теряют балл чаще всего.
- 5. Правило для проверки: при переходе с одного байта на два объём удваивается, то есть прирост равен исходному объёму.
Ответ: 600 байт; прирост 300 байт ≈ 0,29 Кбайт
Разбор примера
Задание 2: декодирование по кодовой таблице
Для кодирования букв используется префиксный код: М — 00, А — 01, Ш — 100, И — 101, Н — 11. Расшифруйте последовательность 0001100101 и определите, сколько битов заняла бы эта же надпись при равномерном коде по 5 битов на букву.
Показать решение по шагам
- 1. Читаем слева направо по одному биту, каждый раз сверяясь с таблицей.
- 2. 0 — такого кода нет; 00 = М. Остаток: 01100101.
- 3. 0 — нет; 01 = А. Остаток: 100101. Далее 1 — нет; 10 — нет; 100 = Ш. Остаток: 101 = И.
- 4. Получилось МАШИ. Проверка: 2 + 2 + 3 + 3 = 10 бит, ровно столько, сколько в потоке. Если сумма длин кодовых слов не совпала с длиной потока, где-то отрезан не тот кусок — это главный способ самопроверки.
- 5. Равномерный код по 5 битов на букву: 4 буквы · 5 бит = 20 бит, то есть вдвое больше. Так и виден выигрыш неравномерного кода.
Ответ: МАШИ; равномерный код занял бы 20 бит
Разбор примера
Задание 2: проверка условия Фано
Для четырёх букв составили код: А — 1, Б — 01, В — 001, Г — 000. Является ли этот код префиксным и почему? Можно ли добавить пятую букву с кодом 0001?
Показать решение по шагам
- 1. Проверяем все пары: 1 не является началом 01, 001, 000 (у них первый бит 0). 01 не начало 001 и 000 (второй бит различается). 001 и 000 отличаются третьим битом.
- 2. Значит, ни одно слово не является началом другого — код префиксный, условие Фано выполнено.
- 3. Пятая буква 0001: её началом является 000 (код Г). Условие Фано нарушается, добавить нельзя.
- 4. Что можно: все свободные цепочки должны начинаться так, чтобы не совпасть с началом уже занятых. Здесь занято всё: 1, 01, 001, 000 — это полное кодовое дерево на четыре листа, и пятую букву без переделки кода не добавить.
Ответ: Код префиксный; букву с кодом 0001 добавить нельзя — её началом является код Г
Разбор примера
Файл-ответ code.ods (формат задания 14): таблица кодирования и объёма
Соберите таблицу, которая по алфавиту и длине текста считает объём сообщения и сравнивает равномерный код с неравномерным. Файл сохраняется как *.ods.
Показать решение по шагам
- 1. Разметка листа: A1 «Символов в алфавите», B1 — число; A2 «Бит на символ (равномерный код)», B2 — формула; A3 «Символов в тексте», B3 — число; A4 «Объём, бит», A5 «Объём, байт»; A6 «Объём, Кбайт».
- 2. Формула минимального числа битов: в B2 записывают
=ОКРВВЕРХ(LOG(B1;2);1)— логарифм по основанию 2, округлённый вверх до целого. Это и есть машинная запись правила 2ⁱ ≥ N. - 3. Формулы объёма: B4 =
=B3*B2; B5 ==B4/8; B6 ==B5/1024. Делитель 1024, а не 1000 — это часть ответа, а не мелочь. - 4. Проверка на условии первого разбора: B1 = 24 → B2 показывает 5; B3 = 200 → B4 = 1000, B5 = 125. Совпало с разобранным вручную ответом.
- 5. Как сохранять: «Файл → Сохранить как → Электронная таблица ODF (.ods)». Формат файла на экзамене оговорён в условии, и файл в другом формате эксперт считает не сданным.
- 6. Содержимое файла целиком: B2 =
=ОКРВВЕРХ(LOG(B1;2);1), B4 ==B3*B2, B5 ==B4/8, B6 ==B5/1024.
Ответ: code.ods: B2 = ОКРВВЕРХ(LOG(B1;2);1), B4 = B3*B2, B5 = B4/8, B6 = B5/1024
ℹ️ Спецификация КИМ ОГЭ-2026 по информатике: «Решением каждого задания части 2 является отдельный файл, подготовленный в соответствующей программе (текстовом редакторе или электронной таблице)». Линии 13–16 — 9 баллов из 21 и 105 минут из 150; проверяет их эксперт, а не автомат.
Задание №1 в формате экзамена
Ответить и проверить себя — после бесплатной регистрации.
Задание №1 в формате экзамена
Ответить и проверить себя — после бесплатной регистрации.
Задание №2 в формате экзамена
Ответить и проверить себя — после бесплатной регистрации.