Конвертер двоичных дробей

Переводите двоичные дроби в десятичные и десятичные дроби в двоичные с пошаговыми пояснениями.

Выберите направление преобразования, введите значение и сразу получите результат с объяснением алгоритма.

Конвертер двоичных дробей
Переводите двоичные дроби в десятичные и десятичные дроби в двоичные с пошаговыми пояснениями.

Введите двоичную дробь (цифры 0 и 1, разделённые десятичной точкой) и получите точный десятичный эквивалент.

О конвертере двоичных дробей

Двоичные дроби расширяют двоичные целые числа на область нецелых величин, используя разрядные значения, являющиеся отрицательными степенями двойки. Подобно тому как десятичная система назначает позициям справа от десятичной точки десятые (10⁻¹), сотые (10⁻²), тысячные (10⁻³) и так далее, двоичная система назначает этим же позициям половины (2⁻¹ = 0.5), четверти (2⁻² = 0.25), восьмые (2⁻³ = 0.125), шестнадцатые (2⁻⁴ = 0.0625) и так далее. Каждый бит справа от двоичной точки представляет одну из этих убывающих степеней двойки. Перевод двоичной дроби в десятичную выполняется просто. Разделите число по двоичной точке. Целую часть преобразуйте стандартным способом: самый правый бит имеет вес 2⁰, следующий — 2¹, и так далее влево. Для дробной части самый левый бит после двоичной точки умножается на 2⁻¹, следующий — на 2⁻², а каждый последующий — на очередную отрицательную степень. Сложите все вклады, чтобы получить точное десятичное значение. Например, 101.101 в двоичной системе равно (1×4) + (0×2) + (1×1) + (1×0.5) + (0×0.25) + (1×0.125) = 5 + 0.5 + 0.125 = 5.625. Перевод десятичной дроби в двоичную требует двух отдельных процедур. Целая часть преобразуется повторным делением на 2 с записью остатков. Дробная часть преобразуется повторным умножением на 2: умножьте дробь на 2, запишите целую часть результата (0 или 1) как следующую двоичную цифру, затем продолжайте с оставшейся дробной частью. Повторяйте, пока дробь не станет нулём или пока не будет достигнута нужная точность. Для 5.625: целое 5 = 101₂; дробь 0.625 × 2 = 1.25 → бит 1; 0.25 × 2 = 0.5 → бит 0; 0.5 × 2 = 1.0 → бит 1; дробь стала нулём, поэтому результат — 101.101₂. Важно понимать, что не все десятичные дроби имеют конечное двоичное представление. Как 1/3 нельзя записать конечной десятичной дробью, так и многие простые десятичные дроби — включая 0.1, 0.2 и 0.3 — требуют бесконечно многих двоичных битов для точного представления. Это основная причина ошибок округления с плавающей точкой в компьютерах. Настройка точности в этом конвертере определяет, сколько дробных битов вычисляется; увеличение точности даёт более близкое приближение, но для бесконечных дробей может никогда не дать точного результата. Двоичные дроби широко используются в вычислениях. Стандарт IEEE 754 для арифметики с плавающей точкой кодирует числа одинарной и двойной точности как двоичные дроби с неявным ведущим битом 1 и смещённым порядком. Цифровые сигнальные процессоры представляют аудио- и графические данные как двоичные дроби с фиксированной точкой, называемые числами Q-формата. Понимание того, как десятичные значения отображаются в двоичные дроби, важно для всех, кто пишет низкоуровневый код, работает со встраиваемыми системами или отлаживает проблемы численной точности в ПО.

Примеры преобразования двоичных дробей

Типичные преобразования, показывающие как перевод из двоичной системы в десятичную, так и из десятичной в двоичную.

