расшифровка двоичного кода в десятичный

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Тетрада 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Цифра 0 1 2 3 4 5 6 7 8 9 A B C D E F

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

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

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

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

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

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

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

Цифра 0 1 2 3 4 5 6 7 8 9 A B C D E F
Тетрада 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

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

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

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

Источник

Двоично-десятичное кодирование

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

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

Поскольку десятичные числа активно используются человеком, а двоичные — компьютером, этой проблемой в применении к двоичной и десятичной системам однажды уже озаботились какие-то светлые умы и придумали двоично-десятичное кодирование (binary coded decimal, BCD). Суть идеи проста — берем и для каждой десятичной цифры заводим байт. И в этом байте тупо пишем значение десятичной цифры в двоичном коде. Тогда число, например, 0.8 будет 0.00001000. Потом, правда, подумали еще, и решили, что раз уж верхняя часть байта всегда пустует (так как максимум 9 — это 1001), то давайте для каждой десятичной цифры заводить полубайт. И назвали это упакованным двоично-десятичным кодированием (packed BCD).
В упакованном кодировании наше 0.8 будет 0.1000, а какое-нибудь 6.75 будет 0110.01110101.

Прекрасная идея, конечно. Точность не теряется, человек может двоичные числа переводить в десятичные и наоборот прямо на лету, округлять можно, откидывая лишнее. Но как-то не получила она широкого распространения, потому как жизнь машинам она, наоборот, усложняла — и памяти для хранения чисел надо больше, и операции над числами реализовать сложнее. Так и осталась забавным курьезом, и я бы ничего о ней не знал, если бы пользователи не подсказали, что есть такая.

Ну и небольшой калькулятор по этому поводу — вводим либо десятичное число, либо двоичное, подразумевая, что это упакованный двоично-десятичный код, и получаем результат. Понятно, что все преобразования можно проделать и в уме, и в этом ее преимущество; но зачем же лишний раз мозги напрягать, верно?

Источник

Десятичный код.

К примеру, десятичное число 31110 в двоичной системе счисления записано будет в двоичном коде так : 1 0011 01112, в двоично-десятичном коде оно будет записано как 0001 0001BCD.

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

В формате BCD из Unsigned Integer простой способ получения данных такой:

Число «A» в формате U16 = 542,

теперь, выполнив преобразование его в BCD (проделать операцию можно на калькуляторе ОС Windows) получаем :

Особенности десятичного кода.

Из преимуществ двоично-десятичного кода можно выделить такие:

— Упрощены операции умножения или деления на 10, а также округление.

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

Кроме достоинств, двоично-десятичный код имеет и свои характерные недостатки: требуется больше памяти и усложнены арифметические операции. Так как, вместо 16 в в 8421-BCD используются только 10 возможных комбинаций 4-х битового поля, поэтому при операциях сложения и вычитания чисел в формате 8421-BCD действуют такие правила:

— Каждый раз при сложении двоично-десятичных чисел, когда в старший полубайт происходит перенос бита, необходимо добавить корректирующее значение 0110 (= 610 = 1610 — 1010: разница количеств используемых значений и комбинаций полубайта) к тому полубайту, от которого был произведен перенос.

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

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

Операция по сложению двоично-десятичных чисел на примере выглядит так: Задача: Определить число A = D + C, где D = 3927, C = 4856

Решение: Числа D и C представим в виде двоично-десятичного кода:

1000 0111 1000 0011

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • расшифровка двоичного кода в буквы
  • расшифровка двигателя по вин коду
  • расшифровка дата матрикс кода
  • расшифровка генетического кода человека
  • расшифровка генетического кода год открытия

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии