Построение преобразователей двоично-десятичного кода целых чисел…
3
Рассмотрим
преобразования ДДК целых чисел в ДК
и
ДК пра-
вильных дробей в ДДК
.
Алгоритмы перевода можно определить,
приведя записи целой и дробной частей двоичного числа
А
2
1 2 0 1 2
1
2
1
1
2
0
1
2
2
...
...
2
2 ...
2
2 ...
2 ,
l
l
k
l
l
l
l
k
k
A b b b b b b
b
b
b b
b
b
(5)
к виду последовательных вложений
ц
ц
1
2
1
0
2-10 2
...
2
2 ...
2 ,
l
l
A A b
b
b
b
(6)
др
др
1
1
1
1
( 1)
2
1
2-10 2
...
2
2 ...
2
2 ,
k
k
A A
b
b
b
b
(7)
где
1 2
0 1 2
,
,..., ,
,
,...,
l
l
k
b b b b b b
— цифры целой и дробной частей
числа, равные 0 или 1;
l
и
k
— количество разрядов целой и дробной
частей числа.
Анализ алгоритмов перевода ДДК целых чисел в ДК и ДК пра-
вильных дробей в ДДК, которые можно определить из (6) и (7), вы-
являет общие характерные черты и особенности, а также некоторые
отличия этих алгоритмов, принципиально влияющие на выполнение
арифметических операций, на систему счисления, в которой выпол-
няются действия, элементную базу и рациональное построение
функциональных схем преобразователей, реализующих эти виды пе-
реводов чисел.
Согласно (6) перевод ДДК целого числа в ДК состоит в последо-
вательном делении числа и образующихся целых частных на основа-
ние 2 двоичной системы счисления. Полученные в процессе последо-
вательного деления остатки являются цифрами
0 1
1
, , ...,
l
b b b
целого
числа
А
в новой, т. е. двоичной, системе счисления. Последний оста-
ток является старшей цифрой
1
l
b
двоичного числа [6–8].
Согласно (7) перевод ДК правильной дроби в ДДК сводится к
k
-кратному выполнению суммирования и умножения на 2
–1
, т. е. де-
ления на 2. В первом такте определяется произведение
1
(0 ) 2
k
b
(начальное значение суммы равно 0 – начальное условие), во втором
такте —
1
1
( 1)
2
2
k
k
b
b
и т. д. [5]. Например, при переводе
двоичной дроби 0,1011
2
в десятичную последовательно получим:
1
1
1
1
0 1 2 0,5; 0,5 1 2 0, 75;
0, 75 0 2 0, 375; 0, 375 1 2 0, 6825.
Действительно, 0,1011
2
= 0,6825
10
.