Разряды двоичного числа являются степенями двойки
В системе счисления с основанием 2 используются только цифры 0 и 1. Справа налево веса позиций равны 1, 2, 4, 8, 16 и далее удваиваются.
Число 10110₂ содержит единицы в позициях 16, 4 и 2, поэтому равно 22₁₀. Такой разбор даёт независимый способ проверить ввод и результат калькулятора.
Начальные нули не влияют на числовую величину. Они имеют значение только в контексте фиксированной ширины регистра, файла или сетевого поля.
Формулы и обозначения
10110₂ = 1×2⁴ + 0×2³ + 1×2² + 1×2¹ + 0×2⁰10110₂ = 16 + 4 + 2 = 22₁₀
Сложение использует перенос в следующий разряд
Основные правила: 0+0=0, 0+1=1, 1+0=1, а 1+1=10₂. При наличии переноса сумма 1+1+1 даёт 11₂: единица остаётся в столбце и единица переносится влево.
Для 1010₂ + 0111₂ работа справа налево приводит к 10001₂. Десятичная проверка подтверждает 10 + 7 = 17.
Сумма двух неотрицательных чисел имеет не больше чем на один значащий бит больше самого длинного операнда. Неожиданно длинная запись может указывать на ошибку копирования.
Вычитание занимает 10₂ из старшего столбца
Когда из текущего нуля нужно вычесть единицу, займ из соседнего старшего разряда превращается в 10₂, то есть две единицы текущего разряда. После этого столбец вычисляется как 10₂ − 1₂ = 1₂.
Разность 1010₂ − 0011₂ равна 0111₂ и обычно нормализуется до 111₂. Проверка в десятичная система: 10 − 3 = 7.
Если вычитаемое больше уменьшаемого, математический результат отрицателен. Рассматриваемый калькулятор выводит знак минус и модуль, не выбирая аппаратное кодирование автоматически.
Умножение и деление повторяют десятичные алгоритмы
В умножении частичный результат для бита 0 равен нулю, а для бита 1 равен множимому. Каждая следующая строка сдвигается влево, после чего строки складываются по двоичным правилам.
Двоичное деление последовательно сравнивает делитель с текущей частью делимого и формирует биты частного. Остаток всегда неотрицателен и меньше положительного делителя.
Проверка деления универсальна для любой системы: умножьте делитель на частное и прибавьте остаток. Результат должен восстановить исходное делимое.
Формулы и обозначения
a = b × q + r0 ≤ r < b1010₂ = 11₂ × 11₂ + 1₂
Группы битов ускоряют перевод в восьмеричная система и шестнадцатеричное число
Основание 8 равно 2³, поэтому одна восьмеричная цифра соответствует ровно трём битам. Дополните левую группу нулями при необходимости и замените каждый блок значением от 0 до 7.
Основание 16 равно 2⁴. Группы по четыре бита превращаются в цифры 0–9 и буквы A–F. Например, 1010₂ становится A₁₆, а 1111₂ — F₁₆.
Обратное преобразование выполняется заменой каждой восьмеричной цифры тремя битами либо каждой шестнадцатеричной цифры четырьмя. Такой перевод точен и не требует промежуточного округления.
- Группировать справа налево.
- Добавлять нули только слева.
- Для восьмеричная система использовать блоки по 3 бита.
- Для шестнадцатеричное число использовать блоки по 4 бита.
- Удалить незначащие нули в нормализованной записи.
Знак минус и дополнительный код решают разные задачи
Запись −101₂ прямо сообщает, что величина отрицательна и её модуль равен пяти. Она подходит для математического результата без фиксированной длины.
Дополнительный код описывает хранение отрицательного числа в слове заданной ширины. Например, −1 состоит из восьми единиц при ширине 8 бит и из шестнадцати единиц при ширине 16 бит.
Без выбранной ширины нельзя однозначно сформировать строку дополнительного кода, определить диапазон или интерпретировать старший бит как знак. Поэтому инструмент не подменяет эти соглашения.
Длина и вес единиц помогают анализировать запись
Битовая длина нормализованного положительного числа показывает, сколько позиций требуется для его величины. Число единичных битов называют также весом Хэмминга.
Эти показатели полезны для битовых масок, кодов и оценки размера, но не подтверждают арифметическую операцию сами по себе. Разные числа могут иметь одинаковую длину и одинаковое количество единиц.
Для окончательной проверки повторите действие в десятичной системе и снова преобразуйте ответ. При делении обязательно проверяйте остаток, а при отрицательном результате учитывайте знак отдельно от величины.
Сохраняйте границы применения калькулятора
Страница выполняет арифметику целых неотрицательных операндов, причём вычитание может дать отрицательный результат. Она не выполняет и, или, XOR, логические сдвиги или операции над дробной двоичной точкой.
Строка данных, адрес памяти и знаковое машинное слово требуют дополнительных соглашений. Одинаковая последовательность битов может означать разные значения в зависимости от формата.
Ограничение 4 096 бит на операнд удерживает ввод и вывод управляемыми в браузере. Для очень длинного ответа используйте десятичную и шестнадцатеричная система-формы как независимые контрольные представления.
Частые вопросы
Почему в двоичной системе есть только 0 и 1?
Основание равно двум, поэтому каждый разряд допускает две цифры, а достижение двух переносит единицу в следующую позицию.
Как проверить двоичное сложение?
Переведите оба операнда в десятичную систему, сложите их и преобразуйте полученную сумму обратно в двоичная система.
Что такое перенос при сложении?
Это единица, переходящая в старший разряд, когда сумма текущего столбца равна двум или трём.
Что означает займ при вычитании?
Одна единица старшего двоичного разряда превращается в 10₂, то есть две единицы текущей позиции.
Как проверить двоичное деление?
Умножьте делитель на частное, прибавьте остаток и убедитесь, что получилось исходное делимое.
Почему шестнадцатеричное число использует буквы A–F?
Они обозначают десятичные значения от 10 до 15, чтобы каждое помещалось в одну цифру системы с основанием 16.
Как заполнить неполную группу битов?
Добавьте нули слева до трёх позиций для восьмеричная система или до четырёх для шестнадцатеричное число; величина при этом не изменится.
Что такое вес Хэмминга двоичного числа?
Это количество позиций со значением 1 в рассматриваемой битовой строке или нормализованной записи.
Считается ли начальный ноль битом?
В фиксированном слове считается, но в обычной числовой записи он незначащий и может быть удалён.
Какую ширину использует отрицательный ответ?
Никакую фиксированную: калькулятор показывает обычный знак минус и двоичный модуль результата.
Почему ширина важна для дополнительного кода?
Она определяет число битов, диапазон значений и конкретную последовательность для одного и того же отрицательного числа.
Можно ли точно считать с тысячами битов?
Да, в пределах ограничения используется точная целочисленная арифметика, хотя очень длинный вывод требует внимательной проверки.
Как сложить два двоичных числа?
Складывайте справа налево и переносите единицу в следующий разряд, когда сумма столбца достигает 10₂ или 11₂.
Проверьте свой сценарий
Введите собственные данные в Двоичный калькулятор и сопоставьте результат с методом из руководства.
