Обновлено:
Калькулятор двоичной системы
Двоичная система – язык, на котором «думают» все компьютеры. Программисты, инженеры и студенты регулярно выполняют расчёты с двоичными числами: от простого сложения до побитовых операций. Калькулятор двоичной системы упрощает эту работу, мгновенно выполняя арифметические и логические операции с пошаговым разбором.
Что такое двоичная система счисления
Двоичная система – позиционная система счисления с основанием 2. В ней используются только две цифры: 0 и 1. Каждая позиция в числе соответствует степени двойки, начиная с 2⁰ = 1 справа.
Пример: 1101₂ = 1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 8 + 4 + 0 + 1 = 13₁₀
Компьютеры используют двоичную систему, потому что электронные схемы имеют два устойчивых состояния: высокий сигнал (1) и низкий (0). Это обеспечивает надёжность хранения и обработки данных.
Таблица соответствия двоичных и десятичных чисел
| Двоичное | Десятичное | Двоичное | Десятичное |
|---|---|---|---|
| 0 | 0 | 1000 | 8 |
| 1 | 1 | 1001 | 9 |
| 10 | 2 | 1010 | 10 |
| 11 | 3 | 1011 | 11 |
| 100 | 4 | 1100 | 12 |
| 101 | 5 | 1101 | 13 |
| 110 | 6 | 1110 | 14 |
| 111 | 7 | 1111 | 15 |
Арифметические операции в двоичной системе
Сложение двоичных чисел
Правила двоичного сложения:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 10 (пишем 0, переносим 1)
- 1 + 1 + 1 = 11 (пишем 1, переносим 1)
Пример: 1011 + 1101
1011 (11)
+ 1101 (13)
------
11000 (24)
Вычитание двоичных чисел
Правила вычитания:
- 0 − 0 = 0
- 1 − 0 = 1
- 1 − 1 = 0
- 0 − 1 = 1 (заём из старшего разряда)
Пример: 1111 − 1010
1111 (15)
- 1010 (10)
------
0101 (5)
Умножение двоичных чисел
Двоичное умножение проще десятичного, так как множитель состоит только из 0 и 1:
- 0 × 0 = 0
- 0 × 1 = 0
- 1 × 0 = 0
- 1 × 1 = 1
Пример: 101 × 11
101 (5)
× 11 (3)
-----
101
101
-----
1111 (15)
Деление двоичных чисел
Деление выполняется аналогично делению в столбик в десятичной системе, но с использованием двоичного вычитания.
Пример: 1111 ÷ 11
1111 ÷ 11 = 101 (15 ÷ 3 = 5)
Побитовые операции
Побитовые операции работают с отдельными битами числа. Они широко применяются в программировании для масок, флагов и оптимизации.
Операция AND (И)
Возвращает 1, только если оба бита равны 1. Обозначается символом &.
1010 (10)
& 1100 (12)
------
1000 (8)
Применяется для извлечения определённых битов и создания масок.
Операция OR (ИЛИ)
Возвращает 1, если хотя бы один бит равен 1. Обозначается символом |.
1010 (10)
| 1100 (12)
------
1110 (14)
Используется для установки определённых битов в 1.
Операция XOR (Исключающее ИЛИ)
Возвращает 1, если биты различны. Обозначается символом ^.
1010 (10)
^ 1100 (12)
------
0110 (6)
Применяется для инвертирования битов, простого шифрования и обмена значений без временной переменной.
Операция NOT (НЕ)
Инвертирует все биты: 0 становится 1, 1 становится 0. Обозначается символом ~.
NOT 1010 = 0101
Битовые сдвиги
Сдвиги перемещают все биты числа влево или вправо на указанное количество позиций.
Сдвиг влево («)
Каждый сдвиг влево на 1 позицию умножает число на 2.
0011 << 2 = 1100
(3 × 2 × 2 = 12)
Сдвиг вправо (»)
Каждый сдвиг вправо на 1 позицию делит число на 2 с отбрасыванием остатка.
1100 >> 2 = 0011
(12 ÷ 2 ÷ 2 = 3)
Как перевести число из одной системы в другую
Из десятичной в двоичную
Последовательно делите число на 2 и записывайте остатки. Двоичное число – остатки в обратном порядке.
Пример: переведём 25 в двоичную систему
25 ÷ 2 = 12, остаток 1
12 ÷ 2 = 6, остаток 0
6 ÷ 2 = 3, остаток 0
3 ÷ 2 = 1, остаток 1
1 ÷ 2 = 0, остаток 1
Результат: 11001₂
Из двоичной в десятичную
Умножьте каждый бит на соответствующую степень двойки и сложите результаты.
Пример: 11001₂ = 1×16 + 1×8 + 0×4 + 0×2 + 1×1 = 16 + 8 + 0 + 0 + 1 = 25₁₀
Где применяются двоичные вычисления
Программирование. Работа с флагами, масками, битовыми полями в структурах данных. Оптимизация производительности через битовые операции вместо арифметических.
Системное администрирование. Расчёт сетевых масок, IP-адресов, прав доступа в Unix-системах.
Криптография. Многие алгоритмы шифрования основаны на побитовых операциях.
Цифровая электроника. Проектирование логических схем, микроконтроллеров, процессоров.
Образование. Изучение архитектуры компьютеров, систем счисления на курсах информатики.
Знаковые и беззнаковые числа
Беззнаковые двоичные числа представляют только неотрицательные значения (0 и выше). В 8-битном формате диапазон: от 0 до 255.
Знаковые числа используют старший бит как знаковый: 0 для положительных, 1 для отрицательных. Отрицательные числа обычно представляются в дополнительном коде – инверсия всех битов плюс 1.
Пример: −5 в 8-битном дополнительном коде
- 5 = 00000101
- Инверсия: 11111010
- Добавляем 1: 11111011
Диапазон 8-битных знаковых чисел: от −128 до 127.
Часто задаваемые вопросы
Чем отличается двоичная система от десятичной?
Двоичная система использует только две цифры – 0 и 1, тогда как десятичная оперирует десятью цифрами от 0 до 9. В двоичной системе каждая позиция числа соответствует степени двойки, а не степени десятки.
Для чего нужны побитовые операции?
Побитовые операции применяются в низкоуровневом программировании для работы с флагами, масками, кодированием данных и оптимизации. Они быстрее обычных арифметических операций и часто используются в системном программировании.
Как перевести десятичное число в двоичное вручную?
Разделите число на 2 и запишите остаток. Продолжайте делить частное на 2, пока не получите 0. Двоичное число – это остатки, записанные в обратном порядке. Например, 13 → 1101.
Что такое битовый сдвиг и как он работает?
Битовый сдвиг перемещает все биты числа влево или вправо на заданное количество позиций. Сдвиг влево на 1 равносилен умножению на 2, сдвиг вправо – целочисленному делению на 2.
Какие системы счисления поддерживает калькулятор?
Калькулятор работает с четырьмя системами: двоичной (BIN, основание 2), восьмеричной (OCT, основание 8), десятичной (DEC, основание 10) и шестнадцатеричной (HEX, основание 16).
Почему компьютеры используют двоичную систему?
Электронные компоненты имеют два устойчивых состояния – включено и выключено, что удобно представить как 1 и 0. Двоичная система надёжна для хранения и передачи данных в цифровых устройствах.