Изобретение относится к автоматике, и вычислительной технике и назначено для преобразования кодов правильных дробных чисел из одной системы счисления в другую.
Целью изобретения является расширение класса решаемых задач за счет обеспечения реверсивного преобразования кода дробного числа.to
На чертеже приведена структурная схема преобразователя.
В качестве примера рассмотрено устройство, позволяющее преобразовывать правильные десятичные дроби, |5 имеюрдие два знака после запятой, в прави.пьные восьмиричные дроби с точностью до -трех восьмиричных цифр после запятой (что соответствует преобразованию в правильную двоичную 20 дробь с точностью до девяти знаков после запятой) или позволяющее преобразовывать правильные двоичные дроби, имеющие восемь знаков после запятой (что соответствует правиль- 25 ным шестнадцатиричным дробям, имею- Щ1-ГМ два знака после запятой ), в пра- вилйные десятичные дроби с точностью до трех знаков после запятой.
Преобразователь содержит масюта- 30 бирую1щ-1е сумматоры 1, соединенные в прямоугольную матрицуо Каждый масштабирующий сумматор имеет вход 2 старшей тетрады, вход ,3 млад1пей тетрады, вьзсод 4 старшей тетрады и выход 5 младшей тетрады, управляюгщй вход 6 и содержит умножитель 7 и сумматор 8, причем каждьй вход и выход масштабирующего сумматора 1 за исключением управляющего входа 6 содержит по . 0 четыре двоичных разряда. Входы 2 старшей тетрадьт масштабирующих сумматоров i первой строки матрицы подключены к разрядным входам 9 преобразователя, управляющие вход1-.1 6 всех масштабирующих озонаторов 1 подключены к управляюрдему входу 10 преобразователя, а выходы 4 старшей тетрады масштабирующих сумматоров 1 первого столбца матрицы подключены к разряд- ным выходам 11 преобразователя, входы 3 младшей тетрады всех масита бирующих сумматоров 1 последнего столбца матрицы подключены к входу логического нуля преобразователя. гг
При описании работы преобразовате ля используются следующие соглашения: строки матрицы нумеруются сверху вниз, столб7 1 матрицы нумеруются
слева направо. При- подаче на управляющий вход 6 логического нуля коэффициент умножения равен 10, а работа ют умножитель и сумматор в двоичной системе счисления. При подаче на управляющий вход 6 логической едини - цы коэффициент умножения умножителя равен 8, а работают умножитель и сумматор в десятичной системе счисления
При переводе десятичных дробей в двоичные преобразователь работает следующим образом. Пусть, например, необходимо перевести дробь 0, в двоичную систему счисления. На управляю1ций вход 10 преобразователя должна быть подана логическая единица. На вход 2 старшей тетрады первого масштабирующего сумматора 1 перво строки матриф подается цифра 5 (0101), на вход 2 старшей тетрады второго масштабирующего сумматора 1 первой строки матрицы - цифра 9 (lOOl). На выходах 4 и 5 первого и второго масштабирующих сумматоров 1 первой строки матрин зГ появляются соответственно цифры 4,7,7,2 (0100, 0111, 0111, 0010). На выходах 4 и 5 первого и второго масштабируюпдах сумматоров 1 второй строки матршда появляются соответственно цифры 5,7,1,6 (0101, 0111, 0001, ОНО) и на выходах 4 и 5 первого и второго -масштабирующих сумматоров 1 третьей строки матрицы появляются соответственно цифры 6, 0,4,8 (ОНО, 0000, 0100, 1000). На выходах 4 масштабирующих сумматоров 1 первого столбца матрицы появляются цифры 4,5,6 (0100, 0101,0110), которые являются цифрами восьмиричного дробного числа, приближающего исходную дробь 0,59 с точностью до третьей цифры после запятой (можно строго доказать, что на выходах 4 мacIlJтaбиpyющиx сумматоров 1 первого столбца матрицы могут появиться только цифры 0,1,...,7 и никогда не могут появиться цифры 8 и 9). Чтобы получить требуемую двоичную дробь достаточно превратить тетрады двоичных разрядов, представляю1 ще цифры восьмиричной дроби в триады, т.е. исключить из тетрады старший бит (он всегда равен нулю), например, внепгаим мЪнтажем при подключении выходов 4 масштабируюш 1х сумматоров 1 первого столбца матрицы к разрядным выходам 11 преобразователя, а затем в получившейся дроби снять разбивку
двоичных разрядов на триады, что является чисто формальной операцией. Таким образом, на выходах 4 масшта- бирумщих сумматоров 1 первого столбца матрицы появляются кодовые комби- нации 0100, 0101, ОНО, и после исключения старших разрядов тетрад на разрядных выходах 11 преобразователя получается кодовая комбинация 100101110, которая представляет девять разрядов двоичной дроби, приближающей исходную дробь 0,59. Действительно, 0,100101 1 1 {, 2- + + 2 + 2- 2- + 2- 0,58984375 0,59 ,,,..
При переводе двоичных дробей в десятичные преобразователь работает следующим образом. Пусть, например, необходимо перевести дробь 0,10010111 г,) 0,58984375 « в десятичную систему счисления. На управляющий вход 10 преобразователя должен быть подан логический ноль. Производится разбивка двоичных разрядов исходной дроби на тетрады (если последняя тетрада неполная, то она , дополняется нулями), т.е. производится перевод дворгчной дроби в гчестнад- цатиричную с представлением шестнадца тиричньк цифр тетрадами двоичных разрядов. На вход 2 старшей тетрады первого масштабирующего сумматора 1 первой строки матрицы подается первая после запятой тетрада двоичных разрядов 1001, на вход 2 старшей тетрады второго масштабирующего сумматора 1 первой строки матрицы подается следующая тетрада двоичных разрядов 0111. На выходах 4 и 5 первого и второго масштабирующих сумматоров 1 первой строки матрицы появляются соответственно тетрады двоичных разрядов 0101, 1110, 0100, ОНО. На, выходах 4 и 5 первого и второго масштабирующих сумматоров 1 второй строки матрицы появляются соответственно тетрады двоичных разрядов 1000, 1111 ООП, 1100. На выходах 4 и 5 первого и второго масштабирующих сзгмматоров 1 третьей строки матрицы появляются соответственно тетрады двоичных разрядов 1001, 1101, 0111, 1000. Таким образом, на выходах 4 масштабирующих сумматоров 1 первого столбца матрицы появляются тетрады двоичных разрядов 0101, 1000, ,1001, которые представляют собой двоично-кодированные десятичные цифры 5,8,9 (можно
0
5
5 „
0
5
0
5
строго доказать, что на выходах 4 масштабирующих сумматоров 1 первого столбца матригд-г могут появиться только двоично-кодированные десятичные цифры О,1,2,...,9 и никаких других кодовых комбинаций появиться не может). При непосредственном подключении выходов 4 старшего разряда мас- штабируюп(их сумматоров 1 первого столбца матрицы к разрядным выходам 11 преобразователя на разрядных выходах 11 преобразователя получается кодовая комбинация 0101, 1000, 1001, которая представляет собой три двоично-кодированных десятичных цифры десятичной дроби, приближающей исходную двоичную дробь. Действительно, 0,589 о SO, 10010111 ,, .- 0,58984375 ,,„,.
Формула изобретен и я
Преобразователь кода дробного числа из одной системы счисления в другую, содержащей прямоугольную матрицу масштабирующих сумматоров, причем входы старшей тетрады всех масштабирующих сумматоров первой строки подключен к входам соответствующих разрядов преобразователя, выходы:младших разрядов старших тетрад всех масштабирующих сумматоров первого столбца подключены к разрядным выходам преобразователя, выходы старших разрядов младшей тетрады масштабирующего сз мматора i-й строки и j-ro столбца (i 1,...,п, j l,...,m)j где пит- разрядности входного и выходного кодов соответственно) соединены соответственно с входами трех старших разрядов старшей тетрады (i «fl ,j )-го масштабирующего сумматора, входы младших разрядов старшей тетрады всех, кроме первого, масштабирующих сумматоров п-го столбца соединены с входами логического нуля преобразователя, отличающий ся тем, что, с целью расширения класса решаемых задач путем обеспечения реверсивного преобразования кода дробного числа, в нем каждый масштабирующий .сумматор содержит умножитель и сумматор, первая группа информационных входов которого соединены с выходами умножителя, информационные входы которого являются входами старшей тетрады масштабирующего сумматора, входы младшей тетрады которого соединены с второй группой информационных входов сумматора, выходы младшей и старшей тетрад которого являются соответственно выходами г ладгаей и старгпей тетрад масштабиру- юго.его суг-матора, управляюнщй вход которого соединен с управляющими входами умножителя и сумматора, при чем выходы старшей тетрады всех i,j масгатабирующих сумматоров, кроме мас- штабгтрующих сумматоров первого столбца j соединены с входами младшей тет
рады (i,j-l)-ro масштабирующего сумматора, управляющие входы всех масштабирующих сумматоров соединены с управляющим входом преобразователя, вход логического нуля которого соединен с входом младшей тетрады 1, п-го масштабирующего сумматора, выходы младших разрядов младшей тетрады всех i,j масштабирующих сумматоров, кроме масштабирующих сумматоров т-й строки, соединены с входами младиего разряда старшей тетрады (i+l,j)-ro масштабирующего сумматора.
Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении устройств для преобразования дробей из одной системы счисления в другую. Целью изобретения является расширение класса решаемых задач за счет обеспечения реверсивного преобразования кода дробного числа. Поставленная цель достигается тем, что в преобразователе кода дробного числа из одной систем1 1 счисления в другую, содержащем прямоугольную матрицу масштабирующих сумматоров 1, каущът масштабируюгций сумматор содержит умножитель 7 и сумматор 8, управляющие входы которых являются управляющий входом преобразователя. 1 ил. SS
Авторы
Даты
1988-02-28—Публикация
1986-09-29—Подача