Перевод в код 8421

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

Двоично-десятичный код (англ. binary-coded decimal), BCD, 8421-BCD — это такая форма записи целых чисел, когда в виде четырехбитного двоичного кода записывается каждый десятичный разряд числа.

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

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

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

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

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

542 -> (Hex to Dec) -> 1346 -> (Dec to Bin) -> 10101000010

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

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

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

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

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

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

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

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

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

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

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

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

  • D = 392710 = 0011 1001 0010 0111BCD
  • C = 485610 = 0100 1000 0101 0110BCD

Затем по правилам двоичной арифметики числа D и С — суммируем:

  • 0011 1001 0010 0111
  • + 0100 1000 0101 0110
  • = 1000 0001 0111 1101 — Двоичная сумма
  • + 0110 0110 — Коррекция

1000 0111 1000 0011

  • ‘*’ — тетрада, из которой происходил перенос в старшую тетраду
  • ‘**’ — тетрада с являющейся запрещенной комбинацией битов

Источник

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

Калькулятор позволяет переводить целые и дробные числа из одной системы счисления в другую. Основание системы счисления не может быть меньше 2 и больше 36 (10 цифр и 26 латинских букв всё-таки). Длина чисел не должна превышать 30 символов. Для ввода дробных чисел используйте символ . или , . Чтобы перевести число из одной системы в другую, введите исходное число в первое поле, основание исходной системы счисления во второе и основание системы счисления, в которую нужно перевести число, в третье поле, после чего нажмите кнопку «Получить запись».

Исходное число записано в -ой системе счисления.

Хочу получить запись числа в -ой системе счисления.

Системы счисления

Системы счисления делятся на два типа: позиционные и не позиционные. Мы пользуемся арабской системой, она является позиционной, а есть ещё римская − она как раз не позиционная. В позиционных системах положение цифры в числе однозначно определяет значение этого числа. Это легко понять, рассмотрев на примере какого-нибудь числа.

Пример 1. Возьмём число 5921 в десятичной системе счисления. Пронумеруем число справа налево начиная с нуля:

Число: 5 9 2 1
Позиция: 3 2 1 0

Число 5921 можно записать в следующем виде: 5921 = 5000+900+20+1 = 5·10 3 +9·10 2 +2·10 1 +1·10 0 . Число 10 является характеристикой, определяющей систему счисления. В качестве степеней взяты значения позиции данного числа.

Пример 2. Рассмотрим вещественное десятичное число 1234.567. Пронумеруем его начиная с нулевой позиции числа от десятичной точки влево и вправо:

Число: 1 2 3 4 5 6 7
Позиция: 3 2 1 0 -1 -2 -3

Число 1234.567 можно записать в следующем виде: 1234.567 = 1000+200+30+4+0.5+0.06+0.007 = 1·10 3 +2·10 2 +3·10 1 +4·10 0 +5·10 -1 +6·10 -2 +7·10 -3 .

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

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

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

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

1. Перевести число 1001101.11012 в десятичную систему счисления.
Решение: 10011.11012 = 1·2 4 +0·2 3 +0·2 2 +1·2 1 +1·2 0 +1·2 -1 +1·2 -2 +0·2 -3 +1·2 -4 = 16+2+1+0.5+0.25+0.0625 = 19.812510
Ответ: 10011.11012 = 19.812510

2. Перевести число E8F.2D16 в десятичную систему счисления.
Решение: E8F.2D16 = 14·16 2 +8·16 1 +15·16 0 +2·16 -1 +13·16 -2 = 3584+128+15+0.125+0.05078125 = 3727.1757812510
Ответ: E8F.2D16 = 3727.1757812510

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

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

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

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

3. Перевести число 27310 в восьмиричную систему счисления.
Решение: 273 / 8 = 34 и остаток 1, 34 / 8 = 4 и остаток 2, 4 меньше 8, поэтому вычисления завершены. Запись из остатков будет иметь следующий вид: 421
Проверка: 4·8 2 +2·8 1 +1·8 0 = 256+16+1 = 273 = 273 , результат совпал. Значит перевод выполнен правильно.
Ответ: 27310 = 4218

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

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

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

