Преобразователь позиционного кода из одной системы счисления в другую

 

Изобретение относится к области вычислительной техники и может быть использовано при построении преобразователей кодов чисел из одной системы счисления в другую. Целью изобретения является расширение функциональных возможностей за счет обеспечения реверсивного преобразования ко,- да с любым основанием в код с другим основанием. Поставленная цель достигается тем, что в преобразователе позиционного кода из одной системы счисления в другую, содержащем масштабируюпще сумматоры 1, соединенные в треугольную матрицу, каждый масштабирующий сумматор содержит умножитель 7 и сумматор 8, первый вход которого соединен с выходом умножителя, а второй - с выходом соседнего младшего масштабирующего сумматора. 1 ил. СЛ

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК (51)4 Н 03 M 7 12

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ

Н А BTOPCHOMY СВИДЕТЕЛЬСТВУ (21) 4006195/24-24 . (22) 07.01.86 (46) 07.04.87. Бюл. й- 13 (71) Смоленское специальное конструкторско-технологическое бюро систем программного управления (72) С.А.Лебедев (53) 681.325(088.8) (56) Авторское свидетельство СССР

В 317061, кл. Н 03 M 7/28, 1969.

Авторское свидетельство СССР

Ф 587469, кл. Н 03 М 7/18, 1972. (54) ПРЕОБРАЗОВАТЕЛЬ ПОЗИЦИОННОГО КОДА ИЗ ОДНОЙ СИСТЕМЫ СЧИСЛЕНИЯ В ДРУГУЮ (57) Изобретение относится к области вычислительной техники и может быть использовано при построении преобра„„SU„1302438 А1 зователей кодов чисел из одной системы счисления в другую. Целью изобретения является расширение функциональных возможностей sa счет обеспечения реверсивного преобразования ко; да с любым основанием в код с другим основанием. Поставленная цель достигается тем, что в преобразователе позиционного кода из одной системы счисления в другую, содержащем масштабирующие сумматоры 1 ° соединенные в треугольную матрицу, каждый масшта" бирующий сумматор содержит умножитель

7 и сумматор 8, первый вход которого соединен с выходом умножителя, а второй — с выходом соседнего младшего масштабирующего сумматора. 1 ил.! 13

Изобретение относится к вычислительной технике и может быть использовано при построении преобразователей кодов целых чисел из одной системы счисления в другую.

Целью изобретения является расширение функциональных возможностей преобразователя за счет обеспечения реверсивного преобразования кода с одним основанием в код с другим основанием.

На чертеже приведена структурная схема четырехразрядного преобразователя.

Преобразователь содержит масштаби", рующие сумматоры 1, соединенные в треугольную матрицу, каждый из которых имеет вход 2 старшего разряда, вход 3 младшего разряда, выход 4 старшего разряда и выход 5 младшего разряда, управляющий вход б и содержит умножитель 7 и сумматор 8, Кроме того, преобразователь имеет разрядные входы 9, выход 10 выбора режима работы и выходы 11.

