Двоичный калькулятор столбиком

Двоичный калькулятор столбиком

Введите положительные целые или дробные двоичные числа, состоящие только из цифр 0 и 1.

Число 1
Число 2
Выберите тип операции
Количество знаков после запятой в ответе
Показать ход решения
Исходное выражение
101.1101 + 1.00011
Решение столбиком
    1         1    
  1 0 1 . 1 1 0 1 0
+ 0 0 1 . 0 0 0 1 1
  1 1 0 . 1 1 1 0 1
Пошаговый ход решения
  1. Разряд 2-5: 0 + 1 = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.
  2. Разряд 2-4: 1 + 1 = 10₂ Записываем в ответ цифру 0, а единицу (1) переносим в следующий старший разряд.
  3. Разряд 2-3: 0 + 0 + 1 (из переноса) = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.
  4. Разряд 2-2: 1 + 0 = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.
  5. Разряд 2-1: 1 + 0 = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.
  6. Разряд 20: 1 + 1 = 10₂ Записываем в ответ цифру 0, а единицу (1) переносим в следующий старший разряд.
  7. Разряд 21: 0 + 0 + 1 (из переноса) = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.
  8. Разряд 22: 1 + 0 = 1₂ Записываем в ответ цифру 1, переноса в следующий разряд нет.

О калькуляторе

Данный калькулятор предназначен для выполнения базовых арифметических операций с двоичными числами.

Он работает как с положительными целыми, так и с дробными значениями, предоставляя подробную пошаговую демонстрацию всего процесса вычислений в формате столбиком.

Доступные операции и возможности:

  • Сложение: вычисление суммы двух двоичных чисел с автоматическим выравниванием разрядов и демонстрацией переноса единиц в старшие разряды.
  • Вычитание: расчет разности с автоматическим определением большего и меньшего числа. Программа детально фиксирует маркеры займа (точки) над уменьшаемым, включая случаи сквозного займа через несколько нулей.
  • Умножение: поразрядное перемножение строк со ступенчатым сдвигом влево и последующим суммированием результатов по правилам двоичной арифметики.
  • Деление: деление уголком с автоматическим выделением неполного делимого, сносом цифр и расчетом промежуточных остатков.

Настройки и ограничения:

  • При вычислении сложения, вычитания и умножения поддерживается работа как с целыми, так и с дробными положительными двоичными числами. В качестве разделителя допускается использовать как точку, так и запятую.
  • Для операции деления на текущий момент установлено ограничение: на вход принимаются только целые положительные числа, при этом первое число (делимое) должно быть больше или равно второму числу (делителю).
  • Калькулятор снабжен настройкой точности вычислений. Можно самостоятельно задать желаемое количество знаков после запятой. Это необходимо при делении, результатом которого становится бесконечная периодическая дробь. При достижении указанного лимита расчет останавливается автоматически.

Состав итогового ответа:

  • Таблица столбика (или уголка): наглядная визуализация вычислений, где каждый символ, линия, знак операции и вспомогательный маркер (перенос или заём) занимают свои строгие места.
  • Пошаговый ход решения: подробный текстовый список этапов, описывающий логику вычислений для каждого разряда справа налево с указанием текущих математических формул и причин изменения цифр.

Арифметика в позиционных системах счисления: правила двоичных вычислений

В основе двоичной системы счисления лежит тот же принцип позиционности, что и в привычной нам десятичной системе. Это означает, что значение каждой цифры в числе напрямую зависит от её позиции (разряда). Главное отличие заключается в основании системы: двоичная система использует всего две цифры — 0 и 1. Вследствие этого арифметические действия в двоичной системе выполняются по общему принципу «в столбик», но имеют свои специфические таблицы и правила переноса разрядов.

1. Двоичное сложение

Сложение двоичных чисел выполняется поразрядно, начиная с младшего (самого правого) разряда к старшему (левому). Базовые правила сложения двух двоичных цифр описываются следующей таблицей:

  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 10₂ (записывается 0, а единица переносится в следующий старший разряд)

Если в текущем разряде уже присутствует единица переноса из предыдущего младшего разряда, то при сложении двух единиц получается сумма 1 + 1 + 1 = 11₂. В этом случае в текущий разряд ответа записывается 1, и ещё одна 1 переносится в следующий старший разряд.

При работе с дробными числами перед началом вычислений разряды слагаемых обязательно выравниваются относительно разделительной точки. Если в дробной части одного из чисел знаков меньше, к нему справа приписываются незначащие нули. В процессе сложения точка в итоговом результате сносится строго под точками слагаемых.

Рассмотрим пример сложения двоичных дробей с переносом единиц через разделительную точку:

Пример сложения двоичных чисел столбиком

