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

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

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

  1. Пронумеровать разряды двоичного числа справа налево, начиная с нуля.
  2. Умножить каждый ненулевой разряд на 2 в степени его номера и сложить результаты.

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

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

Пример 1:

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

Решение:

Нумеруем разряды числа справа налево, начиная с нуля:

И вычисляем результат:

1111001102 = 1 ⋅ 28 + 1 ⋅ 27 + 1 ⋅ 26 + 1 ⋅ 25 + 1 ⋅ 22 + 1 ⋅ 21 = 256 + 128 + 64 + 32 + 4 + 2 = 48610

Пример 2:

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

Решение:

Нумеруем разряды числа справа налево:

И вычисляем результат:

1010001112 = 1 ⋅ 28 + 1 ⋅ 26 + 1 ⋅ 22 + 1 ⋅ 21 + 1 ⋅ 20 = 256 + 64 + 4 + 2 + 1 = 32710

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

При копировании материалов с сайта ссылка на источник обязательна. Уважайте труд людей, которые вам помогают.
Нашли ошибку? Выделите текст и нажмите Ctrl + Enter.

Двоичная система счисления

В двоичной системе счисления используются всего две цифры 0 и 1. Другими словами, двойка является основанием двоичной системы счисления. (Аналогично у десятичной системы основание 10.)

Чтобы научиться понимать числа в двоичной системе счисления, сначала рассмотрим, как формируются числа в привычной для нас десятичной системе счисления.

В десятичной системе счисления мы располагаем десятью знаками-цифрами (от 0 до 9). Когда счет достигает 9, то вводится новый разряд (десятки), а единицы обнуляются и счет начинается снова. После 19 разряд десятков увеличивается на 1, а единицы снова обнуляются. И так далее. Когда десятки доходят до 9, то потом появляется третий разряд – сотни.

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

Попробуем считать в двоичной системе:
0 – это ноль
1 – это один (и это предел разряда)
10 – это два
11 – это три (и это снова предел)
100 – это четыре
101 – пять
110 – шесть
111 – семь и т.д.

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

Не трудно заметить, что в двоичной системе счисления длины чисел с увеличением значения растут быстрыми темпами. Как определить, что значит вот это: 10001001? Непривычный к такой форме записи чисел человеческий мозг обычно не может понять сколько это. Неплохо бы уметь переводить двоичные числа в десятичные.

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

1476 = 1000 + 400 + 70 + 6

Можно пойти еще дальше и разложить так:

1476 = 1 * 103 + 4 * 102 + 7 * 101 + 6 * 100

Посмотрите на эту запись внимательно. Здесь цифры 1, 4, 7 и 6 — это набор цифр из которых состоит число 1476. Все эти цифры поочередно умножаются на десять возведенную в ту или иную степень. Десять – это основание десятичной системы счисления. Степень, в которую возводится десятка – это разряд цифры за минусом единицы.

Аналогично можно разложить и любое двоичное число. Только основание здесь будет 2:

10001001 = 1*27 + 0*26 + 0*25 + 0*2

4 + 1*23 + 0*22 + 0*21 + 1*20

Если посчитать сумму составляющих, то в итоге мы получим десятичное число, соответствующее 10001001:

1*27 + 0*26 + 0*25 + 0*24 + 1*23 + 0*22 + 0*21 + 1*20 = 128 + 0 + 0 + 0 + 8 + 0 + 0 + 1 = 137

Т.е. число 10001001 по основанию 2 равно числу 137 по основанию 10. Записать это можно так:

100010012 = 13710

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

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

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

Может потребоваться перевести десятичное число в двоичное. Один из способов – это деление на два и формирование двоичного числа из остатков. Например, нужно получить из числа 77 его двоичную запись:

77 / 2 = 38 (1 остаток)
38 / 2 = 19 (0 остаток)
19 / 2 = 9 (1 остаток)
9 / 2 = 4 (1 остаток)
4 / 2 = 2 (0 остаток)
2 / 2 = 1 (0 остаток)
1 / 2 = 0 (1 остаток)

Собираем остатки вместе, начиная с конца: 1001101. Это и есть число 77 в двоичном представлении. Проверим:

1001101 = 1*26 + 0*25 + 0*24 + 1*23 + 1*22 + 0*21 + 1*20 = 64 + 0 + 0 + 8 + 4 + 0 + 1 = 77

Переводим числа между двоичной и десятичной системами «на лету», объяснение «на пальцах»

Здравствуйте, Хабровцы.
Пост можно было бы назвать: «Для любителей посчитать на пальцах», но это мы узнаем дальше.

Вступление: А что-же тянуть. Все что будет дальше, пойдет на тему подсчета в двоичной системе на пальцах. Кто еще не знает, постараюсь обьяснить, что это, как и зачем это осваивать.
Начну, пожалуй, с преимуществ:

1. Удобно переводить любое число с десятичной в двоичную системы и наоборот, не используя калькулятор.
2. Развивается моторика пальцев.
3. Развивается визуальное восприятие двоичных чисел.
Минусы:
1. Немного тренировки.
2. Нельзя в публичных местах показывать числа 26,27,352,378 и 891.

Суть:
Многим, наверняка, приходилось переводить между системами. И я думаю многие запомнили, что:
2-10
3-11
4-100
5-101
и т.д.
Логично, что исходя из того что каждая разрядность имеет два состояния, мы можем изобразить это дело на пальцах.
Поставьте перед собой руку (ладонью к себе), согните большой палец. Вот и есть единица. Разогните большой и согните указательный, вот и два. Тоесть разогнутый палец — это 0, а согнутый — 1. Так как начальные нули отбросились, мы имеем отсчет от «самой левой» единицы.
Названия пальцев — те которые загнуты:
средний, большой — 101 — 5
безымянный, средний -1100 — 12
мизинец, средний — 10100 — 20
Чтобы загибать мизинец, понадобиться некоторая практика. Но суть в другом. Представим разрядность каждого пальца руки, как 2^n (на фото)

То есть,

Теперь, представим, что нам нужно перевести число 25 в двоичную. Загибаем Мизинец — 16, Безымянный — 8 и большой — 1. т.к. 16+8+1=25.

Если не поняли, то вот еще пример, число 14, думаем: Мизинец — это много, средний нормально, но можно взять больше, поэтому — загибаем безымянный, это 8. Запомнили, далее средний — +4, єто уже 12 и указательный — +2, итог 14.

Так же поступаем с двоичными. Вот например видим где-то: 1011101. Представляем это на руках с разрядностями (уже две руки).

64+16+8+4+1=93
Имеем: 1011101(2) = 93(10)

Заключение: Таким образом мы можем использовать данный метод от 0 до 1023, используя пальцы и обладая элементарной арифметикой. Но при добавлении, хотя бы, одного разряда, можно будет считать до 2047, и далее до 4095, 8191 и т.д. А это могут быть руки, ноги, веки, либо что-то еще что может иметь два состояния 1 и 0.

Калькулятор систем счисления

Данный конвертер переводит числа между наиболее популярными системами счисления: десятичной, двоичной, восьмеричной, шестнадцатеричной.

Система счисления — это способ представления числа. Одно и то же число может быть представлено в различных видах. Например, число 200 в привычной нам десятичной системе может иметь вид 11001000 в двоичной системе, 310 в восьмеричной и C8 в шестнадцатеричной.

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

Для указания системы счисления при записи числа используется нижний индекс, который ставится после числа:
20010 = 110010002 = 3108 = C816

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

Десятичная система счисления. Используется в повседневной жизни и является самой распространенной. Все числа, которые нас окружают представлены в этой системе. В каждом разряде такого числа может использоваться только одна цифра от 0 до 9.

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

Восьмеричная система счисления. Также иногда применяется в цифровой технике. Для записи числа используются цифры от 0 до 7.

Шестнадцатеричная система счисления. Наиболее распространена в современных компьютерах. При помощи неё, например, указывают цвет. #FF0000 — красный цвет. Для записи числа используются цифры от 0 до 9 и буквы A,B,C,D,E,F, которые соответственно обозначают числа 10,11,12,13,14,15.

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

Преобразовать число из любой системы счисления в десятичную можно следующим образом: каждый разряд числа необходимо умножить на Xn, где X — основание исходного числа, n — номер разряда. Затем суммировать полученные значения.

abcx = (a*x2 + b*x1 + c*x0)10

Примеры:

5678 = (5*82 + 6*81 + 7*80)10 = 37510

1102 = (1*22 + 1*21 + 0*20)10 = 610

A516 = (10*161 + 5*160)10 = 16510

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

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

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

375 / 8 = 46 (остаток 7)

46 / 8 = 5 (остаток 6)

5 / 8 = 0 (остаток 5)

Записываем остатки и получаем 5678

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

Способ 1:

Для перевода в восьмеричную систему нужно разбить двоичное число на группы по 3 цифры справа налево. В последней (самой левой) группе вместо недостающих цифр поставить слева нули. Для каждой полученной группы произвести умножение каждого разряда на 2n, где n — номер разряда.

11012 = (001) (101) = (0*22 + 0*21 + 1*20) (1*22 + 0*21 + 1*20) = (0+0+1) (4+0+1) = (1) (5) = 158

Способ 2:

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

Триада000001010011100101110111
Цифра01234567

101110102 = (010) (111) (010) = 2728

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

Способ 1:

Разбиваем число на группы по 4 цифры справа налево. Последнюю (левую) группу дополним при необходимости ведущими нулями. Внутри каждой полученной группы произведем умножение каждой цифры на 2n, где n — номер разряда, и сложим результаты.

110102 = (0001) (1010) = (0*23 + 0*22 + 0*21 + 1*20) (1*23 + 0*22 + 1*21 + 0*20) = (0+0+0+1) (8+0+2+0) = (1) (10) = 1A16

Способ 2:

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

Тетрада0000000100100011010001010110011110001001101010111100110111101111
Цифра0123456789ABCDEF

1011111002 = (0001) (0111) (1100) = 17C16

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

Способ 1:

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

Возьмем число 438.
Делим последовательно 4 на 2 и получаем остатки 0,0,1. Записываем их в обратном порядке. Получаем 100.
Делим последовательно 3 на 2 и получаем остатки 1,1. Записываем их в обратном порядке и дополняем ведущими нулями до трех разрядов. Получаем 011.
Записываем вместе и получаем 1000112

Способ 2:

Используем таблицу триад:

Цифра01234567
Триада000001010011100101110111

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

3518 = (011) (101) (001) = 0111010012 = 111010012

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

Способ 1:

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

Способ 2:

Используем таблицу тетрад:

Цифра0123456789ABCDEF
Тетрада0000000100100011010001010110011110001001101010111100110111101111

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

D816 = (1101) (1000) = 110110002

Перевод из восьмеричной системы в шестнадцатеричную и наоборот

Такую конвертацию можно осуществить через промежуточное десятичное или двоичное число. То есть исходное число сначала перевести в десятичное (или двоичное), и затем полученный результат перевести в конечную систему счисления.

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

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

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

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

Основание системы счисления исходного числа

Основание системы счисления переведенного числа

Точность вычисления

Знаков после запятой: 8

Переведенное число

 

Исходное число в десятичной системе счисления

 

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

 

Погрешность перевода (в десятичном выражении)

 

Максимальная погрешность перевода (в десятичном выражении)

 

save Сохранить extension Виджет

Теперь теория. Я, честно говоря, думал, что вопрос довольно сложный, но при ближайшем рассмотрении все оказалось проще простого. Надо было только держать в голове тот факт, что речь идет о позиционных системах счисления.
В чем тут суть? Рассмотрим на примере десятичного числа 6.125. Это дробное число в десятичной системе счисления представляется так:

Все просто, не так ли? Та же самая простота сохраняется и при записи дробного числа в любой другой системе счисления. Возьмем, например, горячо любимую каждым программистом двоичную систему и число, например, 110.001. Эта запись есть не что иное как

Да-да, число для примера было выбрано не просто так. То есть, 110.001 в двоичной системе есть 6.125 в десятичной. Принцип, я думаю, ясен.

Есть только одно но — все-таки из-за того, что здесь участвую дроби с разными знаменателями, не всегда одно и тоже число можно одинаково точно выразить в разных системах счисления. Что я имею в виду?

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

Продолжать можно еще довольно долго, но уже сейчас видно, что 0.8 в десятичной системе это 0.11001100…(дальше очень много цифр) в двоичной. Если честно, то это периодическое число с перидом 1100, так что мы никогда не сможем выразить его

точно в двоичной системе счисления. 110011001100… будет продолжаться до бесконечности.

Поэтому перевод дробного числа из одной системы счисления в другую чаще всего дает погрешность. Погрешность эта зависит от того, сколько разрядов мы используем для записи дробной части переведенного числа. Возьмем пример с числом 0.8 и используем для записи его двоичного представления шесть разрядов после запятой — 0.110011. Полученное число вовсе не 0.8, а 0.796875, разница при этом составляет 0.003125. Это и есть наша погрешность перевода десятичного числа 0.8 в двоичный вид при использовании шести разрядов после запятой.

Вес крайнего правого разряда (самого младшего разряда) называется разрешением (resolution) или точностью (precision), и определяет наименьшее неравное нулю число, которое может быть представлено данным числом разрядов. Для нашего примера это . При этом максимально возможная погрешность представления числа, как нетрудно сообразить, не превышает половины этого веса, или 0.0078125. Так что для 0.8 мы имеем еще и не самую плохую погрешность.

Вот, собственно, и все.

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

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
.

Преобразование двоичного числа в десятичное | Определение и как преобразовать

Двоичная система нумерации

Binary — это система нумерации с основанием 2, которая состоит из двух чисел: 0 и 1. 0 означает ВЫКЛ, а 1 означает ВКЛ. Центральный процессор (ЦП) компьютера распознает только эти два состояния — ВКЛ и ВЫКЛ. Это основа всего двоичного кода, который используется в компьютерных и цифровых системах.

Биты и байты

Двоичная цифра, называемая битом, является наименьшей единицей данных в компьютере.Каждый бит имеет одно значение, равное 0 или 1. 8 битов (b) эквивалентны 1 байту (B).

Компьютеры и двоичные

Двоичный — это основной язык, используемый в компьютерах по следующим причинам:

  • Это просто. Поскольку есть только два возможных значения: 0 и 1, легче хранить числа и манипулировать ими. Кроме того, двоичные системы обходятся дешевле, чем другие системы счисления.
  • Легко определить состояние ВКЛ и ВЫКЛ. Различие между двумя состояниями очевидно, что делает его надежным.
  • Эффективен при управлении логическими схемами. Он требует наименьшего количества схем, что, в свою очередь, требует наименьших затрат, места и потребления энергии.

Десятичная система счисления

Decimal — это система счисления с основанием 10, которая состоит из 10 чисел: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Это наиболее часто используемая система счисления. Причина в удобстве. У нас есть 10 пальцев, которые мы используем для счета, поэтому легче считать с помощью десятичной системы счисления, поэтому десятичная дробь широко используется.

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

Преобразование может быть выполнено путем нанесения каждого двоичного цифрового значения на каждый столбец, соответствующего его десятичному значению. Каждый столбец — это цифра 2, возведенная в степень. Показатель степени увеличивается на единицу справа налево. Чтобы получить общее значение, вы добавляете значение столбцов, помеченных как ON или эквивалентных 1.
Например, двоичное число 101100101 преобразуется в десятичное число следующим образом:

Показатель 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0
Значение 256 128 64 32 16 8 4 2 1
ВКЛ / ВЫКЛ 1 0 1 1 0 0 1 0 1

Общая стоимость = (256 + 64 + 32 + 4 + 1) = 357.
Итак, двоичное число 101100101 — это 357 в десятичном виде.

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

Преобразование может быть выполнено путем многократного деления десятичного числа на 2 до тех пор, пока окончательный результат не будет 0.
Например, десятичное число 357 преобразуется в двоичное число следующим образом:

Дивизион Результат остаток
357/2 178 1
178/2 89 0
89/2 44 1
44/2 22 0
22/2 11 0
11/2 5 1
5/2 2 1
2/2 1 0
1/2 0 1

Двоичное число берется из остатка, начиная с последнего до первого, или, как показано на рисунке выше, снизу вверх, то есть 101100101.
Итак, десятичное число 357 — это 101100101 в двоичном формате.

Преимущества двоичной системы

Вот некоторые преимущества использования двоичной системы:

  • Легко реализовать.
  • Логика понятна.
  • Это наименьшая возможная база, позволяющая легко кодировать более высокую систему нумерации.

Недостатки двоичной системы

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

  • Числа обозначаются длиннее, поэтому занимают больше места.
  • Возникают проблемы с округлением, поскольку дробные значения не соответствуют системе счисления по основанию 2.
  • Людям трудно читать, писать и манипулировать двоичными файлами.
.

Двоичный преобразователь в десятичный

Из Двоичный Десятичный Шестнадцатеричный

Чтобы Двоичный Десятичный Шестнадцатеричный

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

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

Для двоичного числа с n цифрами:

д н-1 … d 3 d 2 d 1 d 0

Десятичное число равно сумме двоичных цифр (d n ), умноженной на их степень двойки (2 n ):

в десятичной системе = d 0 × 2 0 + d 1 × 2 1 + d 2 × 2 2 + …

Пример

Найдите десятичное значение 111001 2 :

двоичное число: 1 1 1 0 0 1
степень 2: 2 5 2 4 2 3 2 2 2 1 2 0

111001 2 = 1⋅2 5 + 1⋅2 4 + 1⋅2 3 + 0⋅2 2 + 0⋅2 1 + 1⋅2 0 = 57 10

Таблица преобразования двоичного числа в десятичное

Двоичный
Число
Десятичное число
Число
Hex
Число
0 0 0
1 1 1
10 2 2
11 3 3
100 4 4
101 5 5
110 6 6
111 7 7
1000 8 8
1001 9 9
1010 10 А
1011 11 B
1100 12 С
1101 13 D
1110 14 E
1111 15 F
10000 16 10
10001 17 11
10010 18 12
10011 19 13
10100 20 14
10101 21 15
10110 22 16
10111 23 17
11000 24 18
11001 25 19
11010 26 1A
11011 27
11100 28
11101 29 1D
11110 30 1E
11111 31 1 этаж
100000 32 20
1000000 64 40
10000000 128 80
100000000 256 100


См. Также

.

c — Самый быстрый способ преобразовать двоичное в десятичное?

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании
.