Если необходимо подчеркнуть употребление числа в качестве цифры ис(1

Ъ пользуется знак (например, 10— цифра шестнадцатиричной или какой-ли-. бо другой системы счисления. Если необходимо подчеркнуть в какой системе счисления записано число, запись числа индексируется основанием системы счисления, заключенным в скобки (например, 10 12 с ь>- число, записанное в шестнадцатиричной системе счисления.

Пусть преобразователь предназначен для преобразования целых чисел из системы счисления с основанием Б в систему счисления с основанием R u обратно из R-системы в S. Положим для определенности, что S (R. Для представления S-цифры в R-системе счисления достаточно одной соответствующей R-цифры.

Количество входов 2 равно количеству входов 3, равно количеству выходов 4 и количеству выходов 5 масштабирующего сумматора 1 и равно ш, количество выходов сумматора 8 равно соответственно 2m. При преобразовании числа из S-системы счисления в R на входы 9 подаются не S-цифры, а S-коды соответствующих им цифр. Например, если S = 10, R = 1б, то ш = 2 шест1 надцатиричным цифрам О, 1 ..., 15 соответствуют те же самые стоичные цифры, которые в свою очередь кодиру02438 2 ются двумя десятичными цифрами, т.е. =-1 и

0«> 00, 1„., 01ит.д. до

15 gy6 ) 15 (знак заменяет слово соответствует), а при переводе деся5 тичного числа в шестнадцатиричное на входы 9 подаются не десятичные цифры

G,1,...,9, а пары десятичных цифр 00, 01 ° 02 ° ° ° ° @09.

При переводе (k + 1)-разрядного числа N из Я-системы счисления в R преобразователь работает следующим .образом.

На вход 10 управления подается ло гический "0" (или "1"). При этом константа, на которую производит умножение умножитель 7, равна S, умножитель

7 и сумматор 8 работают в R-системе счисления, но результаты на их выхо20 . дах появляются в виде S-кодов R-цифр.

Обозначим S-цифры входного числа N как а„, а,..., а, (где а — старк-! д м шая цифра; а,. — младпая), тогда

К

К-1

N=a„S+a S +,...,+а

25 =(...((a„S + а„,).S + à )S +

+,...,+ а S + а,). (1)

На входе 2 первого масштабирующего сумматора 1 первой строки матрицы поступает число а, на вход 3 этого к сумматора 1 поступает число а, на к- выходах 4 и 5 которого появляется число (а„ S + а, ), представленное в R-системе счисления двумя S-кодами

R-цифр. При этом старшая R-цифра чис 5 ла (а„ $ + а„, ) появляется на выходе

4, а младшая R-цифра — на выходе 5 этого сумматора 1.

Обозначим старшую и младшую К-цифры числа (а .8 + а„ „ ) первого элемента первой строки матрицы как Ь и

Ф

М

b„тогда

Ь„= а„Я+ а„,— Ъ.R (2)

Поскольку S e R R-цифра Ъ„ будет

45 также S-цифрой, à R-цифра Ь„ может

% быть, а может и не быть S-цифрой.

На вход 2 второго сумматора 1 первой строки матрицы поступает число

Ь», а на вход 3 этого сумматора 1 число а . Ha выходах 4 и 5 сумматок 2 ° ра .1 появляется число (bü„S + а„<) .

Причем старшая цифра появляется на выходе 4 а младшая — на выходе 5. Обоз1

Ф начим старшую цифру числа (Ъ S + а )

55 к К-2 как Ь,, младшую как b„, .

Э

Точно также на выходе 4 произвольного i-го (где 2 < i 6 k) масштабирующего сумматора 1 первой строки матри3 1302 цы поЯвлЯетсЯ R-цифРа Ь„ „;, которая является также S-цифрой, а на выходе

5 этого сумматора 1 появляется R-цифра, Которая определяется равенством

ЬК .1

- b„, +

= Ь..„», 8 R.

+ а и-i (3) На выходе 5 последнего k-го сумматора 1 первой строки матрицы появится

R-цифра, которая определяется выраже10 нием

1(.

b„=b .S+a — Ь, R, () где b, — R-цифра, появившаяся на выходе 4 этого k-го сумматора 1 первой строки матрицы или

Ь, =((...((a, S + Ä )S +

+ а „ ) S +,., + а,)S +

+а)-Rt(...((Ъ S+Ь„„) S+ 20

+ b„ ) S +,..., + b ) S + b„) ° (5)

В формуле (5) уменьшаемое равно входному числу И, а вычитаемое равно числу R десятков, содержащихся в чис- 25 ле N умноженному íà R. Таким образом, . R-цифра Ь равна числу R единиц, со% держащихся в числе N. Обозначим вычитаемое буквой M. Поскольку R-цифры

Ь,Ь,,. ° .,Ь являются также S-циф- 30 рами, запись числа М в S-системе счисления имеет вид (б) Разрядность числа M в S-системе

35 счисления на единицу меньше, чем разрядность исходного числа N а цифры числа M подаются на масштабирующие сумматоры 1 второй строки матрицы, содержащей (К вЂ” 1) сумматор 1 в точ- 40 ности так же, как цифры числа N подаются элементы первой строки матрицы.

Повторив - те же рассуждения для числа M и второй строки матрицы, получают, что на выходе 5 последнего эле- 45 мента второй строки матрицы формируется R-цифра R-десятков, содержащихся в числе N, а на выходе 4 элементов второй строки матрицы формируется

S-представление числа R-сотен, содер-50 жащихся в числе N и т.д. до последней строки матрицы. S-число, появившееся на выходе 4 единственного элемента последней строки матрицы, будет R-цифрой и дальнейшего его преобразования не требуется.

Таким образом, на выходе 4 элемента 1 последней строки матрицы и на выходах 5 последних элементов всех

438 4 строк матрицы формируется R-представление исходного числа, поданного на преобразователь в S-системе счисления.

При переводе (k + 1). †разрядно числа Еиз К-системы счисления в S-преобразователь работает следующим образом.

На вход 10 подается логическая "1" (или "0" соответственно). При этом константа, на которую производит умножение умножитель 7, равна R а умножитель 7 и сумматор 8 работают в

S-системе счисления:

Разбивка выходов сумматора 8 на две группы по ш является но существу переводом S-числа, появляющегося на выходе сумматора 8, в Т-систему (Т =

= S ), причем Т-цифры оказываются saкодированными S-цифрами. Можно считать, что сумматор 8 (а вместе с ним и умножитель 7) работает в Т-системе счисления, но T ) R и поэтому работа преобразователя при переводе числа из системы с меньшим основанием в систему с большим основанием происходит аналогично описанному.

Рассмотрим работу преобразователя четырехразрядного десятичного числа в шестнадцатиричное и обратно.. В этом случае S = 10, R = 16, m = 2. В качестве шестнадцатиричных цифр используются двухразрядные десятичные числа

00, 01,..., 15.

При переводе числа из десятичной системы счисления в шестнадцатиричную на вход 10 подается логический "О.".

При этом константа, на которую производит умножение умножитель 7, равна

10, а работать умножитель 7 и сумма- тор 8 будут в шестнадцатиричной системе счисления.

Перевод десятичного числа, например, 3875,, осуществляется следующим образом.

На выходах 4 элементов первой строки матрицы появятся десятичные коды

02, 04, и 02. На выходе 5 последнего элемента первой строки матрицы поя-.. вится десятичный код 03,шестнадцати- ричной цифры числа шестнадцатиричных единиц„ содержащихся в числе 3875,„6..

Соответственно на выходах 4 элементов второй строки матрицы появятся десятичные коды 01 и 05, на выходе 5. последнего элемента второй строки матрицы появится десятичный код 02. Соответственно на выходе 4 элемента последней строки матрицы появится десятичный код 00, на выходе 5 которого

5 13024 появится десятичный код 15. Десятичный код 00, появившийся на выходе 4 элемента последней строки матрицы, соответствует числу шестнадцатиричных тысяч. Таким образом, получается шестнадцатиричное представление

Строка а а а а а а а а а Ъ Ь Ь Ь Ь b Ь b, 149 0 1 0 0 1 0 1 0

1 0 1 0 1 1 1 1 1. число в двоично-восьмеричное, а затем переводить его в двоично-десятичное.

Сначала двоичное число разбивается на триады, начиная с младшего разряда,. а затем каждая триада дополняется до тетрады добавлением в нее нулевого старшего разряда. Это преобразование осуществляется внешним монтажом входов 9.

Таким образом; при преобразовании двоично-восьмеричного числа в двоично-десятичное 8 = 8, R - =10 в 1, т.е. входы 2 и 3 и выходы 4,5 состоят из четырех двоичных разрядов. Коэффициент умножения умножителя 7 равен 8, 50

3875 = 00 15 02 03 . (7)

410 i6)

При переводе числа из шестнадцатиричной системы счисления в десятиричную на вход 10 подается логическая

"1" ° При этом константа, на которую производит умножение умножитель 7, равна 16, а работать умножитель 7 и сумматор 8 будут, в десятичной системе счисления.

Перевод шестнадцаатиричного числа, например 10 15 02 03, осуществляется следующим образом.

На выходах 4 элементов первой строки матрицы появятся десятичные коды 01, 12 и 00, на выходе 5 последнего элемента первой строки матрицы появится десятичный код стоичной цифры 35. На выходах 4 элементов второй строки матрицы появятся десятичные коды 00 и 04, на выходе 5 пос-, леднего элемента второй строки матрицы появится десятичный код стоичной

30 цифры 48, На выходе 4 и 5 элемента последней строки. матрицы появятся десятичные коды 00 и 04. Таким образом

= 00 04 448; 5

00044835а1о

Заполнив всю таблицу, получают табличное задание системы функций. В, эту таблицу входят все возможные наборы аргументов а а,...,а

7 б

Рациональнее всего, но не обязательно, выполнять требуемое устройство на основе ПЗУ, например, с организацией 9 * 8.

Вторую половину объема ПЗУ отводят под устройство, которое работает при переводе двоичных чисел в двоичнодесятичные. В этом случае на вход 6 подается единица. Наиболее рационально объем ПЗУ используется,.если предварительно преобразовать двоичное

38 6

При преобразовании двоично-десятичных чисел в двоичные S = =10, R =

= 2, ш = 4. Коэффициент умножения умножителя 7 равен 10, умножитель 7 и сумматор 8 работают в двоичной системе счисления. Для того, чтобы спроР r ° ектировать масштабирующий сумматор 1, необходимо задать систему логических функций в табличной форме, Обозначим младший вход 3 а,, а,, а, а . Аналогично обозначим вход2 а, а, а . и а, а вход 6 как а . Точно так же обозначим выход 5 Ь, Ъ;, Ь и Ъ а выход 4 — Ъ, Ъ6, b и Ъ

Таблица, задающая эту систему функций, содержит 256 строк и .17 столбцов. В первых девяти столбцах записываются значения аргументов а, а„,..., а, в остальных восьми столбо цах — значения функций b„, Ь,...,b, .

Поскольку при переводе двоично-десятичных чисел в двоичные на вход 6 корректирующего элемента 1 подается ноль, значение аргумента а в составляемой таблице всегда нулевое. Пронумеруем строки таблицы от 0 до 255.

Рассматривая наборы переменных

a„a а а и а а а а. как четырехраз6 5 4 3 и 1 о рядные двоичйые числа, находят восьмиразрядное двоичное число, определяемое по формуле а,а а а„,, 1010„> + а а,„а Я,, и запишем значения разрядов этого числа в столбцах Ь Ь,...,b, в строке с двоичным номером а„а а, а„ à, a,à, а.. Например, 149-я строка составляемой таблицы выглядит следующим образом:

7 1302438 8 а b b b Ь b

67 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 1 умножитель 7 и сумматор 8 работают в десятичной системе счисления. Для проектирования масштабирующего сумматора составляют аналогичную таблицу.

Обозначают двоичные разряды 3 входов как аза а. и а, начиная со старшего, 3 и 1 о а двоичные разряды входа 2 как а а а ь s и а, двоичные разряды выхода 5 как

b b b, и bo, а двоичные разряды выхода 4 как Ъ Ь b u b соответственно.10

7 б Б 4

Таблица имеет семнадцать столбцов и сто строк. Заполнение таблицы производят следующим образом.

Нумеруют строки таблицы двухразрядными десятичными числами от 00 до 15

Строка а а а а а а а а

Заполнив всю таблицу, получают табличное задание функций. На не вошед— ших в таблицу наборах аргументов функции могут принимать произвольные эна — 25 чения.

Предлагаемое устройство может быть также реализовано на основе ПЗУ с организацией 9 " 8, причем для его реализации требуется половина объема ПЗУ.

Объединяя обе составленные таблицы в одну, получают полную таблицу программирования ПЗУ для работы в качестве масштабирующего сумматора в преобразователе целых чисел, предназначенном для преобразования двоичнодесятичных чисел в двоичные и двоичных в двоично-десятичные.

Формула изобретения

Преобразователь позиционного кода из одной системы счисления в другую, содержащий масштабирующие сумматоры, соединенные в треугольную матрицу таким образом, что входы старшего разряда первого масштабирующего сумматора и входы младшего разряда всех масштабирующих сумматоров первой строки 50 матрицы соединены с соответствующими разрядными входами преобразователя, входы старших разрядов всех масштаби— рующих сумматоров первой строки, кроме первого, соединены с выходами младших разрядов соседнего старшего масштабирующего сумматора первой строки, вход старшего разряда первого масштабирующего сумматора i-й строки

99. В первый столбец таблицы, соответствующий.а,, во все строки заносится единица. В следующие восемь столбцов таблицы заносится двоично-десятичный код номера строки. Для строки, 1 Г Ч имеющей номер а b находят двух" <10> разрядное число — (ю> (so) ceo 10>

Затем записывают в строку, имеющую и номер а Ь „, в столбцы, соответствующие функциям, — двоично-десятичГ1 (-, ные коды цифр С, и d . Например, — <10 > а-л c to

67-я строка этой таблицы выглядит следующим образом: (i = 2 — k — 1, где k — число разрядов входного кода) соединен с выходом старшего разряда масштабирующего .суМматора (i — 1)-й строки, вход младшего разряда- j-го масштабирующего сумматора i é строки (j = 1 — k — - z) соединен с выходом старшего разряда (j + 1)-го масштабирующего сумматора (i — 1)-й строки, вход старшего разряГ,а (j + 1)-го масштабирующего сумматора i-й строки соединен с выходом младшего разряда j-го масштабирующего сумматора -й строки, выход стар-. шего разряда масштабирующего сумматора (k — 1)-й строки и выходы младших разрядов последних масштабирующих сумматоров всех строк являются разрядными выходами преобразователя, отличающийся тем, что, с целью расширения функциональных возможностей за счет обеспечения реверсивного преобразования кода с любым основанием в код с любым другим основанием, в нем все масштабирующие сумматоры содержат умножитель и сумматор, управляющие входы которых соединены с входом выбора режима работы преобразователя, выход умножителя соединен с входом первого слагаемого сумматора, вход второго слагаемого которого соединен с входом младшего разряда масштабирующего сумматора, вход старшего разряда которого соеди нен с входом умножителя, первая и вторая группы выходов сумматора явля.— ются соответственно выходами старшего и младшего разрядов масштабирующего сумматора.

Преобразователь позиционного кода из одной системы счисления в другую Преобразователь позиционного кода из одной системы счисления в другую Преобразователь позиционного кода из одной системы счисления в другую Преобразователь позиционного кода из одной системы счисления в другую Преобразователь позиционного кода из одной системы счисления в другую 

 

Похожие патенты:

Изобретение относится к автоматике и цифровой вычислительной технике и может быть использовано для построения преобразователей кодов как правильных и смешанных дробей

Изобретение относится к области автоматики и вычислительной техники и может быть использовано в устройствах обработки двоичной информации Цель изобретения упрощение преобразователя

Изобретение относится к области ., автоматики и цифровой вычислительной техники и может быть использовано при построении устройств сопряжения с ЭВМ, работающими с различными форматами данных

Изобретение относится к вычислительной технике и может быть применено для быстрого преобразования чисел из десятичной системы счисления в двоичную

Изобретение относится к вычислительной технике и может быть исполь зовано для построения преобразователей кодов

Изобретение относится к области

Изобретение относится к области автоматики и цифровой вычислительной техники и может быть использовано при построении двоично-десятичных преобразователей

Изобретение относится к вычислительной технике и может быть использовано для контроля принимаемой информации в системах передачи данных и для преобразования информации

Изобретение относится к технике отображения цифровой информации

Изобретение относится к технике преобразования цифровых величин в аналоговые и может быть использовано в цифроаналоговых преобразователях, в том числе и со значительным уровнем выходной мощности

Изобретение относится к автоматике и вычислительной технике и может быть использовано для построения различных устройств переработки дискретной информации

Изобретение относится к автоматике и вычислительной технике и может быть использовано для построения различных устройств переработки дискретной информации

Изобретение относится к вычислительной технике и может быть использовано в автоматических и вычислительных устройствах для преобразования хранимого кода в обратный или дополнительный, для выполнения операций прямого и обратного счета в стандартном и нестандартном двоичном коде, а также для формирования прямой и обратной последовательностей кодовых комбинаций кода Грея

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении цифровых вычислительных машин и устройств дискретной автоматики

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении преобразователей кодов

Изобретение относится к вычислительной технике и может быть использовано в универсальных и специализированных вычислительных машинах для построения преобразователей больших потоков двоично-десятичной и двоичной информации

Изобретение относится к вычислительной технике и может быть использовано в автоматических и вычислительных устройствах для осуществления преобразования прямого кода в обратный и дополнительный, для осуществления операции прямого и обратного счета при подсчете предметов, а также для осуществления реверсивного счета импульсов, поступающих по раздельным входам суммирования и вычитания
Наверх