В задании 11 ЕГЭ по информатике проверяется умение считать объем памяти данных. Это довольно простое задание, для решения которого необходимо знать несколько формул и как переводить биты в байты, килобайты и т. д.
Давайте разберем всю теорию, необходимую для решения 11 задания.
Любая информация хранится в битах. Бит – минимальная единица измерения информации. Бит может быть равен 0 или 1, значит одним битом можно закодировать два случая – правда или ложь. Двумя битами можно закодировать 4 случая: 00, 01, 10, 11. Тремя – 8 случав и т. д. Так, если у нас есть информация, которая принимает 4 возможных значения, то мы можем закодировать ее 2 битами (например, двумя битами кодируется направление: вверх – 00, вправо – 01, вниз – 10, влево - 11). Получается, что количество значений у какой-либо информации равняется двойке в степени, равной количеству бит. Мы вывели формулу:
\(N=2^{i}\)
где N – количество возможных событий, I – количество бит
Если у нас есть информация, которая может принимать 3 значения, мы ее тоже кодируем 2 битами, то есть N <= 2i (потому что одним битом мы закодировать не сможем, а двумя сможем, просто одна комбинация бит не будет использоваться)
Давайте научимся переводить биты в байты, килобайты и т.д.
Чтобы перевести биты в другие единицы хранения, сначала нужно понять, что 1 байт = 8 бит. Поэтому, чтобы получить количество байт, делим число бит на 8. Затем, чтобы перевести байты в более крупные единицы, такие как килобайты, мегабайты, и так далее, используем множитель 1024: 1 килобайт (КБ) = 1024 байта, 1 мегабайт (МБ) = 1024 килобайта и так далее. Например, для перевода 8192 бит в килобайты: сначала делим 8192 на 8, получаем 1024 байта, а затем делим на 1024, получая 1 килобайт.
Далее давайте рассмотрим формулу нахождения объема памяти сообщения I.
Чтобы найти общий объем I, нужно умножить все элементы этого сообщения на объем памяти, занимаемый одним элементом. Формула выглядит так:
\(I=L*i\)
где I – объем сообщения, L– количество символов в сообщении, i – объем одного символа
Мы разобрали основные понятия и формулы для решения 11 задачи ЕГЭ.
Давайте выведем основной алгоритм решения:
- Посчитать алфавит
- Найти объем одного символа по формуле
- Найти объем одного сообщения по формуле
- Посчитать общий объем памяти, нужный для решения задачи
Алгоритм может меняться в зависимости от условия задачи, но две изученные нами формулы – опорные точки, которые применяются в каждой задаче.
Демоверсия 2025
На предприятии каждой изготовленной детали присваивают серийный номер, содержащий десятичные цифры, 52 латинские буквы (с учётом регистра) и символы из 963-символьного специального алфавита. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 2000 серийных номеров отведено не более 693 Кбайт памяти. Определите максимально возможную длину серийного номера. В ответе запишите только целое число.
1. Посчитать алфавит
Десятичные цифры: 10 символов.
Латинские буквы (с учётом регистра): 52 символа.
Специальные символы: 963 символа.
Общий размер алфавита:
10 + 52 + 963 = 1025 символов
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2^i >= N, где N — размер алфавита.
2^10 = 1024 < 1025
2^11 = 2048 >= 1025
Следовательно, требуется 11 бит на символ.
3. Найти объем одного сообщения по формуле
Пусть L — длина серийного номера в символах.
Общее количество бит для одного номера:
I = L * 11 бит
4. Посчитать общий объем памяти, нужный для решения задачи
Из условия известно, что для 2000 серийных номеров выделено 693 Кбайт:
693 Кбайт = 693 * 1024 = 709632 байт
Объем памяти на один номер:
709632 / 2000 = 354.816 байт
Округляем до 354 байт
Теперь найдем максимальную длину серийного номера L:
(11 * L) / 8 байт <= 354 байт
11L <= 354 * 8
11L <= 2832
L <= 2832 / 11 ≈ 257.45
Максимальная длина L равна 257 символов.
Демоверсия 2024
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 60 символов и содержащий только десятичные цифры и символы из 250-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Кбайт), необходимый для хранения 65 536 идентификаторов. В ответе запишите только целое число – количество Кбайт.
1. Посчитать алфавит
Общий размер алфавита:
10 + 250 = 260 символов
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2^i >= N, где N — размер алфавита.
2^8 = 256 < 260
2^9 = 512 >= 260
Следовательно, требуется 9 бит на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора в символах = 60 символов.
Общее количество бит для одного идентификатора:
I = 60 * 9 = 540 бит
Переводим в байты:
540 / 8 = 67,5 байт
Округляем вверх, так как нам нужно уместить информацию на 67,5 байтах, но нецелым число байтов быть не может. Получаем 68 байт.
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 65 536 идентификаторов.
Общий объем памяти в байтах:
65536 * 68 = 4,456,448 байт
Переводим в Кбайт:
4,456,448 / 1024 = 4352 Кбайт
Основная волна 19.06.2024 (Центр)
На предприятии каждой изготовленной детали присваивается серийный номер, содержащий десятичные цифры, 26 латинских букв (без учёта регистра) и символы из 450-символьного специального алфавита. В базе данных для хранения каждого серийного номера отведено одинаковое и минимально возможное число байт. При этом используется посимвольное кодирование серийных номеров, все символы кодируются одинаковым и минимально возможным числом бит. Известно, что для хранения 708 серийных номеров отведено более 213 Кбайт памяти. Определите минимально возможную длину серийного номера. В ответе запишите только целое число.
1. Посчитать алфавит
Общий размер алфавита:
10 + 26 + 450 = 486 символов
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2 в степени i больше или равно N, где N — размер алфавита.
2^8 = 256 < 486
2^9 = 512 >= 486
Следовательно, требуется 9 бит на символ.
3. Найти объем одного сообщения по формуле
Пусть L — длина серийного номера в символах.
Общее количество бит для одного номера:
I = 9 * L бит
4. Посчитать общий объем памяти, нужный для решения задачи
Из условия известно, что для хранения 708 серийных номеров выделено более 213 Кбайт памяти.
Переводим Кбайты в байты:
213 Кбайт = 213 * 1024 = 218112 байт
Общий объем памяти на один серийный номер:
218112 / 708 ≈ 308.4 байт
Так как объем памяти должен быть целым числом, получаем, округляем вверх и получаем 309 байт
Теперь найдём минимальную длину серийного номера L:
9L = 309 * 8
9L = 2472
L = 2472 / 9 ≈ 274.67
Мы получили, что количество символов – дробное число. Если мы возьмем больше, то превысим объем памяти на один серийный номер, поэтому округляем в меньшую сторону и получаем 274.
Демоверсия 2023
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 250 символов и содержащий только десятичные цифры и символы из 1650-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Кбайт), необходимый для хранения 65 536 идентификаторов. В ответе запишите только целое число – количество Кбайт.
1. Посчитать алфавит
Общий размер алфавита:
10 + 1650 = 1660 символов.
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2 в степени i больше или равно N, где N — размер алфавита.
2^10 = 1024 < 1660
2^11 = 2048 >= 1660
Следовательно, требуется 11 бит на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора составляет 250 символов.
Общее количество бит для одного идентификатора:
I = 250 * 11 = 2750 бит
Переводим в байты, округляя вверх, так как нам нужно сохранить всю информацию:
2750 / 8 = 343,75 = 344 байт
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 65 536 идентификаторов.
Общий объем памяти в байтах:
65536 * 344 = 22,544,384 байт
Переводим в Кбайт:
22,544,384 / 1024 = 22016 Кбайт
Основная волна 2023 I
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 105 символов и содержащий только десятичные цифры и символы из 1500-символьного специального алфавита. В базе данных для хранения сведений о каждом идентификаторе отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит. Определите объём памяти (в Кбайт), необходимый для хранения сведений о 16 384 объектах. В ответе запишите только целое число – количество Кбайт.
1. Посчитать алфавит
Общий размер алфавита:
10 + 1500 = 1510 символов
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2 в степени i больше или равно N, где N — размер алфавита.
2^10 = 1024 < 1510
2^11 = 2048 >= 1510
Следовательно, требуется 11 бит на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора составляет 105 символов.
Общее количество бит для одного идентификатора:
I = 105 * 11 = 1155 бит
Переводим в байты, округляя вверх, так как нам нужно сохранить всю информацию:
1155 / 8 = 144,375 = 145 байт
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 16 384 идентификатора.
Общий объем памяти в байтах:
16384 * 145 = 2,375,680 байт
Переводим в Кбайт:
2,375,680 / 1024 = 2320 Кбайт
Досрочная волна I 2023
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 113 символов и содержащий только десятичные цифры и символы из 2025-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование идентификаторов, все символы кодируют одинаковым и минимально возможным количеством бит. Определите объём памяти (в Кбайт), необходимый для хранения 32 768 идентификаторов.
В ответе запишите только целое число – количество Кбайт.
1. Посчитать алфавит
Общий размер алфавита:
10 + 2025 = 2035 символов
2. Найти объем одного символа по формуле
Для кодирования каждого символа нужно минимальное количество бит i, такое что 2^i >= N, где N — размер алфавита.
2^11 = 2048 >= 2035
Следовательно, требуется 11 бит на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора составляет 113 символов.
Общее количество бит для одного идентификатора:
I = 113 * 11 = 1243 бит
Переводим в байты, округляя вверх, так как нам нужно сохранить всю информацию:
1243 / 8 = 155,375 = 156 байт
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 32 768 идентификаторов.
Общий объем памяти в байтах:
32768 * 156 = 5,111,808 байт
Переводим в Кбайт:
5,111,808 / 1024 = 4992 Кбайт
Демоверсия 2022
При регистрации в компьютерной системе каждому объекту сопоставляется идентификатор, состоящий из 15 символов и содержащий только символы из 8-символьного набора: A, B, C, D, E, F, G, H. В базе данных для хранения сведений о каждом объекте отведено одинаковое и минимально возможное целое число байт. При этом используют посимвольное кодирование идентификаторов, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственного идентификатора, для каждого объекта в системе хранятся дополнительные сведения, для чего отведено 24 байта на один объект.
Определите объём памяти (в байтах), необходимый для хранения сведений о 20 объектах. В ответе запишите только целое число – количество байт.
1. Посчитать алфавит
Общий размер алфавита - 8 символов
2. Найти объем одного символа по формуле
Необходимо минимальное количество бит i, такое что 2^i ≥ 8.
2^3 = 8 >= 8
Требуется 3 бита на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора: 15 символов.
Общее количество бит для одного идентификатора:
I = 15 * 3 = 45 бит
Переводим в байты, округляя вверх, так как нам нужно сохранить всю информацию:
45 / 8 = 5,625 = 6 байт
Добавляем дополнительные сведения:
Общий объем на один объект = 6 + 24 = 30 байт
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 20 объектов.
Общий объем памяти:
20 * 30 = 600 байт
Основная волна 2022 III
При регистрации в компьютерной системе каждому объекту присваивается идентификатор, состоящий из 32 символов и содержащий только десятичные цифры и символы из 63-символьного специального алфавита. В базе данных для хранения каждого идентификатора отведено одинаковое и минимально возможное целое число байт. При этом используется посимвольное кодирование идентификаторов, все символы кодируются одинаковым и минимально возможным количеством бит.
Определите объём памяти (в Кбайт), необходимый для хранения 3840 идентификаторов. В ответе запишите только целое число – количество Кбайт.
1. Посчитать алфавит
Общий размер алфавита:
10 + 63 = 73 символа
2. Найти объем одного символа по формуле
Для кодирования каждого символа необходимо минимальное количество бит i, такое что 2^i ≥ N, где N — размер алфавита.
Проверяем степени двойки:
2^6 = 64 < 73
2^7 = 128 ≥ 73
Следовательно, требуется 7 бит на символ.
3. Найти объем одного сообщения по формуле
Длина идентификатора составляет 32 символа.
Общее количество бит для одного идентификатора:
32 * 7 = 224 бит
Переводим в байты:
224 / 8 = 28 байт
4. Посчитать общий объем памяти, нужный для решения задачи
Необходимо хранить 3840 идентификаторов.
Общий объем памяти в байтах:
3840 * 28 = 107520 байт
Переводим в Кбайт:
107520 / 1024 = 105 Кбайт
При решении задания 11 ЕГЭ по информатике важно:
- Точно определить размер алфавита, включая все возможные символы, чтобы правильно вычислить минимальное количество бит на символ с помощью формулы N = 2i.
- Необходимо аккуратно переводить биты в байты и последующие единицы измерения, всегда округляя вверх, чтобы обеспечить достаточное пространство для хранения информации.
- Следует учитывать дополнительные данные, если они присутствуют в задаче, и суммировать объем памяти для основного идентификатора и дополнительных сведений.
- Важно проверять промежуточные результаты и корректно выполнять округления, чтобы избежать ошибок и оптимально использовать выделенный объем памяти.
Эти подходы помогут точно и эффективно решать задачи, связанные с вычислением объема памяти для хранения данных.
Удачи на экзамене!