# Кодирование графической и текстовой информации

> Считаем вес картинки и текста: палитра, глубина цвета, мощность алфавита и две формулы, которые решают половину задач про объём информации.

**Информатика, 7 класс.** Урок бесплатного онлайн-самоучителя «ШкольныйГид». Обновлено: 2026-09-27.

Страница урока: https://shkolniygid.ru/informatika/7-klass/kodirovanie-grafiki-i-teksta/

Аватарка в мессенджере весит 2 МБ, а список класса из 25 фамилий — примерно 600 байт: разница в три тысячи раз. При этом оба файла для компьютера одинаковы — длинные цепочки нулей и единиц. Различается способ, которым картинку и текст превратили в эти нули, и именно он определяет размер. Разберёмся, из чего складывается вес рисунка и страницы текста, и выведем две короткие формулы, которыми решается большинство задач на объём.


### Пиксели, палитра и глубина цвета


Растровый рисунок — мозаика из **пикселей**: маленьких квадратов, у каждого свой цвет. Программа хранит не сам рисунок, а номер цвета каждого пикселя из **палитры** — списка доступных цветов. Если в палитре N цветов, на номер нужно столько бит, чтобы хватило на все варианты: $2^{i} \geq N$. Чёрно-белый значок обходится 1 битом на пиксель, палитра из 256 цветов требует 8 бит, а полный цвет с тремя каналами по 8 бит — 24 бита на точку. Объём всего растра считает формула: число пикселей умножить на биты одного пикселя.


$$I = K \cdot i$$

*Объём растрового изображения: K — число пикселей, i — глубина цвета в битах*


Посчитаем значок настроек 32 на 32 пикселя при палитре из 256 цветов. Пикселей $32 \cdot 32 = 1024$, глубина цвета 8 бит, значит $I = 1024 \cdot 8 = 8192$ бит. Делим на 8 — получаем 1024 байта, ровно 1 КБ. У фотографии тех же размеров глубина 24 бита на пиксель, то есть 3072 байта — втрое больше, хотя на глаз картинки почти одинаковые. Второй способ описания картинки — **векторный**: рисунок хранится как формулы фигур, например «окружность радиуса 15 с центром в точке (100, 100)». Логотипы, карты и схемы чертят в векторных редакторах: при любом увеличении программа пересчитывает координаты, и контур остаётся гладким.


> **Ловушка.** Число цветов и биты на пиксель — не одно и то же. Для 100 цветов нельзя взять 6 бит: $2^{6} = 64$, шести вариантов не хватит. Берём ближайшую степень двойки сверху — 7 бит, потому что $2^{7} = 128$. То же с алфавитом: 33 буквы не влезают в 5 бит (32 варианта), нужен шестой. Всегда округляй вверх.


### Текст: от алфавита к байтам


С текстом работает тот же алфавитный подход, только «палитра» — это набор символов. **Мощность алфавита** N — сколько разных символов в нём есть. На символ отводим минимальное число бит $i$, при котором $2^{i} \geq N$: для алфавита из 32 символов хватает 5 бит, для клавиатурных 256 символов нужны все 8 бит — один байт на букву. Кодировка Unicode отводит на символ 2 байта, чтобы вместить алфавиты разных стран. Объём текста считается той же формулой, что и у растра: $I = K \cdot i$, где K — число символов, i — биты на символ. Страница учебника из 40 строк по 60 символов в однобайтовой кодировке весит $40 \cdot 60 = 2400$ байт — около 2,3 КБ.


**Объём сообщения в алфавите из 16 символов**

1. Мощность алфавита 16, ищем биты на символ: 2 в четвёртой степени равно 16, значит i = 4 бита. — $$2^{4} = 16$$
2. Сообщение из 50 символов: умножаем число символов на биты одного символа. — $$I = 50 \cdot 4 = 200$$
3. Переводим в байты: 200 бит — это 25 байт. — $$200 : 8 = 25$$


> **Совет.** Переводи объёмы по цепочке: биты делишь на 8 — получаешь байты, байты делишь на 1024 — получаешь килобайты. И прикидывай ответ заранее: страница текста — 2-3 КБ, значок 32 на 32 — 1 КБ, экран телефона целиком — уже сотни килобайт. Если расчёт уехал от прикидки на порядок, ищи путаницу в битах и байтах.


| Единица | Равна | Пример объёма |
| --- | --- | --- |
| 1 бит | ноль или единица | пиксель чёрно-белого значка |
| 1 байт | 8 бит | один символ текста |
| 1 КБ | 1024 байта | значок настроек 32 на 32 при палитре 256 цветов |
| 1 МБ | 1024 КБ | около 500 страниц текста по 2 КБ |


*[Интерактив: Растр или вектор? — доступен на странице урока]*


*[Интерактив: Вставь пропуски — доступен на странице урока]*


### Палитра на пальцах: сколько бит даёт сколько цветов


Глубина цвета — это ставка: сколько бит выделяется под каждый пиксель. Один бит — два цвета, чёрный и белый. Два бита — четыре, три — восемь, четыре — шестнадцать. Дальше числа растут лавиной: 8 бит дают 256 цветов, 16 бит — 65 536 оттенков, 24 бита — больше 16 миллионов. Отсюда правило, которое экономит время на контрольной: каждый добавленный бит удваивает палитру. Сколько бит нужно для N цветов? Ищи наименьшую степень двойки, которая накрывает N: для 32 цветов хватит 5 бит, для 33 — уже 6, потому что пять бит дают ровно 32 варианта и ни одного лишнего.


Прогон на живом примере. Значок 10 на 10 пикселей с палитрой из 4 цветов: 4 цвета кодируются 2 битами, пикселей 100, значит I = 100 · 2 = 200 бит — 25 байт. Тот же значок с палитрой из 256 цветов весит уже 100 байт. Рисунок не изменился ни на пиксель, а файл вырос вчетверо — из-за одного бита на точку.


| Палитра | Бит на пиксель | Где встречается |
| --- | --- | --- |
| 2 цвета | 1 | чёрно-белый значок |
| 16 цветов | 4 | иконки в старых интерфейсах |
| 256 цветов | 8 | значок настроек из начала урока |
| больше 16 млн цветов | 24 | фотография с телефона |


### Кодировки: от ASCII до Unicode


С текстом единый стандарт сложился не сразу. Кодировка ASCII отводила символу 7 бит — 128 значений: латиница, цифры, знаки препинания. Русским буквам места не осталось, и появились восьмибитные кодировки вроде Windows-1251: один байт на символ, 256 вариантов — как раз хватает латинице и кириллице вместе. Беда в том, что таких кодировок придумали несколько, и файл, набранный в одной, в другой открывался абракадаброй. Решением стал Unicode: стандарт, где каждому символу мировой письменности присвоен свой номер. Кодировка UTF-8 записывает частые символы одним байтом, а редкие двумя, поэтому английский текст весит как в ASCII, а русская буква занимает 2 байта.


Считаем: слово из 6 русских букв весит 6 байт в однобайтовой кодировке и 12 байт в Unicode. Отсюда типовой вопрос с подвохом: текст из 20 строк по 40 символов занимает 800 байт — какая это кодировка? Делим 800 байт на 800 символов, получаем по 1 байту на символ: однобайтовая. Было бы 1600 байт — значит, каждый символ весит 2 байта, это Unicode.


Прогон на конспекте: пять страниц по 40 строк по 50 символов в однобайтовой кодировке — это 5 · 2000 = 10 000 байт, около 10 КБ. Тот же конспект в Unicode потянет 20 КБ, а фотография страницы в высоком разрешении — несколько мегабайт: пиксели обходятся дороже символов. Отсюда житейское правило: текст — самый дешёвый формат, а картинка всегда тяжелее в сотни раз.


*[Интерактив: Карточки: язык кодирования — доступен на странице урока]*


### Разбор типовой задачи


Классика контрольных: рисунок 640 на 480 пикселей сохранён с палитрой из 64 цветов. Сколько килобайт он занимает? Прогоняем алгоритм целиком.


**Рисунок 640 × 480, палитра 64 цвета**

1. Глубина цвета: 64 цвета кодируются шестью битами. — $$2^{6} = 64$$
2. Число пикселей: 640 умножить на 480. — $$640 \cdot 480 = 307200$$
3. Объём в битах: пиксели умножить на биты одного пикселя. — $$I = 307200 \cdot 6 = 1843200$$
4. Переводим в байты: делим на 8. — $$1843200 : 8 = 230400$$
5. Переводим в килобайты: делим на 1024. — $$230400 : 1024 = 225$$
6. Ответ: 225 КБ. Прикидка сходится: 640 на 480 — размер экрана старого монитора, сотни килобайт правдоподобны.


Собери из шагов личный алгоритм: палитра — биты, размер — пиксели, произведение, деление на 8, деление на 1024. Пять движений решают любую задачу про объём растра.


### Словарь урока


**Пиксель** — минимальный элемент растрового изображения, цветная точка
**Палитра** — список цветов, которые использует рисунок
**Глубина цвета** — число бит, отведённых на цвет одного пикселя
**Мощность алфавита** — число разных символов, которые нужно закодировать
**Кодировка** — таблица соответствия символов и их кодов
**Векторный рисунок** — изображение из формул фигур, не теряет качество при масштабировании


### Как это спрашивают на контрольной