ВводРезультатПримечания
101.101 (двоичное)5.625 (десятичное)1×4 + 0×2 + 1×1 + 1×0.5 + 0×0.25 + 1×0.125 = 5.625. Чистое преобразование без необходимости приближения.
1010.1101 (двоичное)10.8125 (десятичное)1×8 + 0×4 + 1×2 + 0×1 + 1×0.5 + 1×0.25 + 0×0.125 + 1×0.0625 = 10.8125.
5.625 (десятичное)101.101 (двоичное)Целая часть 5 = 101₂. Дробь: 0.625×2=1.25→1, 0.25×2=0.5→0, 0.5×2=1.0→1. Результат 101.101₂ точен.
3.375 (десятичное)11.011 (двоичное)Целая часть 3 = 11₂. Дробь: 0.375×2=0.75→0, 0.75×2=1.5→1, 0.5×2=1.0→1. Точно за 3 дробных бита.

Как пользоваться конвертером двоичных дробей

  1. Выберите направление преобразования: «Двоичное → Десятичное» для перевода двоичной дроби в десятичное число или «Десятичное → Двоичное» для обратного направления.
  2. Введите значение в поле ввода. Для двоичного ввода используйте только 0 и 1 с одной десятичной точкой (например, 101.101). Для десятичного ввода введите любое положительное число (например, 5.625).
  3. Если переводите десятичное число в двоичное, задайте точность дробной части, чтобы определить, сколько битов вычислять после двоичной точки (по умолчанию 8).
  4. Нажмите «Конвертировать». Результат появится сразу, с ясно отображённым десятичным или двоичным эквивалентом.
  5. Нажмите «Сбросить», чтобы очистить все поля и начать новое преобразование.

FAQ по конвертеру двоичных дробей

Почему 0.1 нельзя точно представить в двоичной системе?
Потому что 0.1 в десятичной системе — это 1/10, а 10 = 2 × 5. Так как 5 не является степенью двойки, дробь 1/10 требует бесконечно многих двоичных цифр. Это похоже на то, что 1/3 нельзя записать конечной десятичной дробью. Компьютеры хранят близкое приближение в регистрах с плавающей точкой конечной ширины, поэтому сложение 0.1 три раза во многих языках программирования не даёт ровно 0.3.
Как перевести дробную часть десятичного числа в двоичную?
Используйте повторное удвоение: умножайте дробную часть на 2, записывайте целую часть (0 или 1) как следующий двоичный бит и продолжайте с оставшейся дробной частью. Повторяйте, пока дробь не станет нулём или пока не будет достаточно битов. Для 0.625: 0.625×2=1.25 → бит 1; 0.25×2=0.5 → бит 0; 0.5×2=1.0 → бит 1, готово. Результат: .101₂.
В чём разница между двоичными дробями с фиксированной и плавающей точкой?
В представлении с фиксированной точкой двоичная точка находится в заранее заданной позиции, поэтому число целых и дробных битов фиксировано. В формате с плавающей точкой (например, IEEE 754) двоичная точка «плавает»: отдельное поле порядка сдвигает значащую часть влево или вправо, позволяя получить очень широкий динамический диапазон ценой неравномерной точности. Фиксированная точка проще и быстрее; плавающая точка гибче для научных вычислений.
Сколько двоичных битов нужно для заданной десятичной точности?
Каждый дополнительный двоичный бит добавляет примерно log₁₀(2) ≈ 0.301 десятичной цифры точности. Чтобы получить d десятичных цифр, нужно примерно d / 0.301 ≈ 3.32 × d битов. Например, одинарная точность IEEE 754 использует 23 дробных бита, что даёт около 7 значащих десятичных цифр.
Может ли конвертер обрабатывать целые числа без десятичной точки?
Да. Если вы введёте целое число, например 1011 (двоичное) или 11 (десятичное), конвертер будет считать его числом с нулевой дробной частью и выполнит преобразование обычным образом. В результате также не будет дробной части.
Что делает настройка точности при переводе десятичного числа в двоичное?
Точность задаёт максимальное число битов, вычисляемых после двоичной точки. Более высокая точность даёт более близкое приближение для бесконечных двоичных дробей. Если дробь заканчивается до достижения предела точности, конвертер останавливается раньше, и результат получается точным. Максимальная поддерживаемая точность — 32 бита.