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

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

  • автор:

home » Перевод чисел из десятичной системы в двоичную

Двоичная система счисления — позиционная система счисления с основанием 2.

Шестнадцатеричная система счисления — позиционная система счисления по целочисленному основанию 16.

\begin 110_ &= 1\times2^+1\times2^+0\times2^=6_ \\ \\ 6_ &= 110_:\\ \end

6 / 2 = 3, Остаток 0, (LSB — Least Significant Byte)
3 / 2 = 1, Остаток 1
1 / 2 = 0, Остаток 1, (MSB — Most Significant Byte)

Десятичное число (положительное) Двоичное число
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001
10 1010
11 1011
12 1100
13 1101
14 1110
15 1111
16 10000
32 100000
64 1000000
128 10000000
256 100000000

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

Вы можете сохранять ваши расчеты и они будут отображаться здесь.

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

Сохранить расчет

Сохраненный расчет будет доступен только в текущем браузере.
Вы можете сохранить всего не более 5 расчетов.

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

Поделиться

Поделиться расчетом

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

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

Как перевести

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

  1. Делим десятичное число на 2 и записываем остаток от деления.
  2. Результат деления вновь делим на 2 и опять записываем остаток.
  3. Повторяем операцию до тех пор пока результат деления не будет равен нулю.
  4. Запишем полученные остатки в обратном порядке и получим искомое число.

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

infoegehelp.ru

Системы счисления Быстрый перевод числа из десятичной системы счисления в двоичную

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

Чтобы быстро переводить числа из десятичной системы счисления в двоичную, нужно хорошо знать числа «2 в степени». Например, 2 10 =1024 и т.д. Это позволит решать некоторые примеры на перевод буквально за секунды. Одной из таких задач является задача A1 из демо ЕГЭ 2012 года. Можно, конечно, долго и нудно делить число на «2». Но лучше решать по-другому, экономя драгоценное время на экзамене.

Метод очень простой. Суть его такая: если число, которое нужно перевести из десятичной системы, равно числу «2 в степени», то это число в двоичной системе содержит количество нулей, равное степени. Впереди этих нулей добавляем «1».

  • Переведем число 2 из десятичной системы. 2=2 1 . Поэтому в двоичной системе число содержит 1 нуль . Впереди ставим «1» и получаем 1 0 2.
  • Переведем 4 из десятичной системы. 4=2 2 . Поэтому в двоичной системе число содержит 2 нуля . Впереди ставим «1» и получаем 1 00 2.
  • Переведем 8 из десятичной системы. 8=2 3 . Поэтому в двоичной системе число содержит 3 нуля . Впереди ставим «1» и получаем 1 000 2.

На рисунке квадратиками обозначено двоичное представление числа, а слева розовым цветом-десятичное.

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

Аналогично и для других чисел «2 в степени».

Если число, которое нужно перевести, меньше числа «2 в степени» на 1, то в двоичной системе это число состоит только из единиц, количество которых равно степени.

  • Переведем 3 из десятичной системы. 3=2 2 -1. Поэтому в двоичной системе число содержит 2 единицы . Получаем 11 2.
  • Переведем 7 из десятичной системы. 7=2 3 -1. Поэтому в двоичной системе число содержит 3 единицы . Получаем 111 2.

На рисунке квадратиками обозначено двоичное представление числа, а слева розовым цветом-десятичное.

Перевод из десятичной системы в двоичную чисел меньше

Аналогичен перевод и для других чисел «2 в степени-1».

Понятно, что перевод чисел от 0 до 8 можно сделать быстро или делением, или просто знать наизусть их представление в двоичной системе. Я привела эти примеры, чтобы Вы поняли принцип данного метода и использовали его для перевода более «внушительных чисел», например, для перевода чисел 127,128, 255, 256, 511, 512 и т.д.

Можно встретить такие задачи, когда нужно перевести число, не равное числу «2 в степени», но близкое к нему. Оно может быть больше или меньше числа «2 в степени». Разница между переводимым числом и числом «2 в степени» должна быть небольшая. Например, до 3. Представление чисел от 0 до 3 в двоичной системе надо просто знать без перевода.

Если число больше , то решаем так:

Переводим сначала число «2 в степени» в двоичную систему. А потом прибавляем к нему разницу между числом «2 в степени» и переводимым числом.

Например, переведем 19 из десятичной системы. Оно больше числа «2 в степени» на 3.

Если число меньше числа «2 в степени», то удобнее пользоваться числом «2 в степени-1». Решаем так:

Переводим сначала число «2 в степени-1» в двоичную систему. А потом вычитаем из него разницу между числом «2 в степени-1» и переводимым числом.

Например, переведем 29 из десятичной системы. Оно больше числа «2 в степени-1» на 2. 29=31-2.

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

Например, перевести число 528 из десятичной системы. 528=512+16. Переводим отдельно 512 и 16.
512=2 9 . 51210=1 000000000 2.
16=2 4 . 1610=1 0000 2.
Теперь сложим столбиком:

Перевод из десятичной системы в двоичную составных чисел

Данная методика позволяет тратить минимум времени на перевод чисел из десятичной системы в двоичную, но при условии, что Вы прекрасно знаете числа «2 в степени». Если это не так, то заучите эти числа. Тем более, что в задачах по информатике они активно используются.

Учить числа «2 в степени» удобно по этому материалу

Перейти к статьям:

  • «Как переводить числа между двоичной, восьмеричной и шестнадцатеричной системами счисления».
  • «Системы счисления: основные понятия».
  • «Решение задач демо ЕГЭ на системы счисления»
  • «Выполнение арифметических операций в двоичной системе счисления».

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

Заметим, что в языке Python есть встроенная функция bin , которая переводит десятичное число в двоичную систему счисления.

>>> bin(5) '0b101' >>> bin(10) '0b1010'

Здесь же рассматривается алгоритм такого перевода и его реализация на Python.

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

  • 8 / 2 = 4, остаток 0
  • 4 / 2 = 2, остаток 0
  • 2 / 2 = 1, остаток 0
  • 1 / 2 = 0, остаток 1
  • 0 — конец деления
  • Сборка: 10002

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

n = int(input()) b = '' while n > 0: b = str(n % 2) + b n = n // 2 print(b)
8 1000

Пример решения задачи с использованием списка и без преобразования цифр двоичного числа в строковый тип:

n = int(input()) b = [] while n > 0: b.append(n % 2) n //= 2 b.reverse() for i in b: print(i, end='') print()

Метод reverse списка изменяет последовательность элементов на обратную.

X Скрыть Наверх

Решение задач на Python

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *