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

2
В.Ф. Жирков, В.А. Мясников
(2)
где
1
2
1 0
,
, ..., ,
n
n
α α α α
– двоичные тетрады, изображающие десятич-
ные цифры.
В двоичной системе счисления это число изображается так:
(3)
где
b
k
– 1
,
b
k
– 2
, …,
b
1
,
b
0
– двоичные цифры 0 или 1, 2 – основание дво-
ичной системы счисления;
k
– количество двоичных разрядов числа
А
.
Алгоритмы преобразования числа
A
ц
в двоичную систему счисле-
ния следуют из записи выражения (3) по схеме Горнера:
(4)
Один из них, наиболее пригодный для аппаратной реализации пре-
образования целого числа, заключается в последовательном делении
целого числа и образующихся целых частных на основание 2 двоич-
ной системы счисления. Получающиеся остатки в ходе процесса по-
следовательного деления являются цифрами
0 1
2
1
, , ...,
,
k
k
b b b b
целого
числа
А
, переведенного в новую, т. е. двоичную, систему счисления.
Разделив правую часть выражения (4) на 2, определим первый оста-
ток
b
0
и целую часть
(
)
(
)
1
2
2
1
...
2
2 ...
2 .
k
k
b
b
b
b
⋅ + ⋅ + + ⋅ +
Разделив
эту целую часть на 2, найдем второй остаток
b
1
и очередное частное
(
)
(
)
1
2
3
2
...
2
2 ...
2 .
k
k
b
b
b
b
⋅ + ⋅ + + ⋅ +
Повторяя процесс деления
k
раз, по-
лучим последнее частное
b
k
– 1
, которое, согласно (4), меньше основа-
ния 2 двоичной системы счисления и является старшей цифрой двоич-
ного числа.
Операция деления на 2 выполняется сдвигом двоично-десятичного
числа вправо (в сторону младших разрядов) на один двоичный разряд
(позицию). При этом младшие разряды исходных чисел и образую-
щихся частных являются остатками от деления. При сдвиге двоично-
десятичного числа вправо разряд тетрады с весом 8 приобретает вес 4,
с весом 4 – вес 2, с весом 2 – вес 1, т. е. происходит деление числа
на 2. Однако для получения правильного частного необходимо выпол-
нить коррекцию результата сдвига, если при сдвиге какая-либо едини-
ца переходит из одной тетрады в другую. Действительно, эта едини-
ца, которая имеет разрядное значение, равное десяти единицам того
разряда, в который она сдвигается, приобретает в нем вес 8, а должна
приобрести вес 5 (10 : 2 = 5). Следовательно, для коррекции с целью
получения правильного результата необходимо вычесть 3
10
= 0011
2
из
тех тетрад, в которые при сдвиге поступила единица. Если в старший
1 3,4,5,6,7,8,9
Powered by FlippingBook