Информатика ·Языки чисел
Системы счислениябиты · разряды · деление · практика
Системы счисления
Учимся переводить целые числа из одной системы в другую
1Что такое система счисления
Привычные числа — это десятичная система
Возьмём число 347. Что оно значит? Не просто «три, четыре, семь», а:
347 = 3·100 + 4·10 + 7·1
= 3·10² + 4·10¹ + 7·10⁰
Это десятичная система. У неё 10 разных цифр (0–9), и каждый разряд — степень десятки. Почему именно 10? Потому что у нас 10 пальцев. Если бы у людей было 8 пальцев, мы бы считали восьмёрками.
Двоичная система — та, которую любит компьютер
У компьютера «пальцев» всего два: ток есть (1) или тока нет (0). Поэтому он использует двоичную систему. Цифры только 0 и 1, а каждый разряд — степень двойки.
1011₂ = 1·8 + 0·4 + 1·2 + 1·1
= 1·2³ + 0·2² + 1·2¹ + 1·2⁰
= 11₁₀
Маленькая цифра внизу — это основание. 1011₂ читается как «один-ноль-один-один в двоичной», не «тысяча одиннадцать».
Ещё две системы, которые часто встречаются
Восьмеричная (основание 8, цифры 0–7) и шестнадцатеричная (основание 16, цифры 0–9 и буквы A–F, где A=10, B=11, C=12, D=13, E=14, F=15). Программисты любят шестнадцатеричную: одна её цифра = ровно 4 двоичных бита.
Система
Основание
Цифры
Пример
Двоичная
2
0, 1
1011₂
Восьмеричная
8
0...7
175₈
Десятичная
10
0...9
347
Шестнадцат.
16
0...9, A...F
2F₁₆
2Поиграем с битами
Перед вами 8 битов. Каждый — как лампочка: горит (1) или нет (0). Нажимайте на квадратики и смотрите, какое десятичное число получается. Над каждым битом написано, «сколько он стоит» — его вес.
Игра в биты↻ нажми на квадрат, чтобы переключить
Двоичное: 00000000 = десятичное: 0
Поэкспериментируйте. Зажгите все 8 битов — сколько получилось? Это максимум для одного байта. Зажгите только самый левый — он стоит ровно 128, потому что 2⁷ = 128. А самый правый = 1, потому что 2⁰ = 1.
Степени двойки — выучите наизусть
Без этих чисел переводы не получатся. Они должны отскакивать от зубов:
3Перевод: десятичное → двоичное
Главный приём — деление с остатком. Делите число на 2, записываете остаток (это либо 0, либо 1). Частное снова делите на 2, остаток записываете. И так пока частное не станет 0. Потом читаете остатки снизу вверх — это и есть двоичная запись.
# Пример: переведём 13 в двоичную
13 ÷ 2 = 6, остаток 1 # нечётное → 1
6 ÷ 2 = 3, остаток 0 # чётное → 0
3 ÷ 2 = 1, остаток 1
1 ÷ 2 = 0, остаток 1 # дошли до нуля — стоп
# Читаем остатки снизу вверх:
13₁₀ = 1101₂
Запоминалка: чётное число даёт остаток 0, нечётное — остаток 1. Это самый быстрый способ.
Проверка. Получившееся двоичное число всегда можно проверить обратным переводом. Сделайте это хотя бы для первых пяти задач — так руки запомнят оба направления.
4Перевод: двоичное → десятичное
Здесь даже проще. Подписываете под каждым битом его вес (справа налево: 1, 2, 4, 8, 16, 32, ...) и складываете те веса, под которыми стоит единица.
# Пример: переведём 10110 в десятичную
1 0 1 1 0 # исходное число
16 8 4 2 1 # веса разрядов (справа налево)
✓ ✓ ✓
16 + 4 + 2 = 22
# Ответ: 10110₂ = 22₁₀
5Восьмеричная и шестнадцатеричная
Алгоритм точно такой же, только делим на 8 или на 16. Главное в шестнадцатеричной — помнить, что после 9 идут буквы: A=10, B=11, C=12, D=13, E=14, F=15.
# Пример: 200 → шестнадцатеричную
200 ÷ 16 = 12, остаток 8
12 ÷ 16 = 0, остаток 12 = C
# Читаем снизу вверх:
200₁₀ = C8₁₆
6Хитрые задачи — на понимание
Здесь нужно не просто перевести, а подумать.
Задача 1↻ нажми, чтобы проверить
Что больше: 1010₂ или 11₁₀?
Решение — 1↻ назад
Внимание, ловушка! Нельзя сравнивать числа в разных системах напрямую. Сначала приведём к одной.
1010₂ = 1·8 + 0·4 + 1·2 + 0·1 = 10
10 < 11, значит 11₁₀ больше.
Запомните
Запись 1010 сама по себе ничего не значит, пока не указано основание. 1010₂ = 10, а 1010₁₀ = тысяча десять. Разница огромная.
Задача 2↻ нажми, чтобы проверить
Сколько единиц в двоичной записи числа 31?
Решение — 2↻ назад
31 = 16 + 8 + 4 + 2 + 1 = 11111₂ — пять единиц.
Заметьте: 31 = 2⁵ − 1. Числа вида (степень двойки минус 1) всегда выглядят как сплошные единицы в двоичной.
Задача 3↻ нажми, чтобы проверить
Сложите 101₂ + 110₂ — не переводя в десятичную.
Решение — 3↻ назад
Складываем как в столбик. Правило: 1+1 = 10 (то есть 0 пишем, 1 в уме).
1 0 1
+ 1 1 0
-------
1 0 1 1
Ответ: 1011₂. Проверка: 5 + 6 = 11. И правда 1011₂ = 8+2+1 = 11. ✓
Задача 4↻ нажми, чтобы проверить
Какое число записано как 1F₁₆?
Решение — 4↻ назад
F — это 15. Веса разрядов в шестнадцатеричной: ...256, 16, 1.
1F₁₆ = 1·16 + 15·1 = 16 + 15 = 31
Заметили? Это то же 31, что и в задаче 2. Одно число — разные записи: 31, 11111₂, 37₈, 1F₁₆.
Задача 5 — со звёздочкой↻ нажми, чтобы проверить
Расположите по возрастанию: 1011₂, 13, A₁₆, 14₈.
Решение — 5↻ назад
Переведём всё в десятичную:
• 1011₂ = 8+2+1 = 11
• 13 = 13
• A₁₆ = 10 (А — это 10)
• 14₈ = 1·8 + 4 = 12
По возрастанию: 10, 11, 12, 13. Значит:
A₁₆ < 1011₂ < 14₈ < 13
7Тренажёр — до 20 правильных ответов
Без подсматривания. Программа даёт случайные задачи, считает правильные/неверные, показывает серию. Цель урока — 10 правильных подряд. Получится не сразу — и это нормально.
Решено: 0 Верно: 0 Ошибок: 0 Серия: 0 Лучшая серия: 0
Цель: 10 правильных подряд