4. Перевести число 0.12510 в двоичную систему счисления.
Решение: 0.125·2 = 0.25 (0 — целая часть, которая станет первой цифрой результата), 0.25·2 = 0.5 (0 — вторая цифра результата), 0.5·2 = 1.0 (1 — третья цифра результата, а так как дробная часть равна нулю, то перевод завершён).
Ответ: 0.12510 = 0.0012

Источник

Что такое BCD

BCD — это Binary-Coded Decimal (двоично-десятичный код). Он же 8421-BCD.

Это форма записи рациональных чисел, когда каждый десятичный разряд числа записывается в виде его четырёхразрядного двоичного кода.

Вообще с помощью четырёхразрядного двоичного кода можно закодировать 16 чисел — это шестнадцатеричная система.

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

Десятичное HEX BIN BCD
0 0 0000 0000
1 1 0001 0001
2 2 0010 0010
3 3 0011 0011
4 4 0100 0100
5 5 0101 0101
6 6 0110 0110
7 7 0111 0111
8 8 1000 1000
9 9 1001 1001
10 A 1010 Запрещено
11 B 1011 Запрещено
12 C 1100 Запрещено
13 D 1101 Запрещено
14 E 1110 Запрещено
15 F 1111 Запрещено

В BCD используются только первые 10 комбинаций, которыми можно закодировать 10 цифр от 0 до 9. Остальные комбинации в BCD являются запрещёнными.

BCD код также применяется в телефонной связи. В этом случае кроме десятичных цифр кодируются символы * или #, или любые другие. Для записи этих символов в коде BCD используются запрещенные комбинации:

BCD Дополнительный символ
1010 * (звёздочка)
1011 # (решётка)
1100 (плюс)
1101 — (минус)
1110 , (десятичная запятая)
1111 символ гашения

Преимущества и недостатки формата BCD

Преимущества

  1. Удобно использовать для вывода на индикаторы с одной цифрой. Например, в часах каждый индикатор отображает десятичное число в двоично-десятичной системе (от 0 до 9).
  2. Упрощён вывод чисел на индикацию — вместо последовательного деления на 10 требуется просто вывести на индикацию каждый полубайт. По этой же причине проще ввод данных с цифровой клавиатуры.
  3. Для дробных чисел (как с фиксированной, так и с плавающей запятой) при переводе в человекочитаемый десятичный формат и наоборот не теряется точность.
  4. Упрощены умножение и деление на 10, а также округление.

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

Недостатки

  1. Требует больше памяти.
  2. Усложнены арифметические операции.

Операции с BCD

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

  1. При сложении двоично-десятичных чисел каждый раз, когда происходит перенос бита в старший полубайт, необходимо к полубайту, от которого произошёл перенос, добавить поправочное значение 0110 = 610 = (1610 — 1010) — разница количеств комбинаций полубайта и используемых значений, то есть всего комбинаций в тетраде 16, из них разрешённых 10, а запрещенных 6.
  2. При сложении двоично-десятичных чисел каждый раз, когда встречается недопустимая для полубайта комбинация (число, большее 9), необходимо к каждой недопустимой комбинации добавить поправочное значение 0110 с разрешением переноса в старшие полубайты.
  3. При вычитании двоично-десятичных чисел, для каждого полубайта, получившего заём из старшего полубайта, необходимо провести поправку, отняв значение 0110.

Поэтому почти в любом языке ассемблера есть специальные команды для работы с BCD числами.

Пример операции сложения двоично-десятичных чисел:

Требуется: Найти число Х = Y + Z, где Y = 0929, Z = 1538

Решение: Представим числа Y и Z в двоично-десятичной форме:

Суммируем числа Y и Z по правилам двоичной арифметики:

В тетраду, помеченную символом *, добавляем шестёрку, так как по правилам двоичной арифметики перенос унёс с собой 16, а по правилам десятичной арифметики должен был унести 10.

В тетраду, помеченную символом **, добавляем шестёрку и разрешаем распространение переноса, так как комбинация битов 1110 в сумме после сложения соответствует десятичному числу 14 и является запрещённой.

ПРИМЕЧАНИЕ
По сути BCD — это та же шестнадцатеричная система, только с числами от 0 до 9 (числа A. F являются запрещёнными). То есть каждая тетрада записывается в числе BCD в отдельном разряде.

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии