Перевод в двоичную систему счисления

Как перевести число в двоичную систему счисления из десятичной, восьмеричной и шестнадцатеричной. Пошаговые алгоритмы с примерами и онлайн-калькулятор.

Конвертер в двоичную систему

Переведите число из любой системы счисления в двоичную (базу 2). Расчёт происходит мгновенно при вводе.

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

Результат перевода

Двоичная (бинарная) система счисления использует основание 2 и два символа — 0 и 1. Она лежит в основе работы всех цифровых устройств. Ниже разобраны алгоритмы перевода чисел из десятичной, восьмеричной, шестнадцатеричной и других систем в двоичную — с формулами, примерами и таблицей соответствий.

Перевод целого десятичного числа в двоичную систему

Стандартный метод — последовательное деление на 2 с фиксацией остатков.

Алгоритм:

  1. Разделите число на 2. Запишите остаток (0 или 1).
  2. Частное снова разделите на 2. Снова запишите остаток.
  3. Повторяйте, пока частное не станет равным 0.
  4. Запишите остатки в обратном порядке — снизу вверх.

Пример: переводим 58₁₀ в двоичную.

Деление Частное Остаток
58 ÷ 2 29 0
29 ÷ 2 14 1
14 ÷ 2 7 0
7 ÷ 2 3 1
3 ÷ 2 1 1
1 ÷ 2 0 1

Читаем остатки снизу вверх: 111010₂.

Проверка: 1×2⁵ + 1×2⁴ + 1×2³ + 0×2² + 1×2¹ + 0×2⁰ = 32 + 16 + 8 + 0 + 2 + 0 = 58 ✓

Перевод дробной части десятичного числа

Дробную часть переводят умножением на 2.

Алгоритм:

  1. Умножьте дробную часть на 2.
  2. Запишите целую часть результата (0 или 1).
  3. Новую дробную часть снова умножьте на 2.
  4. Повторяйте, пока дробная часть не обнулится или не будет достигнута нужная точность.

Пример: переводим 0,625₁₀.

Умножение Результат Целая часть
0,625 × 2 1,25 1
0,25 × 2 0,5 0
0,5 × 2 1,0 1

Читаем целые части сверху вниз: 0,101₂.

Проверка: 1×2⁻¹ + 0×2⁻² + 1×2⁻³ = 0,5 + 0 + 0,125 = 0,625 ✓

Некоторые десятичные дроби (например, 0,3) не имеют точного конечного двоичного представления — получается бесконечная периодическая дробь. В таких случаях результат округляют до нужного числа разрядов.

Быстрый перевод из восьмеричной системы

Восьмеричная система (основание 8 = 2³) позволяет переводить числа напрямую: каждая восьмеричная цифра заменяется тройкой битов (триадой).

Таблица соответствия:

Восьмеричная Двоичная
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

Пример: 357₈ → ?

  • 3 → 011
  • 5 → 101
  • 7 → 111

Результат: 011101111₂ (или 11101111₂ без ведущего нуля).

Быстрый перевод из шестнадцатеричной системы

Шестнадцатеричная система (основание 16 = 2⁴) работает аналогично: каждая цифра заменяется четвёркой битов (тетрадой).

Таблица соответствия:

Hex Двоичная Hex Двоичная
0 0000 8 1000
1 0001 9 1001
2 0010 A 1010
3 0011 B 1011
4 0100 C 1100
5 0101 D 1101
6 0110 E 1110
7 0111 F 1111

Пример: A3F₁₆ → ?

  • A → 1010
  • 3 → 0011
  • F → 1111

Результат: 101000111111₂.

Перевод из систем с произвольным основанием

Если основание системы не является степенью двойки (например, 3, 5, 6, 7, 9, 12), прямой побитовый перевод невозможен. Используйте двухэтапный метод:

Этап 1. Переведите число в десятичную систему, разложив его по степеням основания:

$$N_{10} = a_n \cdot b^n + a_{n-1} \cdot b^{n-1} + \ldots + a_1 \cdot b^1 + a_0 \cdot b^0$$

где b — основание исходной системы, aᵢ — цифры числа.

Этап 2. Переведите полученное десятичное число в двоичную систему делением на 2.

Пример: 213₅ → ?

Этап 1 — в десятичную: 2×5² + 1×5¹ + 3×5⁰ = 50 + 5 + 3 = 58₁₀

Этап 2 — 58₁₀ в двоичную (см. пример выше): 111010₂

Таблица соответствий для первых 16 чисел

Десятичная Двоичная Восьмеричная Шестнадцатеричная
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F

Частые ошибки при переводе

  • Неверный порядок остатков. Остатки при делении на 2 нужно записывать снизу вверх (от последнего к первому), а не сверху вниз.
  • Потеря ведущих нулей в триадах и тетрадах. При быстром переводе из восьмеричной или шестнадцатеричной системы каждая цифра должна быть заменена полной группой битов: 0 → 000 (а не пустая строка), 2 → 0010 в hex-переводе.
  • Ошибки в буквенных обозначениях. В шестнадцатеричной системе A = 10, B = 11, C = 12, D = 13, E = 14, F = 15. Путаница возникает, когда букву принимают за её порядковый номер в алфавите.
  • Бесконечные дроби. Десятичная дробь 0,1 не имеет точного конечного двоичного представления. При работе с плавающей точкой это приводит к ошибкам округления — учитывайте это при программировании.

Частые вопросы

Почему компьютеры используют именно двоичную систему?

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

Можно ли перевести отрицательное число в двоичную систему?

Да. В информатике для этого используют дополнительный код: сначала переводят модуль числа в двоичную форму, затем инвертируют все биты и прибавляют единицу. Например, −5 в 8-битном представлении записывается как 11111011.

Как перевести дробное десятичное число в двоичную систему?

Целую часть переводят делением на 2, а дробную — последовательным умножением на 2. При каждом умножении записывают целую часть результата сверху вниз. Процесс продолжают до получения нуля или нужной точности.

Чем отличается прямой перевод от перевода через десятичную систему?

Прямой перевод работает только между системами, основания которых являются степенями двойки (2, 4, 8, 16, 32). Каждая цифра исходной системы заменяется фиксированной группой битов. Для остальных систем необходим промежуточный переход через десятичную.

Сколько бит нужно для записи числа 1000 в двоичной системе?

Для записи числа 1000 потребуется 10 бит. Двоичное представление: 1111101000. Количество бит определяется формулой ⌊log₂(N)⌋ + 1, где N — десятичное число.

Как проверить правильность перевода в двоичную систему?

Выполните обратный перевод: умножьте каждый бит двоичного числа на соответствующую степень двойки (начиная с нулевой справа) и сложите результаты. Если сумма равна исходному числу — перевод выполнен верно.