Разбор примера по разрядам (справа налево):

  1. Разряд 2⁻²: складываем нижний ноль выравнивания и верхнюю единицу: 1 + 0 = 1. Записываем 1 в ответ.
  2. Разряд 2⁻¹: складываем две единицы: 1 + 1 = 10₂. Записываем в ответ 0, а 1 переносим в следующий разряд.
  3. Разделительная точка: переносим точку в ответ строго под слагаемыми.
  4. Разряд 2⁰: складываем цифры целой части с учетом единицы переноса: 0 + 1 + 1 (перенос) = 10₂. Записываем в ответ 0, а 1 переносим дальше.
  5. Разряд 2¹: складываем старшую цифру с переносом: 1 + 1 (перенос) = 10₂. Записываем 0 в ответ, а оставшаяся единица образует новый старший разряд результата.

2. Двоичное вычитание

Вычитание двоичных чисел на практике также выполняется столбиком от младших разрядов к старшим. Базовая таблица вычитания двоичных цифр имеет следующий вид:

  • 0 − 0 = 0
  • 1 − 0 = 1
  • 1 − 1 = 0
  • 10₂ − 1 = 1 (производится заём единицы из старшего разряда, которая в текущем младшем разряде равна двум: 2 − 1 = 1)

При вычитании столбиком уменьшаемое всегда должно быть больше или равно вычитаемому. Если в исходном выражении это не так, знаки меняют местами, а к итоговому результату приписывают минус. Как и при сложении, дробные части чисел предварительно выравнивают по разделительной точке с помощью незначащих нулей.

Основную сложность в вычитании представляет каскадный заём. Если текущая цифра уменьшаемого равна 0, а из неё нужно вычесть 1, алгоритм движется влево до первой встречной единицы старшего разряда. Эта единица забирается (превращается в 0), а все промежуточные нули, через которые проходил заём, становятся равными 1 (так как по правилам двоичной системы позиционного заёма \(10_2 - 1 = 1\)).

Рассмотрим пример каскадного вычитания двоичных дробей через точку:

Пример вычитания двоичных чисел столбиком

Разбор примера по разрядам (справа налево):

  1. Разряд 2⁻²: после выравнивания вычитаем из верхнего нуля нижнюю единицу (0 − 1). Нам нужен заём. Ближайшая единица находится в разряде 2⁻¹. Мы забираем её (там остаётся 0), а наш текущий разряд получает значение 10₂. Вычисляем: 10₂ − 1 = 1. Записываем 1.
  2. Разряд 2⁻¹: здесь остался 0 после предыдущего займа. Нам нужно вычесть 1 (0 − 1). Снова требуется заём. Двигаемся влево через точку. В разряде 2⁰ стоит ноль, поэтому заём идёт транзитом дальше, превращая этот ноль в единицу. Истинным донором становится единица в разряде 2¹. Она обнуляется, а наш разряд 2⁻¹ получает 10₂. Вычисляем: 10₂ − 1 = 1. Записываем 1.
  3. Разделительная точка: переносим точку в ответ строго под уменьшаемым и вычитаемым.
  4. Разряд 2⁰: этот ноль превратился в 1, пока через него «летел» заём для дробной части. Вычисляем: 1 − 0 = 1. Записываем 1.
  5. Разряд 2¹: эта единица была отдана при заёме на шаге 2, поэтому разряд стал равен 0. Вычисляем: 0 − 0 = 0. Ведущий ноль в итоговом ответе опускается.

3. Двоичное умножение

Умножение двоичных чисел выполняется по тем же правилам, что и умножение десятичных чисел столбиком. Главное преимущество двоичной системы — предельно простая таблица умножения, состоящая всего из четырёх базовых правил:

  • 0 × 0 = 0
  • 0 × 1 = 0
  • 1 × 0 = 0
  • 1 × 1 = 1

Процесс вычисления состоит из двух последовательных этапов:

  1. Поразрядное умножение: верхнее число последовательно умножается на каждый разряд нижнего числа (множителя), начиная справа налево. Если текущая цифра множителя равна 1, промежуточная строка полностью дублирует верхнее число. Если равна 0 — записывается строка из нулей. Каждая новая промежуточная строка сдвигается на один разряд влево относительно предыдущей.
  2. Сложение промежуточных результатов: все полученные строки складываются между собой по правилам двоичного сложения столбиком с учётом их ступенчатого сдвига.

Правило запятой для дробных чисел: при умножении двоичных дробей в столбик сначала убирают разделительные точки и перемножают числа как целые. В полученном финальном ответе необходимо отделить запятой знаки дроби справа налево. Количество отделяемых знаков равно сумме знаков после точки у обоих исходных чисел.

Рассмотрим пример умножения двоичных дробей 1.1 × 1.01 со смещением строк и последующим переносом запятой:

Пример умножения двоичных чисел столбиком