- Сколько бит нужно для палитры из 128 цветов? Проверка на округление вверх: ровно 7 бит, ведь 2 в седьмой степени равно 128.
- Рисунок 128 на 256 пикселей при палитре из 256 цветов: объём в килобайтах. Полная цепочка из пяти шагов.
- Страница из 30 строк по 70 символов в двухбайтовой кодировке: объём в байтах. Сначала символы, потом байты.
- Растр или вектор для схемы метро? Рассуждение про масштабирование без потери качества.
- Во сколько раз рисунок с глубиной 24 бита тяжелее рисунка того же размера с глубиной 8 бит? Отношение 3 : 1 без полного расчёта.


В каждом пункте работает один и тот же ход: выписать, что дано, найти биты на элемент и умножить на число элементов. В задачах ОГЭ и ЕГЭ эти формулы вернутся для звука и видео — к ним просто добавятся новые множители.


## Частые вопросы

### Почему логотип делают векторным, а фотографию — растровой?

Логотипу нужно масштабироваться без потери качества — формулы фигур это дают. А фотография содержит плавные переходы цвета, которые формулами не описать, её удобнее хранить пикселями.


### Сколько бит нужно для 100 цветов и почему?

7 бит: шесть дают только 64 варианта, а семь бит — 128, этого хватает. Всегда бери ближайшую степень двойки сверху.


### Как посчитать объём текста по алфавитному подходу?

Определи мощность алфавита N, найди биты на символ i из условия 2^i ≥ N, затем умножь: I = K · i, где K — число символов. Например, для алфавита из 64 символов i = 6, и сообщение из 40 символов займёт 240 бит.


### Почему русская буква в Unicode весит 2 байта?

Unicode хранит символы почти всех алфавитов мира, их десятки тысяч, и 256 вариантов однобайтовой кодировки не хватает. Два байта дают 65 536 комбинаций.


## Проверь себя (вопросы и ответы)

#### Вопрос 1: Значок 16 на 16 пикселей сохранён с глубиной цвета 8 бит. Сколько байт он занимает?
**Ответ:** 256

*Пояснение: Всего 256 пикселей, при 8 битах на пиксель это 1 байт на точку: 256 байт.*


#### Вопрос 2: Алфавит содержит 50 символов. Сколько бит нужно на один символ?
- ☐ 5
- ✅ 6
- ☐ 7
- ☐ 8

*Пояснение: $2^{5} = 32$ — не хватает, $2^{6} = 64$ — достаточно. Берём 6 бит.*


#### Вопрос 3: Векторный рисунок задаётся формулами фигур, поэтому не теряет качество при увеличении.
- ✅ Правда
- ☐ Неправда

*Пояснение: Верно: программа пересчитывает координаты под новый размер, и контур остаётся гладким.*


#### Вопрос 4: Соедини запись и её смысл.
- 1 бит на пиксель — чёрно-белая картинка
- 8 бит на пиксель — палитра из 256 цветов
- 1 байт на символ — однобайтовая кодировка
- 2 байта на символ — Unicode

*Пояснение: Каждая строка — типичный вариант глубины цвета или веса символа из школьных задач.*


#### Вопрос 5: Разложи примеры по типам графики.
- **Растровая графика:** Фотография с отпуска, Обои для рабочего стола
- **Векторная графика:** План эвакуации из школы, Карта города в навигаторе

*Пояснение: Фото и обои — мозаики из пикселей; планы и карты удобнее хранить формулами фигур.*


#### Вопрос 6: Допиши про алфавит.
Алфавит из 32 символов требует **5** бита на символ. Сообщение из 10 символов этого алфавита займёт **50** бит.

*Пояснение: 32 символа кодируются 5 битами, а 10 символов занимают 10 · 5 = 50 бит.*


#### Вопрос 7: Страница содержит 45 строк по 64 символа, кодировка однобайтовая. Каков объём текста в байтах?
**Ответ:** 2880

*Пояснение: 45 · 64 = 2880 символов, по 1 байту на символ — 2880 байт.*


#### Вопрос 8: Выбери верные утверждения.
- ✅ Тремя битами можно закодировать 8 цветов
- ✅ Пиксель — минимальный участок растрового рисунка
- ☐ Векторный рисунок состоит из пикселей
- ✅ В одном байте 8 бит

*Пояснение: Верно первое, второе и четвёртое: $2^{3} = 8$, пиксель — клетка растра, байт — 8 бит. Вектор из пикселей не состоит.*


## Тренажёр

На [странице тренажёра](https://shkolniygid.ru/informatika/7-klass/kodirovanie-grafiki-i-teksta/trenazher/) — 4 типов задач с бесконечными вариантами чисел, проверкой ответа и разбором каждого шага.
