Изобретение относится к вычислительной технике и может быть использовано при построении преобразователей кодов целых чисел из одной системы счисления в другую.
Целью изобретения является расширение функциональных возможностей преобразователя за счет обеспечения реверсивного преобразования кода с одним основанием в код с другим осно ваниемо
На чертеже приведена структурная схема четырехразрядного преобразователя .
Преобразователе содерзкит масштаби рующие сумматоры 1, соединенные в треугольную матрицу, каждый из которых имеет вход 2 старшего разряда, вход 3 младшего разряда, выход 4 старшего разряда и выход 5 младшего разряда, управляющий вход 6 и содержит умножитель 7 и сумматор 8, Кроме того, преобразователь имеет разрядны входы 9, выход 10 выбора режима работы и выходы 11,
Если необходимо подчеркнуть употребление числа в качестве цифры используется знак С (например, ДД - цифра шестнадцатиричной или какой-ли бо другой системы счисления. Если не обходимо подчеркнуть в какой системе счисления записано число, запись числа индексируется основанием системы счисления, заключенным в скобки (например, 2S tLS число, записанное в шестнадцатиричной системе счисления.
Пусть преобразователь предназначен для преобразования целых чисел и системы счисления с основанием S в систему счисления с основанием R и обратно из R-системы в S. Положим для определенности, что S R. Для представления S-цифры в R-системе счисления достаточно одной соответ- ствующей R-цифры.
Количество входов 2 равно количеству входов 3, равно количеству выходов 4 и количеству выходов 5 масштабирующего сумматора 1 и равно т, ко- личёство выходов сумматора 8 равно соответственно 2т, При преобразовании числа из S-системы счисления в R на
На вход 2 второго сумматора 1 первой строки матрицы поступает число Ь, а на вход 3 этого сумматора 1 - число а , На выходах 4 и 5 сумматора 1 появляется чи.сло ( + а). Причем старшая цифра Появляется на вы ходе 4, а младшая - на выходе 5 Обоз начим старшую цифру числа (Ь S + а
входы 9 подаются не S-цифры, а S-коды
соответствующих, им цифр. Например, 55 как Ь УГ ЭД Гкак bt, - если S 10, R 16, то ш 2 шест- .р - надцатиричным цифрам , П, . .., Точно также на выходе 4 произволь- соответствуют те же самые стоичные ного i-ro (где ) масштабирую- хщфры, которые в свою очередь кодиру- щего сумматора 1 первой строки матриются двумя десятичными цифрами, т,е.
00,
01 и т.д. до
15 (знак заменяет слово соответствует), а при переводе десятичного числа в шестнадцатиричное на входы 9 подаются не десятичные цифры 0,1,,..,9, а пары десятичных цифр 00, 01, 02,.,,,09. .
При переводе (k + 1)-разрядного числа N из S-системы счисления в R преобразователь работает следующим .образом,
На вход 10 управления подается ло (или 1), При этом конгический О
ние умножитель 7, равна S, умножитель 7 и сумматор 8 работают в R-системе счисления, но результаты на их выходах появляются в виде S-кодов R-цифр, Обозначим S-цифры входного числа N как а, ,,.,, а, (где а - старшая цифра; а - младшая), тогда
а .,S Ч
(..,(( + а., )-S +
N а
.+ а
:-2 S : Л
30
45
На входе 2 первого масштабирующего сумматора 1 первой строки матрицы поступает число а , на вход 3 этого сзт матора 1 поступает число а , на выходах 4 и 5 которого появляется число ( + а, ), представленное в R-системе счисления двумя S-кодами R-дифр. При этом старшая R-цифра чис- 35 ла ( + а, ) появляется на выходе 4, а младшая R-цифра - на выходе 5 этого сумматора 1.
Обозначим старшую и младшую R-цифры числа ( + ) первого элемента первой строки матрицы как Ь.. и
40
к-1 - к.
.(2)
Поскольку S R, R-цифра b будет также S-цифрой, а R-цифра Ь может быть, а может и не быть S-цифрой,
На вход 2 второго сумматора 1 первой строки матрицы поступает число Ь, а на вход 3 этого сумматора 1 - число а , На выходах 4 и 5 сумматора 1 появляется чи.сло ( + а). Причем старшая цифра Появляется на выходе 4, а младшая - на выходе 5 Обозначим старшую цифру числа (Ь S + а )
как Ь УГ ЭД Гкак bt, - .р - Точно также на выходе 4 произволь- ного i-ro (где ) масштабирую- щего сумматора 1 первой строки матрицы появляется R-цифра b является также S-цифрой, а на выходе 5 этого сумматора 1 появляется R-цифра, йоторая определяется равенством
13
которая
Ьк.-(-1-(,
S + а
На выходе 5 последнего k-ro сумматора 1 первой строки матрицы появится
На вход 10 подается логическая 1 (или О соответственно). При этом
R-цифра, которая определяется выраже- 0 константа, на которую производит умножение умножитель 7, равна R, a умножитель 7 и сумматор 8 работают в ( I) S-системе счисления/
нием
Ч + Ь,- R,
где Ь,1 - R-цифра, появившаяся на выходе 4 этого k-ro сумматора 1 первой строки матрицы или
S + а ) S + S +..... + a)S +
S + b.. ) S +
b, (...((a + aj- R(...((b
Ьк-. )
S +,
ножение умножитель 7, равна R, a умножитель 7 и сумматор 8 работают в ( I) S-системе счисления/
Разбивка выходов сумматора 8 на f, 15 две группы по m является по существу переводом S-числа, появляющегося на выходе сумматора 8, в Т-систему (Т s) , причем Т-цифры оказываются закодированными S-цифрами. Можно считать, что сумматор 8 (а вместе с ним и умножитель 7) работает в Т-системе счисления, но и поэтому работа преобразователя при переводе числа из системы с меньшим основанием в
20
,... ,
к - + b,)-S + b, .
(5)
В формуле (5) уменьшаемое равно входному числу N, а вычитаемое равно
числу R десйтков, содержащихся в чис-25 систему с большим основанием происходит аналогично описанному.
Рассмотрим работу преобразователя четырехразрядного десятичного числа в таемое буквой М. Поскольку R-цифры. шестнадцатиричное и обратно.. В этом b b ,...,b являются также S-циф- зо рами, запись числа М в S-системе счисления имеет вид
ле N, умноженному на R. Таким образом, .R-цифра Ь равна числу R единиц, со- держаш ихся в числе N. Обозначим вычислучае , , .В качестве шестнадцатиричных цифр используются двухразрядные десятич;рые числа 00,- 01,..., 15.
M.Jb,,
. ,b .(6)
Разрядность числа М в S-системе счисления на единицу меньше, чем разрядность исходного числа N, а цифры числа М подаются на масштабирующие сумматоры 1 второй строки матрицы, содержащей (k - 1) сумматор 1 в точности так же, как цифры числа N пода- юуся элементы первой строки матрицы. Повторив - те же рассуждения для числа М и второй строки матрицы, получают, что на выходе 5 последнего эле- мента второй строки матрицы формируется R-цифра R-десятков, содержащихся в числе N, а на выходе 4 элементов
На выходах 4 элементов первой строки матрицы появятся десятичные коды 02, 04, и 02Г На выходе 5 последнего элемента первой строки матрицы пояг. вится десятичный код 03 шестнадцати-
второй строки матрицы формируется
S-представление числа R-сотен, содер-5о ричной цифры числа шестнадцатиричных
жащихся в числе N и т.д. до последней единиц,, содержащихся в числе 3875,;;,
строки матрицы. S-число, появившееся
на выходе 4 единственного элемента
последней строки матрицы, будет R-цифрой и дальнейшего его преобразования 55 леднего элемента второй строки матрине требуется.Цы появится десятичный код 02. СоотТаким образом, на .выходе 4 элемента 1 последней строки матрицы и на выходах 5 последних элементов всех
Соответственно на выходах 4-элементов второй строки матрицы появятся десятичные коды 01 и 05, на выходе 5, посветственно на выходе 4 элемента последней строки матрицы появится десятичный код 00, на выходе 5 которого
24384
строк матрицы формируется R-представ- ление исходного числа, поданного на преобразователь в S-системё счисления.
При переводе (k + 1)-разрядного числа L из R-системы счисления в S-npe- образователь работает следующим образом.
На вход 10 подается логическая 1 (или О соответственно). При этом
0 константа, на которую производит ум
ножение умножитель 7, равна R, a умножитель 7 и сумматор 8 работают в S-системе счисления/
Разбивка выходов сумматора 8 на 15 две группы по m является по существу переводом S-числа, появляющегося на выходе сумматора 8, в Т-систему (Т s) , причем Т-цифры оказываются закодированными S-цифрами. Можно считать, что сумматор 8 (а вместе с ним и умножитель 7) работает в Т-системе счисления, но и поэтому работа преобразователя при переводе числа из системы с меньшим основанием в
20
Рассмотрим работу преобразователя четырехразрядного десятичного числа в шестнадцатиричное и обратно.. В этом о
5
0
5
случае , , .В качестве шестнадцатиричных цифр используются двухразрядные десятич;рые числа 00,- 01,..., 15.
При переводе числа из десятичной системь счисления в шестнадцатиричную на вход 10 подается логический О. При этом константа, на.которую производит умножение умножитель 7, равна 10, а работать умножитель 7 и сумматор 8 будут в шестнадцатиричной системе счисления.
Перевод десятичного числа, например, 3875 р осуществляется следующим образом.
На выходах 4 элементов первой строки матрицы появятся десятичные коды 02, 04, и 02Г На выходе 5 последнего элемента первой строки матрицы пояг. вится десятичный код 03 шестнадцати-
единиц,, содержащихся в числе 3875,;;,
Соответственно на выходах 4-элементов второй строки матрицы появятся десятичные коды 01 и 05, на выходе 5, посЦы появится десятичный код 02. Соответственно на выходе 4 элемента последней строки матрицы появится десятичный код 00, на выходе 5 которого
появится десятичный код 15. Десятичный код 00, появившийся на выходе 4 элемента последней строки матрицы, соответствует числу шестнадцатиричных тысяч. Таким образом, получается шестнадцатиричное представление
3875,,„, 00
15 02 03
(7)
При переводе числа из шестнадцатиричной системы счисления в десятиричную на вход 10 подается логическая 1. При этом константа, на которую производит умножение умножитель 7, равна 16, а работать Умножитель 7 и сумматор 8 будут;в десятичной системе счисления.
Перевод шестнадцатиричного числа,
например До ЛХ .02. . ОЗ , - -- 16 ществляется следующим .
На выходах 4 элементов первой строки матрицы появятся десятичные Коды 01., 12 и 00, на выходе 5 последнего элемента первой строки матрицы появится десятичный код стоич- ной цифры 35, На выходах 4 элементов второй строки матрицы появятся десятичные коды 00 и 04, на выходе 5 пос леднего элемента второй строки матрицы появится десятичный йод стоичной цифры 48, На выходе 4 и 5 элемента последней строки.матрицы появятся десятичные коды 00 и 04. Таким образом
SUMS
Гоо044835:;оГ -Строка Га Га Га Та Га Га Га Та Га I b Гь Гь Гь Ть ГьТь Гь .±....1-±-1
149
О 1 О О 1 О 1 О .1 О 1 О 1 1 1 1 1Заполнив всю таблицу, получают табличное задание системы функций. В. эту таблицу входят все возможные наборы аргументов а а ,...,а.
Рациональнее всего, но не обязательно, выполнять требуемое устрой- с тво на основе ПЗУ, например, с организацией 9 - 8.
Вторую половину объема ПЗУ отводят под устройство, которое работает при переводе двоичных чисел в двоично- десятичные. В этом случае на вход 6 подается единица. Наиболее рационально объем ПЗУ используется,-если предварительно преобразовать двоичное
5
При преобразовании двоично-десятичных чисел в двоичные S 10, R 2, m 4. Коэффициент умножения умножителя 7 равен 10,- умножитель 7 и сумматор 8 работают в двоичной сис- текг счисления. Для того, чтобы спроектировать масштабирующий сумматор 1, необходимо задать систему логических функций в табличной форме. Обозначим младший вход 3 а, а, а„, а. Аналогично обозначим вход, а,,, а, а и а, а вход 6 как а. Точно так же обозначим выход 5 Ь, Ь
- 4 Ь
л
и b
b, иЬ
а выход 4
Таблица, задающая эту систему функций, содержит 256 строк и .17 столбцов. В первых девяти столбцах записываются значения аргументов а, а,..., а, в остальных восьми столб0 Цах - значения функ ций Ц, Ь,... ,Ьо,. Поскольку при переводе двоично-десятичных чисел в двоичные на вход 6 корректирующего элемента 1 подается ноль, значение аргумента а в состав5 ляемой таблице всегда нулевое. Пронумеруем строки таблицы от О до 255. Рассматривая наборы переменных и как четырехразрядные двоичные числа, находят вось0 ьшразрядное двоичное число, определяемое по формуле
ЪЪь Е.у ,,,,
и запишем значения разрядов этого числа в столбцах ,... ,Ьд в строке с двоичным номером . a e S, а, а , а, а
5
н 1/0 i 3e3s& 5 a«S S «
Например, 149-я строка составляемой таблицы выглядит следующим образом:
число в двоично-восьмеричное, а затем переводить его в двоично-десятичное.
Сначала двоичное число разбивается на триады, начиная с младшего разряда а затем каждая триада дополняется до тетрады добавлением в нее нулевого старшего разряда. Это преобразование осуществляется внешним монтажом входов 9.
Таким образомj при преобразовании двоично-восьмеричного числа в двоично-десятичное S 8,,R Ipj.m 1, т.е. входы 2 и 3 и выходы 4,5 состоят из четырех двоичных разрядов. Коэффициент умножения умножителя 7 равен 8,
умножитель 7 и сумматор 8 работают в десятичной системе счисления. Для проектирования масштабирующего сумматора составляют аналогичную таблицу. Обозначают двоичные разряды 3 входов и а , начиная со старшего,
как
аза.,а.
а двоичные разряды входа 2 как а.а а и а, двоичные разряды выхода 5 как
да 4
и Ъ,,
двоичные разряды выхо- как и b соответ.стренно Таблица имеет семнадцать столбцов Заполнение таблицы
прои сто строк
изводят следуюпц1м образом.
Нумеруют строки таблицы двухразрядными десятичными числами от 00 до
I J I I l I l I J I KЬIJIi A
67
101 1001 1 101010101
Заполнив всю таблицу, получают табличное задание функций. На не вошедших в таблицу наборах аргументов функции могут принимать произвольные зна-25 чения.
Предлагаемое устройство может быть также реализовано на основе ПЗУ с организацией , причем для его реализации требуется половина объема ПЗУ. .,Q
Объединяя обе Составленные таблицы в одну, получают полную таблицу программирования ПЗУ для работы в качестве масштабирующего сумматора в преобразователе целых чисел, предназначенном для преобразования двоично- десятичных чисел в двоичные и двоичных в двоично-десятичные
Формула изобретения
Преобразователь позиционного кода из одной системы счисления в другую, содержащий масштабирующие сумматоры, соединенные в треугольную матрицу таким образом, что входы старшего разряда первого масштабирующего сумматора и входы младшего разряда всех масштабирующих сумматоров первой строки матрицы соединены с соответствующими разрядными входами преобразователя, входы старших разрядов всех масштаби- сумматоров первой строки, кроме первого, соединены с выходами младших разрядов соседнего старшего масштабирующего сумматора первой строки, вход старшего разряда первого масштабирующего сумматора i-й строки
99. В первый столбец таблицы, соот- .ветствующий. а., во все строки заносится единица. В следующие восемь столбцов таблицы заносится двоично-десятичный код номера строки. Для строки.
имеющей номер а I-1
разрядное число
1О
находят двух
10
15
ь
- tio 1-1 1О
-ЧЮ
Затем записывают в строку, имеющую номер столбцы, соответствующие функциям, - двоично-десятичные коды цифр 0, и а. Например, 67-я строка этой таблицы выглядит следующим образом:
5
Q
5
0
Q5
(i 2 - k - 1, где k - число разрядов входного кода) соединен с выходом старшего разряда масштабирующего сумматора (i - 1)-й строки, вход младшего разряда j-ro масштабирующего сумматора i-й строки (j 1 - k - i) соединен с выходом старшего разряда (J + 1)-го масштабирующего сумматора (i - 1)-й строки, вход старшего разряда (j + 1)-го масштабирующего сумматора i-и строки соединен с выходом младшего разряда j-ro масштабирующего сумматора i-й строки, выход старшего разряда масштабирующего сумматора (k - 1)-й строки и выходы младших разрядов последних масштабирующих сумматоров всех строк являются разрядными выходами преобразователя, о тличающийся тем, что, с целью расширения функциональных возможностей за счет обеспечения реверсивного преобразования кода с любым основанием в код с любым другим основанием, в нем все масштабирующие сумматоры содержат умножитель и сумматор, управляющие входы которых соединены с входом выбора режима работы преобразователя, выход умножителя соединен с входом первого слагаемого сумматора, вход второго слагаемого которого соединен с входом младшего разряда масштабирующего сумматора, вход старшего разряда которого соединен с входом умножителя, первая и вторая группы выходов сумматора являются соответственно выходами старшего и младшего разрядов масштабирующего сумматора.
название | год | авторы | номер документа |
---|---|---|---|
Преобразователь кода дробного числа из одной системы счисления в другую | 1986 |
|
SU1378064A1 |
Устройство для умножения | 1986 |
|
SU1432506A1 |
Реверсивный преобразователь двоично-десятичного кода в двоичный | 1988 |
|
SU1501278A1 |
УСТРОЙСТВО для ВОЗВЕДЕНИЯ ЧИСЕЛ В СТЕПЕНЬ ЧЕТЬ[РЕ | 1971 |
|
SU290279A1 |
Устройство для умножения | 1983 |
|
SU1180881A1 |
РЕВЕРСИВНЫЙ ПРЕОБРАЗОВАТЕЛЬ ДВОИЧНО-ДЕСЯТИЧНОГО КОДА В ДВОИЧНЫЙ | 1990 |
|
RU2022467C1 |
Преобразователь позиционного кода в код с большим основанием | 1987 |
|
SU1444959A1 |
Устройство для умножения | 1981 |
|
SU1032453A1 |
Преобразователь форматов данных | 1982 |
|
SU1092490A1 |
Преобразователь двоичного кода в р-ичный позиционный код | 1983 |
|
SU1163479A1 |
Изобретение относится к области вычислительной техники и может быть использовано при построении преобразователей кодов чисел из одной системы счисления в другую. Целью изобретения является расширение функциональных возможностей за счет обеспечения реверсивного преобразования ко,- да с любым основанием в код с другим основанием. Поставленная цель достигается тем, что в преобразователе позиционного кода из одной системы счисления в другую, содержащем масшта- бируюпще сумматоры 1, соединенные в треугольную матрицу, каждый масштабирующий сумматор содержит умножитель 7 и сумматор 8, первый вход которого соединен с выходом умножителя, а второй - с выходом соседнего младшего масштабирующего сумматора. 1 ил. СЛ
Л-- . ^ - .. -.^nsTfy-;-;:.-; , ,. ^lii-i i _i; i iiCi" . . ,. ,BHb/.hoО. Ф. Лобов | 0 |
|
SU317061A1 |
Способ восстановления хромовой кислоты, в частности для получения хромовых квасцов | 1921 |
|
SU7A1 |
Электроосмотический усилитель мощности | 1975 |
|
SU587469A1 |
Переносная печь для варки пищи и отопления в окопах, походных помещениях и т.п. | 1921 |
|
SU3A1 |
Авторы
Даты
1987-04-07—Публикация
1986-01-07—Подача