Сравнительная оценка алгоритмов перевода и построение комбинационных преобразователей двоичного кода целых чисел в двоично-десятичный код и двоично-десятичного кода правильных дробей в двоичный код на ПЛИС - page 3

Сравнительная оценка алгоритмов перевода…
3
ную разрядную сетку со стороны младших разрядов. В результате
операция умножения на 2 реализуется сдвигом числа влево на одну
двоичную позицию, а операция суммирования совмещается со сдви-
гом. В освобождающийся при сдвиге младший двоичный разряд вво-
дится очередная цифра двоичного числа. Таким образом выполняется
суммирование удвоенного числа в двоично-десятичной разрядной сет-
ке с очередной цифрой двоичного числа. Все действия над ДДК чисел
должны выполняться в десятичной системе счисления.
Из (3) следует, что после выполнения первого сдвига в двоично-
десятичной разрядной сетке получим
1
l
b
при нулевом начальном
значении числа в двоично-десятичной разрядной сетке, после второго
1
2
2
, ...,
l
l
b b
после
l
-го сдвига
1
2
1
0
...
2 2 ...
2 .
l
l
b b
b b
   
По-
сле прибавления цифры младшего разряда
0
b
умножение не выпол-
няется. Таким образом, в двоично-десятичной разрядной сетке
накапливается и после
l
сдвигов образуется двоично-десятичное чис-
ло
ц
2 10
1 2
0
, ..., ,
n n
A
 
   
, где
1
2
0
,
, ...,
n
n
  
двоичные тетрады,
изображающие десятичные цифры десятичного числа,
n
— разряд-
ность десятичного числа.
Из (1) и (4) следует, что перевод ДДК правильной дроби также
выполняется умножением на 2 исходной двоично-десятичный дроби
и дробных частей получающихся произведений. Операция умноже-
ния на 2, как и ранее, реализуется сдвигом влево двоично-десятичной
дроби на одну двоичную позицию.
В качестве ДДК целесообразно использовать наиболее распро-
страненный ДДК 8421, в котором десятичные цифры 0, 1, …, 9 изоб-
ражаются двоичными тетрадами 0000, 0001, …, 1001 соответственно.
Тетрады 1010, 1011, …, 1111 не используются и называются псев-
дотетрадами. Цифры 8, 4, 2, 1 в обозначении кода — веса разрядов
двоичной тетрады. Отметим, что в ДДК 8421 также выполняются
операции преобразования ДДК целых чисел в ДК и ДК правильных
дробей в ДДК [5, 8].
Умножая на 2 исходную дробь, получаем целую часть
1
b
и дроб-
ную
 
1
1
2
2
... 2
... .
k
b
b
 
Умножая дробную часть на 2, получим
целую часть
2
b
и дробную
1
1
1
3
( 1)
2
... 2
2 ...
k
k
b
b
b
 
 
и т. д.
После
k
тактов получим все цифры
1 2
( 1)
,
, ...,
,
k
k
b b b b
 
  
двоичной
дроби.
Коррекция двоично-десятичных чисел при переводе.
Поскольку
веса придаются тетрадам в неявном виде, двоичные числа в них незави-
симо от того, какой перевод выполняется (ДДК целых чисел в ДК или
ДК правильной дроби в ДДК), рассматриваются как целые.
1,2 4,5,6,7,8,9,10,11,12
Powered by FlippingBook