"Информатика (базовый и углублённый уровень)", Гейн А.Г., Сенокосов А.И.
Система счисления задаёт, какими символами и по каким правилам записывают числа. Главное понятие — основание: оно определяет набор допустимых цифр и веса разрядов. В позиционной системе значение цифры зависит от её места, поэтому запись раскладывается по степеням основания. Эти правила позволяют переводить числа между десятичной, двоичной, восьмеричной и шестнадцатеричной системами, используемыми при работе с компьютерными данными.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Система счисления — это способ записи чисел с помощью заданных символов и правил. Одно и то же количество можно записать по-разному: например, 10₂ и 2₁₀ обозначают разные числа, хотя используют похожие знаки. Понимание системы счисления нужно, чтобы правильно читать записи и переводить их из одного вида в другой.
Цифра — символ, которым записывают число в выбранной системе счисления. Набор разрешённых цифр зависит от основания: чем оно больше, тем больше различных символов можно использовать. Это правило помогает сразу обнаружить неверную запись, например цифру 2 в двоичном числе.
Основание системы счисления — количество различных цифр, используемых в системе, включая ноль. Основание обозначают буквой b; в системе с основанием b разрешены цифры от 0 до b − 1. Основание определяет не только набор символов, но и величину каждого разряда.
Позиционная система счисления — система, в которой значение цифры зависит от её места в записи числа. Одна и та же цифра в единицах, десятках и сотнях обозначает разные величины. Благодаря этому короткая запись может представлять очень большие числа.
Основание b определяет набор цифр, потому что для одного разряда нужны ровно b возможных значений: от нулевого до b − 1. Следующее значение уже нельзя обозначить одной цифрой, поэтому возникает перенос влево. Например, после 9 в десятичной системе появляется 10, а после 1 в двоичной — 10₂.
В позиционной записи каждый разряд связан со степенью основания. Крайний правый разряд имеет вес b⁰ = 1, следующий — b¹, затем b² и так далее. Поэтому цифра умножается на вес своего места, а получившиеся разрядные слагаемые складываются.
Запись 352 означает 3·10² + 5·10¹ + 2·10⁰, потому что цифра 2 стоит в разряде единиц, 5 — десятков, а 3 — сотен. Получаем 300 + 50 + 2 = 352. В системе с основанием b запись aₙaₙ₋₁…a₀ раскрывается как aₙ·bⁿ + aₙ₋₁·bⁿ⁻¹ + … + a₀·b⁰.
Чтобы перевести целое десятичное число в другую позиционную систему, его последовательно делят на новое основание. Каждый остаток показывает очередную цифру справа, то есть сначала находится младший разряд. Когда частное станет нулём, остатки читают от последнего к первому, потому что старшие разряды были найдены позднее.
Перевод из системы с основанием b в десятичную выполняют через сумму разрядных слагаемых. Двоичную запись удобно переводить в восьмеричную и шестнадцатеричную без промежуточной десятичной записи: группы из трёх разрядов соответствуют восьмеричным цифрам, а группы из четырёх — шестнадцатеричным. Это работает потому, что 8 = 2³, а 16 = 2⁴.
Таблица показывает, чем отличаются распространённые позиционные системы. При чтении записи сначала определите основание, затем назначьте разрядам веса справа налево. Последняя строка позволяет проверить результат перевода в десятичную систему.
| Характеристика | Десятичная система | Двоичная система | Восьмеричная система | Шестнадцатеричная система |
|---|---|---|---|---|
| Основание | 10 | 2 | 8 | 16 |
| Допустимые цифры | 0–9 | 0–1 | 0–7 | 0–9, A–F |
| Вес разряда справа налево | 1, 10, 100, 1000… | 1, 2, 4, 8… | 1, 8, 64, 512… | 1, 16, 256, 4096… |
| Пример записи числа | 352₁₀ | 101101₂ | 55₈ | 2D₁₆ |
| Перевод в десятичную систему через разложение по разрядам | 3·10² + 5·10¹ + 2·10⁰ | 1·2⁵ + 0·2⁴ + 1·2³ + 1·2² + 0·2¹ + 1·2⁰ | 5·8¹ + 5·8⁰ | 2·16¹ + 13·16⁰ |
Нужно получить запись числа 45 с основанием 2. Деление на 2 удобно тем, что остаток всегда равен 0 или 1 и сразу является двоичной цифрой. Последовательность частных продолжается до нуля.
Ответ: 45₁₀ = 101101₂. Проверка даёт 32 + 8 + 4 + 1 = 45, поэтому запись верна.
Каждая позиция в двоичной записи имеет вес, равный степени 2. Справа налево разрядам соответствуют степени от 0 до 5. Нулевые цифры не влияют на сумму, но их позиции учитывать необходимо.
Ответ: 101101₂ = 45₁₀. Такой способ подходит для любого целого числа в системе с основанием b.
Шестнадцатеричная цифра кодирует четыре двоичных разряда, поэтому перевод можно выполнить без промежуточных вычислений. Группы строим справа налево. В данном числе длина записи делится на четыре, поэтому добавлять нули не нужно.
Ответ: 11010110₂ = D6₁₆ = 214₁₀. Проверка разложением подтверждает результат группировки.
Цифра 2 в двоичной записи недопустима. Ошибку допускают, когда путают основание с привычным десятичным набором цифр. Проверьте запись: все цифры должны быть меньше основания.
Нельзя считать, что значение цифры не зависит от позиции. Одинаковые цифры в разрядах единиц и десятков умножаются на разные степени основания. Для проверки подпишите под разрядами веса 1, b, b² и далее.
При последовательном делении остатки нельзя записывать в порядке получения как готовое число. Сначала находится младший разряд, поэтому такой порядок даёт перевёрнутый результат. Проверьте себя обратным переводом полученной записи в десятичную систему.
Группировать двоичные цифры нужно справа налево, а не слева направо. Иначе границы разрядов не совпадут с весами восьмеричной или шестнадцатеричной системы. Если левая группа неполная, дополните её нулями слева.
До изучения систем счисления нужны навыки разрядной записи натуральных чисел и действий с целыми числами. Они помогают понимать, откуда берутся разрядные слагаемые и остатки при делении. Без этих операций алгоритмы перевода будут выглядеть формальными.
Знание степеней числа и алгоритмов перевода пригодится при изучении представления данных в компьютере. Двоичная система описывает работу цифровых устройств, а другие системы делают записи компактнее. Эти умения применяются при анализе кодов, адресов и форматов данных.
Двоичная, восьмеричная и шестнадцатеричная записи встречаются в компьютерных кодах, адресах и отладочной информации. Связь между ними основана на группировке двоичных разрядов. Поэтому перевод между такими системами часто выполняют напрямую.
Почему в двоичной системе нельзя записать цифру 2?
У двоичной системы основание 2, поэтому в ней используются только две цифры: 0 и 1. Цифра 2 уже не входит в допустимый набор и должна быть записана несколькими двоичными разрядами.
Как определить значение числа, записанного в системе с основанием 5?
Нужно умножить каждую цифру на соответствующую степень числа 5, начиная справа со степени 0, а затем сложить результаты. Например, 243₅ = 2·5² + 4·5¹ + 3·5⁰ = 73₁₀.
Почему остатки при переводе делением нужно читать снизу вверх?
Первый остаток показывает цифру младшего разряда, затем находятся всё более старшие разряды. Поэтому последний полученный остаток становится первой цифрой результата, и остатки читают в обратном порядке.
Как перевести двоичное число в шестнадцатеричное без перевода в десятичную систему?
Разбейте двоичную запись справа налево на группы по четыре разряда. Каждой группе соответствует одна шестнадцатеричная цифра; левую неполную группу при необходимости дополняют нулями.
Зачем компьютерам нужны восьмеричная и шестнадцатеричная системы, если данные хранятся в двоичном виде?
Двоичные записи часто получаются длинными и неудобными для чтения. Одна восьмеричная цифра заменяет три двоичных разряда, а одна шестнадцатеричная — четыре, поэтому коды и адреса записываются короче.
§ 10. Системы счисления