Что такое система счисления и основание числа
Система счисления задаёт, какими знаками и по какому правилу записывают числа. В школе почти всегда работают с позиционными системами: значение цифры зависит от места, на котором она стоит. В числе 373 первая и последняя тройки значат разное: 300 и 3.
Количество разных цифр в системе называют основанием. В десятичной системе счисления основание 10, цифры от 0 до 9. В двоичной основание 2, цифры 0 и 1. В восьмеричной основание 8, цифры 0–7.
Основание пишут маленькой цифрой справа внизу: 101₂, 57₈, 3F₁₆. Если основание не указано, число считают десятичным. Цифры в записи всегда меньше основания: число 285₈ записать нельзя, потому что в восьмеричной системе нет цифр 8 и 9.
Двоичная, восьмеричная и шестнадцатеричная системы
Двоичная система нужна, потому что компьютер хранит всё с помощью двух состояний: 0 и 1. Восьмеричная и шестнадцатеричная служат для краткой записи длинных двоичных чисел. Об этом связанная тема: кодирование информации.
В шестнадцатеричной системе нужно 16 цифр, а привычных только десять. Поэтому после 9 идут буквы:
- A = 10, B = 11, C = 12
- D = 13, E = 14, F = 15
Цифры в двоичной записи называют разрядами, а разряды нумеруют справа налево, начиная с нуля. Вес разряда равен основанию в степени номера. Поэтому число можно записать в развёрнутой форме:
137₈ = 1 × 8² + 3 × 8¹ + 7 × 8⁰ = 64 + 24 + 7 = 95
110₂ = 1 × 2² + 1 × 2¹ + 0 × 2⁰ = 4 + 2 + 0 = 6
Так же работает и десятичная запись с дробной частью: в числе 852,26 цифра 2 после запятой стоит при 10⁻¹, а 6 при 10⁻². Любое основание в нулевой степени равно 1.
Как перевести число в другую систему счисления
Есть три основных случая.
Из десятичной в любую. Число делят на основание с остатком, потом делят неполное частное, пока не получится 0. Остатки читают снизу вверх.
Из любой в десятичную. Записывают развёрнутую форму и считают сумму. Например, 101101₂ = 32 + 8 + 4 + 1 = 45.
Между двоичной, восьмеричной и шестнадцатеричной. Двоичное число делят на группы справа налево: по 3 цифры для восьмеричной, по 4 для шестнадцатеричной. Каждую группу заменяют одной цифрой. Если в крайней левой группе не хватает цифр, слева дописывают нули.
Разбор: перевести 150 в восьмеричную систему.
- 150 ÷ 8 = 18, остаток 6.
- 18 ÷ 8 = 2, остаток 2.
- 2 ÷ 8 = 0, остаток 2.
- Читаем остатки снизу вверх: 226₈.
Проверка: 2 × 64 + 2 × 8 + 6 = 128 + 16 + 6 = 150.
Разбор: перевести 1101011₂ в восьмеричную и шестнадцатеричную. Для восьмеричной группы по три справа: 1 | 101 | 011. Дописываем нули слева: 001 | 101 | 011, получается 153₈. Для шестнадцатеричной группы по четыре: 0110 | 1011, это 6 и B, ответ 6B₁₆. Проверка: оба числа равны 107 в десятичной системе. Размеры данных в битах и байтах разбираются в теме измерение информации.
Сложение в двоичной и шестнадцатеричной системах
Складывают в столбик так же, как десятичные числа. Меняется только момент переноса: он происходит, когда сумма в разряде достигает основания.
В двоичной системе:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 1 = 10 (пишем 0, переносим 1)
- 1 + 1 + 1 = 11 (пишем 1, переносим 1)
Пример: 1011₂ + 110₂. Выравниваем по правому краю: 1011 и 0110. Справа налево: 1 + 0 = 1; 1 + 1 = 10, пишем 0, переносим 1; 0 + 1 + 1 = 10, пишем 0, переносим 1; 1 + 0 + 1 = 10, пишем 0, переносим 1; в старшем разряде остаётся 1. Результат 10001₂. Проверка: 11 + 6 = 17, а 10001₂ = 16 + 1 = 17.
В шестнадцатеричной системе перенос возникает при сумме 16. Например, 2F₁₆ + 1₁₆: F + 1 = 16 = 10₁₆, пишем 0 и переносим 1, получается 30₁₆. Вычитание и умножение выполняют по тому же принципу, как в десятичной системе, но с заёмом и переносом по основанию.
Где ошибаются чаще всего
- Остатки читают сверху вниз. При переводе из десятичной системы ответ складывается из остатков снизу вверх. Первый остаток даёт самую младшую цифру.
- Группируют двоичные цифры слева. Группы по 3 или 4 цифры всегда отсчитывают от правого края. Недостающие нули дописывают слева.
- Используют цифры, которых нет в системе. В записи 45833₇ цифры 8 нет в семеричной системе, а в 90BG₁₆ нет буквы G. Допустимы цифры строго меньше основания, а в шестнадцатеричной системе только буквы A–F.
- Путают нумерацию разрядов. Степени начинают с нуля у правой цифры. Если начать с единицы, результат окажется в основание раз больше.
- Забывают про перенос в двоичном сложении. Сумма 1 + 1 равна 10, а не 2: двойки в двоичной записи нет.
Какие задания присылают ученики
Чаще всего встречаются перевод из двоичной системы в восьмеричную и шестнадцатеричную, перевод из десятичной делением, сложение и вычитание в столбик, развёрнутая форма и вопросы вроде «сколько единиц в двоичной записи числа». Есть и задания на проверку записи: какие из чисел записаны правильно.
Найди в списке выше задание, похожее на своё, и посмотри ход решения: он показан по шагам. Если такого нет, сфотографируй своё условие и получи решение с пояснениями. Для сложных заданий пригодятся также темы логика и основы программирования, где системы счисления тоже встречаются.