⭐ В учебнике этот пункт отмечен звёздочкой — он не обязателен для всех, но
будет интересен тем, кто хочет понять, как на самом деле «думает» компьютер, и разобраться,
почему числа вообще можно записывать по-разному.
Что такое система счисления
Мы привыкли к десятичной системе записи чисел: 10 единиц одного разряда
образуют 1 единицу следующего разряда (10 единиц = 1 десяток, 10 десятков = 1 сотня и т. д.).
Число 10 здесь называют основанием системы.
Но 10 — не единственное возможное основание. Если объединять в группы не по 10, а по
2, 3, 5 или любому другому числу единиц, получится своя система счисления
с этим числом в качестве основания: двоичная (основание 2), троичная
(основание 3), пятеричная (основание 5) и так далее.
Определение. Позиционная система счисления с основанием $k$ — это способ
записи чисел, в котором значение каждой цифры зависит от её позиции (разряда):
цифры представляют собой коэффициенты при степенях
числа $k$ — $\ldots,\,k^3,\,k^2,\,k^1,\,k^0$. Для записи цифр в такой системе нужно
ровно $k$ различных символов — от $0$ до $k-1$.
💡 Из жизни: представь одометр в машине с десятью цифрами на колёсике —
досчитав до 9, колёсико возвращается к 0 и толкает соседнее. Если бы на колёсике было
не 10 цифр, а, например, только 2 (0 и 1), получился бы счётчик в двоичной системе — именно
так «щёлкают» биты в памяти компьютера.
Как перевести число в другую систему
Возьмём число $145$ и запишем его в троичной системе (основание 3). Сначала
выпишем степени тройки: $3^0=1,\ 3^1=3,\ 3^2=9,\ 3^3=27,\ 3^4=81,\ \ldots$ Раскладывая 145
по этим степеням, получаем:
Значит, $145_{10} = 12101_3$. Быстрее всего такое разложение получить не подбором степеней,
а последовательным делением на основание:
1
Делим число на основание $k$ и запоминаем остаток — это цифра младшего разряда.
2
Полученное неполное частное снова делим на $k$ — получаем следующую цифру (справа налево).
3
Повторяем деление, пока частное не станет равным $0$.
4
Читаем все остатки снизу вверх (от последнего к первому) — это и есть запись числа в новой системе.
Обратный перевод — из другой системы в десятичную — делают наоборот: записывают число
суммой разрядных слагаемых и вычисляют. Например,
$2011_3 = 2\cdot 3^3 + 0\cdot 3^2 + 1\cdot 3^1 + 1\cdot 3^0 = 54+0+3+1=$
$58_{10}$.
🧠 Запомни: в системе с основанием $k$ используются цифры от $0$ до $k-1$
(остаток от деления всегда меньше делителя). В троичной — только $0,1,2$; в пятеричной —
$0,1,2,3,4$; в восьмеричной — $0,1,\ldots,7$.
Двоичная система — язык компьютеров
Самая простая из всех систем — двоичная (основание 2): в ней всего две
цифры, 0 и 1. Именно её используют в компьютерах, потому что электронной схеме проще
различать всего два состояния («есть сигнал» / «нет сигнала»), чем десять. Таблицы сложения
и умножения здесь предельно простые: $1+1=10$ и $1\cdot 1=1$ — больше и запоминать нечего.
Расплата за простоту — длина записи: например, $2000_{10} = 11111010000_2$ —
одиннадцать цифр вместо четырёх.
Для сравнения — вот как непривычно выглядит натуральный ряд и таблица сложения
в пятеричной системе (цифры 1–4):
+
1
2
3
4
1
2
3
4
10
2
3
4
10
11
3
4
10
11
12
4
10
11
12
13
⚠️ Частая ошибка. Число $12101_3$ нельзя прочитать как «двенадцать тысяч
сто один» — это не десятичная запись! Каждая цифра здесь стоит рядом со степенью основания
3, а не 10. Чтобы узнать «настоящую» (десятичную) величину числа, нужно подставить
цифры в разложение по степеням его собственного основания — как в примере с $2011_3=58_{10}$.