Разбор примера по шагам:

  1. Подготовка: у первого числа (1.1) один знак после точки, у второго (1.01) — два знака. Временно убираем точки и переходим к умножению целых чисел 11₂ и 101₂.
  2. Первая промежуточная строка: умножаем 11₂ на младшую единицу множителя. Получаем строку 11.
  3. Вторая промежуточная строка: умножаем 11₂ на ноль множителя. Получаем строку 00, сдвинутую на один разряд влево.
  4. Третья промежуточная строка: умножаем 11₂ на старшую единицу множителя. Получаем строку 11, сдвинутую ещё на один разряд влево.
  5. Сложение и фиксация точки: складываем три строки с учётом сдвигов, что даёт число 1111₂. Считаем сумму знаков после точки исходных чисел: 1 + 2 = 3 разряда. Отсчитываем в ответе 3 цифры справа налево и ставим разделительную точку. Итоговый результат: 1.111.

4. Двоичное деление

Деление двоичных чисел выполняется методом «уголка» (длинного деления) аналогично десятичной арифметике. Однако в двоичной системе этот процесс значительно проще: на каждом этапе делитель может поместиться в неполном делимом либо ровно 1 раз, либо 0 раз. Таким образом, отпадает необходимость в подборе промежуточных цифр частного.

Алгоритм деления целых двоичных чисел состоит из следующих шагов:

  1. Выделение неполного делимого: двигаясь слева направо по разрядам делимого, выбирается минимальная группа цифр, которая больше или равна делителю.
  2. Сравнение и вычитание: если выделенное неполное делимое больше или равно делителю, в частное записывается 1, а делитель вычитается из этого неполного делимого. Если оно меньше делителя — в частное пишется 0.
  3. Снос следующей цифры: к полученному остатку сносится следующая цифра делимого, образуя новое неполное делимое, и цикл сравнения повторяется.

Переход к дробной части: если целые разряды исходного делимого полностью закончились, а текущий остаток всё ещё не равен нулю, деление продолжается в дробной части. Для этого в строку частного ставится разделительная точка, а к полученному остатку справа приписывается незначащий ноль. Вычисления продолжаются по тем же правилам до тех пор, пока очередной остаток не станет равным нулю.

Рассмотрим пример деления двоичных чисел уголком с переходом в дробную часть и конечным результатом:

Пример деления двоичных чисел уголком

Разбор примера по шагам:

  1. Шаг 1: выделяем первое неполное делимое — три левых знака 101₂. Число 101₂ больше делителя 100₂. Записываем в частное 1, вычитаем 100₂ и получаем остаток 1.
  2. Шаг 2: сносим последнюю целую цифру делимого — 1. Получаем число 11₂. Оно меньше делителя 100₂. Записываем в частное 0, а остаток остаётся равным 11₂. Целая часть делимого полностью закончилась.
  3. Шаг 3 (Разделительная точка): поскольку целые цифры закончились, ставим в частное разделительную точку. К остатку 11₂ приписываем справа ноль дробной части. Получаем число 110₂. Оно больше делителя 100₂. Записываем в частное 1, вычитаем 100₂ и получаем остаток 10₂.
  4. Шаг 4: приписываем к остатку 10₂ ещё один ноль дробной части. Получаем число 100₂. Оно равно делителю 100₂. Записываем в частное 1, вычитаем 100₂, и остаток становится равным 0. Деление успешно завершено. Итоговый результат: 10.11.

Особенности деления двоичных дробей

Если в делении участвуют дробные двоичные числа, математические законы позволяют легко привести их к привычному целому виду. Наличие разделительной точки в делимом никак не мешает расчётам, однако делить на дробное число «уголком» напрямую нельзя. Поэтому ключевое правило двоичного деления дробей заключается в избавлении от точки в делителе.

Для этого выполняются следующие действия:

  • В делителе разделительная точка переносится вправо до самого конца числа, превращая его в целое.
  • В делимом точка переносится вправо на то же самое количество разрядов, на которое она была смещена в делителе.
  • Если в делимом целых цифровых разрядов для переноса не хватает, к нему справа приписывается необходимое количество незначащих нулей.

После такого выравнивания исходный дробный пример превращается в обычное деление целых чисел, а итоговое частное остаётся абсолютно неизменным.

Рассмотрим пример деления двоичных дробей 1.1 и 0.11 со смещением знаков:

Пример деления двоичных дробей уголком

Разбор примера по шагам:

  1. Подготовка: нам необходимо разделить дроби 1.1₂ на 0.11₂. В делителе (0.11) два знака после точки. Чтобы сделать его целым, переносим точку на 2 разряда вправо — получаем число 11₂. В делимом (1.1) после точки стоит всего один знак, поэтому при переносе на 2 разряда мы дописываем справа один ноль — получаем число 110₂. Исходный пример превратился в деление целых чисел: 110₂ ÷ 11₂.
  2. Шаг 1: выделяем первое неполное делимое — две левые цифры 11₂. Число 11₂ равно делителю 11₂. Записываем в частное первую цифру 1, вычитаем 11₂ и получаем промежуточный остаток 0.
  3. Шаг 2: у нас остался последний неиспользованный ноль в конце делимого. Так как остаток от предыдущего вычитания равен нулю, мы просто переносим этот ноль из делимого в конец нашего частного.
  4. Завершение: Финальный ответ: 10₂.