SU1742832A1 - Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы - Google Patents

Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы Download PDF

Info

Publication number
SU1742832A1
SU1742832A1 SU884497247A SU4497247A SU1742832A1 SU 1742832 A1 SU1742832 A1 SU 1742832A1 SU 884497247 A SU884497247 A SU 884497247A SU 4497247 A SU4497247 A SU 4497247A SU 1742832 A1 SU1742832 A1 SU 1742832A1
Authority
SU
USSR - Soviet Union
Prior art keywords
output
input
register
value
bit
Prior art date
Application number
SU884497247A
Other languages
English (en)
Inventor
Виталий Константинович Водопьянов
Георгий Вартанович Назарьян
Александр Анатольевич Домрачев
Сергей Павлович Зайцев
Original Assignee
Предприятие П/Я Р-6668
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Предприятие П/Я Р-6668 filed Critical Предприятие П/Я Р-6668
Priority to SU884497247A priority Critical patent/SU1742832A1/ru
Application granted granted Critical
Publication of SU1742832A1 publication Critical patent/SU1742832A1/ru

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

Изобретение относитс  к вычислительной технике и может быть использовано в автоматизированных системах обработки данных, производства программ и разработки трансл торов ЭВМ. Цель изобретени  - расширение возможностей за счет определени  типов ошибок при одновременном повышении быстродействи . Дл  этого в устройство введены счетчик 4 операндов и ходной регистр 7. Введение этих элементов , а также использование в блоке 5 пам ти реверсивных сдвигающих регистров оптимизирует алгоритм работы устройства. 3 ил.

Description

Изобретение относитс  к вычислит тельном технике и может быть использовано в автоматизированных системах обработки данных, производства программ и разработки трансл торов ЭВМ.
Целью изобретени   вл етс  расширение функциональных возможностей устройства за счет определени  типов ошибок при одновременном повышении быстродействи .
На фиг.1 представлена структурна  схема устройства; на фиг.2 - то же, блока пам ти; на фиг.З - то же, выходного регистра.
Устройство содержит входной ре- . .гистр 1, дешифратор 2 лексических единиц, блок 3 управлени ,счетчик k операндов, блок 5 пам ти, дешифратор 6 блока пам ти, выходной регистр 7. Блок 5 пам ти построен на реверсивных регистрах сдвига. Выходной
регистр 7 образуют восемь регистров с разр дностью не менее 12 разр дов.
Входной регистр 1 используетс  дл  хранени  очередной лексической единицы входного выражени  (в дальнейшем будем обозначать ее специальным символ о м ш). Дешифратор 2 лексических единиц раздел ет поступающие ш на символы: пробел, знаки операций, открывающие и закрывающие скобки, знак конца выражени , операнды и вырабатывают .значение ко- дон зтих символов. Блок 3 управле- ж; управл ет работой всех элементов yctponcTBa. На первую группу входов блока 3 управлени  поступают сигналы Х - Xg из дешифратора 2 лексических единицы, а на вторую группу входов - сигналы Х7 - Х17 из дешифратора 6 блока пам ти. На семи выходах блока 3 микропрограммного управлени  формисл
с
ю
00
GJ Ю
уют сигналы микроопераций -v , - Y3).. Содержательный смысл входных сигалов следующий.
1, если очередной символ есть знак U;
О, если в противном случае; Г1, если очередной символ есть знак конца выражени 
О,
Ч, если очередной символ есть знак операции; О,
Х1 у -
А2
X, х4
х
v
1 , если очередной символ есть знак
О,
1 , если очередной символ есть
знак ) ;
.0,
{1 , если очередной символ есть операнд; О, в противном случае, {1, если содержимое п-разр да блока 5 пам ти есть и ; О, в противном случае, {1 , если содержимое п-разр да блока 5 пам ти есть #; О,
1, если содержимое п-разр да блока 5 пам ти есть знак операции; Ю,
1, если содержимое п-разр да блока 5 пам ти есть С ;
°
1 , если содержимое п-разр да
блока 5 пам ти есть ) ; 0.
1, если содержимое п-разр да блока 5 пам ти есть р , О в противном случае, 1, если значение (п-1) разр да блока 5 пам ти есть Q ; О в противном случае, 1, если значение (п-1) разр да блока 5 пам ти есть знак операции;
О в противном случае, 1, если значение (п-1)-разр да блока 5 пам ти есть ( ;
0 в противном случае 1, если значение (п-2)-разр да блока 5 пам ти есть F ; О в противном случае, 1, если значение (п-З)-разр - да блока 5 пам ти есть ( ;
.0 в противном случае.
41
п
3
4
5
6
п
Содержательный смысл выходных сигналов следующий:
5
Y1 ЧY Y Ye YЈ Y сброс в ноль входного регистра
1;
сброс в ноль регистров блока 5 пам ти;
сброс в ноль выходного регистра 7;
занесение в n-разр д регистров блока 5 пам ти значение кода знака;
занесение в n-разр д блока 5 пам ти значени , $ ; разрешение ввода следующей лексической единицы ш во входной регистр 1;
разрешение записи в блок 5 пам ти;
8 YQ Y - выработка сообщени  успешный
анализ ;
выработка сообщени  ошибка ;
5
0
5
0
5
0
-выработка сообщений во входном выражении неверно расположен знак конца выражени  ;
-выработка сообщени  во входном выражении неверно размещен знак операции ;
-выработка сообщени  во входном выражении неверно размещен знак открывающей скобки ;
Y, - выработка сообщени  во входном выражении неверно размещен знак закрывающей скобки ; выработка сообщени  конфликт10
11
ft
U
5
16
47
8
19
-го
г
5 Y
гг
УЗ
ное размещение операнда во вход- Ном выражении ; выработка сообщени  несоответствие числа открывающих и закрывающих скобок во входном выражении ;
увеличение значени  счетчика k операндов;
занесение в n-разр д блока 5 пам ти значени  входного регистра ;
занесение в n-разр д блока 5 пам ти значени  счетчика k операндов ;
сдвиг влево на один разр д влево содержимого блока 5 пам ти;
сдвиг вправо на один разр д содержимого блока 5 пам ти; занесение в 12 разр д выходного регистра 7 значени  счетчика операндов;
занесение в 11 разр д выходного регистра 7 значени  кода ; занесение в 12 разр д выходного регистра 7 значени  выходного регистра 1;
YЈ$ занесение в 10 разр д выходного регистра 7 значени  кода
( ; .
занесение в 16 разр д выходного регистра 7 значени  кода
) ;
Y2g - занесение в п тый разр д выходного регистра 7 значени  ( ;
- занесение в третий разр д
выходного регистра 7 значени 
.V
Y - занесение в первый разр д
ходного регистра 7 значени 
/ ,
Y - занесение в дев тый и второй разр ды выходного регистра 7 значени  (п-2) разр да блока 5 пам ти;
Y 30 - занесение в восьмой разр д выходного регистра значение (п-1) разр да блока пам ти; Y3.j - занесение в седьмой и четвертый разр ды выходного регистра значение n-разр да блока пам ти ,;
ъг окончание и выдача всех 12 разр дов выходного регистра; окончание работы устройства; Y.4 начало работы устройства.
Счетчик k операндов предназначен дл  нумерации операндов, встречаемых во входном выражении. Блок 5 пам ти предназначен дл  записи, хранени  и считывани  кодов лексических единиц. Запись кодов текущих ш производитс  в старшие n-е разр ды регистров блока 5 пам ти, сдвиг вправо на k-разр дов равносилен затиранию k последних (старших) разр дов.
Дешифратор 6 блока пам ти предназначен дл  формировани  сигналов X - на основе анализа старших разр дов блока 5 пам ти. Выходной регистр 7 предназначен дл  записи, хранени  и считывани  преобразованных в регул рную форму, входных выражений.
Устройство работает следующим . образом.
При его включении блок 3 управлени  вырабатывает микрооперацию Y-JA, после чего по управл ющим шинам поступает набор микроопераций. YJ - обеспечивающих обнуление вводного регистра 1 (в дальнейшем возможно р1);
Yg - блока 5 пам ти, в дальнейшем, Чдзможно р2);
Y - выходного регистра 7 (в дальнейшем возможно рЗ). После этого происходит занесение
в старший (n-й) разр д блока 5 пам ти кода символа (микрооперации Yt) по управл ющей шине, св зывающей блок 3 управлени  и блок 5 пам ти. После этого вырабатываетс  микроопераци 
O Ys Разрешающа  ввод очередной лексической единицы о входной регистра 1. Лексические единицы исходного выражени  последовательно поступают на входной регистр 1 и затем - на де5 шифратор 2 лексических единиц, который вырабатывает их коды и пересылает значени  последних в блок 3 управлени . В зависимости от типа лексической единицы блок 3 управлени 
0 производит последующую отработку
исходной информации и производит последовательность микрокоманд и микроопераций , адекватных данному типу лексической операции-, после чего
5 вновь вырабатываетс  микроопераци  Y,, и очередна  лексическа  единица поступает на вход р1. Така  циклическа  работа устройства ПРОИСХОДИТ до тех пор, пока на вход входного
0 регистра не поступит символ (признак конца исходного выражени , и блок 3 управлени  не произведет специальные действи  дл  лексической единицы типа # , после чего происходит окончание работы устройства
5 (микроопераци  Y).
Лексические единицы дел тс  на типы.: операнды (символ типа F , под которым подразумеваетс  любой символ , представимый ЭВМ), операции
® (символ + , # ), скобки открывающие и закрывающие (символы (, ) ); символы, обеспечивающий любую стет пень разр жени  пробелами исходного
выражени . 5
Совокупность всех входных символов , поступающих на вход входного регистра 1, и хран щихс  в регистрах
0 блока 5 пам ти, не выход т за пределы допустимого в любой ЭВМ алфавита . Это значит, что в состав блока пам ти 5 вход т стандартные 12-разр дные реверсивные регистры 8 сдви5 га. Их количество определ етс  формулой преобразовани , осуществл емого устройством:
()(aVb) и составл ет 10 штук.
Рассмотрим работу устройства в зависимости от типа поступающих входных лексических единиц.
При поступлении лексической единицы-операнда () провер етс  .значение старшего разр да блока 5 пам ти. Если это значение равно одному из символов: F (операнд), )f (закрывающа  скобка), (X 12 1, Х( 1), то блок 3 управлени  формирует микрооперацию Y.
В противном случае управл ющими средствами блока 3 управлени  производитс  обнуление выходного регистра 7 (Y), увеличение значени  счетчика и операндов, занесение в 12-й разр д рЗ значение этого счетчика: соответственно микрооперации (Y16 и Ґг() После этого производитс  выдача содержимого блока 5 пам ти по микрооперации Y 32. и занесение в 11-й разр д выходного регистра 7 значение кода символа к ( Y/, Y2z) занесение в 10-й разр д значение входного регистра pi (микроопераци  Y, После этого блок, 3 управлени  формирует микрооперации Y(J (сдвиг вправо содержимого блока 5 пам ти на оди разр д) и Yy, Yjg (занесение в старший разр д блока 5 пам ти значение счетчика Ц операндов)..
При в поступлении лексической единицы - знака операции (символы
+ , #0 (Х- 1) провер етс  значение старшего разр да блока 5 пам ти . Если это значение совпадает со значени ми символов ц (, + , # , (,X,,a 1), то формируетс  сообщение об ошибке (микроопераци 
В противном случае провер етс  значение (п-1)-разр да блока 5 пам ти Если это значение не содержит коды знаков операций + , к (X 0), блок управлени  вырабатывает последовательность микрокоманд и микроопераций дл  выполнени  совокупности действий, которые рассмотрим подробнее .
Сначала увеличиваетс  значение счетчика Ь операндов (Yfg), затем выполн етс  микрокоманда по занесени в выходной регистр первичного шаблок ( совокупность Y, , Y7Ј, ) затем- происходит занесение в 10-й раз р дный рЗ значение символа. (, а в 6-й разр д рЗ - значение символа (соответственно микрооперации и
Ync) ,
5
5
, после чего генерируетс  микрокоманда по информационному заполнению выходного регистра 7, содержаща  совокупность микроопераций: Y12, YZg , Y-3( .После выполнени  данной микрокоманды производитс  выдача сформированного содержимого выходного регистра (Y52), сдвиг вправо на три разр да блока 5 пам ти (Y2o, Y2o, Y-ZQ) и занесение в старший разр д блока пам ти 5 значение счетчика операндов (Y7, Y1%); чиваютс  действи  по условию X После этого производ тс  еще 2 микрооперации: сдвиг влево на один разр д блока 5 пам ти () и Y7, - занесение в разр д пам ти значени  входного регистра 1. Этим заканчиваютс  действи  по входной лексической единице типа операции.
Раскроем содержание двух примен емых микрокоманд. Микрокоманда по занесению первичного шаблока состоит из совокупности микроопераций:
Этим закан14- 1
обнуление выходного регистра 7; занесение в 11-й разр д рЗ значение символа г ;
0
L27
28
5
0 г
5
занесение в п тый разр д рЗ
значение символа ( ;
занесение в третий разр д рЗ
значение символа v ;
занесение в первый разр д рЗ
значение символа ) . Микрокоманда по информационному заполнению выходного регистра 7 сос- тоит из совокупности микроопераций: Y - занесение в 12-й разр д рЗ значение счетчика k операндов;
-занесение в дев тый и второй разр ды рЗ,значение (п-2) разр да блока 5 пам ти;
30 - занесение в восьмой рЗ значение (п-1) разр да блока 5 па- м ти;
-занесение в седьмой и четвертый разр ды рЗ значени  (п) разр да блока 5 пам ти.
51
Устройство работает следующим образом .
При поступлении лексической единицы ( (открывающей скобки) происходит генераци  и выполнение двух микроопераций :
YJ- - сдвиг влево на один разр д содержимого блока 5 пам ти; Y, Y17 - занесение в n-разр д блока 5 пам ти содержимого входного регистра pi.
При поступлении лексической единицы ) (закрывающей скобки) провер етс  значение старшего n-го разр да блока 5 пам ти. Если это значение равно значению символа ( (X
1), то выполн етс  Yw - сдвиг
40
влево на один разр д содержимого пам ти. Если же значение п-разр да блока 5 пам ти равно значению лексической единицы типа операнда (X а 1), то блок 3 управлени  генерирует дл  выполнени  определенную последовательность микрокоманд и микроопераций . Вначале условие X,5 1, если значение () разр да блока 5 пам ти равно значению символа ( , Х,2 1, X .t « 1, то выполн етс  сдвиг вправо на дба разр да содержимого блока 5 пам ти n (Y20, YZQ), в противном случае (X г 1 1) провер етс  значение РЗ значение (п-1) разр да ти. Если оно равно значению символа ( ( 1, Х45 - О, Х„ - 1), то выполн етс  совокупность микроопераций и микрокоманд.
Вначале производитс  увеличение значени  р да содержимого блока 5 пам ти (, ) затем выполн етс  описанна  выше микрокоманда по за- несению первичного блока в выходной регистр 7 (Y«, Ґгг, Угб, Y27, YZ8), после чего происходит занесение в 10-й и 6-й разр ды рЗ соответственно
значени  символов
С и ) (Y
24
24
) после чего выполн етс  микрокоманда по информационному заполнению рЗ (Yia, Y2q, Yw, YSf) и производитс  полна  выдача сформированного содержимого выходного регистра (Y) После этого происходит сдвиг вправо на четыре разр да содержимого блока 5 пам ти (Y, , Y2o 20) В случае невыполнени  последнего услови  X 42 I i,- О,
П
О производитс  выполнение
микрооперации Y Этим заканчиваютс  действи  дл  лексической единицы
fT.
Рассмотрим работу устройства при поступлении специальных символов и , # . Если лексическа  единица представлена символом и , то блок 3 управлени  не вырабатывает никаких микроопераций по обработке данной лексической единицы. Если же лексическа  единица представлена символом # - знаком окончани  исходного выражени , блок 3 управлени  выра
5
2832Ю
батывает следующую совокупность действий. Сначала провер етс  старший разр д блока 5 пам ти. Если его содержимое равно значению одного из символов и или р1 (лексическа  единица типа операнд) (X 1 или Х7 1), то выполн етс  совокупность микрокоманд и микроопераций дл  лексической единицы # и выдаетс  сообщение об ошибке ( В случае корректности значени  старшего разр да блока 5 пам ти эта совокупность действий представлена следующим образом.
Если значение (п-1) - разр да
10
15
20
25
блока 5 пам ти равно LJ (Y 1) , то происходит занесение в п-разр д блока 5 пам ти значение символа (Y7, YS-) . Если же значение (п-1)- разр да блока 5 пам ти равно значению
символа ( (Х«б 1), формируетс  сообщение об ошибке (Y1). В противном случае (Х 0,. 0) провер етс  значение (п-2)-разр да блока
5 пам ти падает с ранд
и, если его содержимое сов- значением символа типа one- происход т
(V), т.е. Y,, 1,
30
45
55
40
следующие действи . Увеличиваетс  значение счетчика k операндов ( ), происходит занесение в рЗ первичного шаблока (Y4, , Y2o, Y2&) ПР°ИС ходит занесение в 10-й и 6-й разр ды рЗ значений символов f( и ) соответственно (Y и Y2sr) информационное заполнение рЗ (Y.,2, Y2), Yjo , Y-j|) и выдача сформированного рЗ (Y3Z). После этого происходит сдвиг на три разр да содержимого блока 5 пам ти (YZQ, Y2o Y2o) и занесение в n разр д блока 5 пам ти значение символа (Y, YgO . Если же значение n-разр да блока 5 пам ти равно лексической единице типа операнд ( 0), то происходит обыкновенное занесение в разр д блока 5 пам ти символа # (, Yg.).
После генерации совокупности действий дл  различных лексических единиц, кроме символа #блок 3 управлени  вырабатывает сигнал Y (разрешение ввода следующей лексической единицы в р1) лишь в том случае „ если исходное выражение до этой лексической единицы  вл етс  корректным (т.е. не возникли сигналы
диагностики ошибок: Y
ГО 1«
.-V
).
I ,14- Т t-y
Дл  символа # сигналы Y, не вырабатываютс , хот  сигналы диагностики ошибок могут возникнуть (сигнал ),
л
Поэтому дл  этого символа, при значении п разр да блока 5 пам ти, равном # (Хд 1), или отсутствии Y15 вырабатываетс  микроопераци  v g, успешный перевод и - окончание работы устройства. После возникновени  сигналов Y|0, Y , Y15) также вырабатываетс  микроопераци 
Y

Claims (1)

  1. Этом микрооперацией устройство завершает работу. Формула изобретени 
    Устройство дл  перевода арифметических выражений в линейные регул рные префиксные формы, содержащее входной регистр, дешифратор входного регистра, блок управлени , блок пам ти и дешифратор блока пам ти, причем информационный вход входного регистра  вл етс  входом устройства, первый выход входного регистра соединен с входом дешифратора входного регистра, выход которого подключен к первому входу блока управлени , первый выход которого соединен с управл ющим входом входного регистра, второй и третий выходы блока управлени   вл ютс  выходами Ошибка и Успешный перевод устоойства, соответственно, четвертый выход блока управлени  соединен с управл ющим входом блока пам ти , первый и второй выходы которого
    10
    соединены с первым и вторым входами дешифратора блока пам ти, соответст17 283212 /
    венно, выход дешифратора блока пам ти соединен с вторым входом блока управлени , отличающеес  е тем, что, с целью расширени  функциональных возможностей за счет определени  типов ошибок при одновременном повышении быстродействи , устройство содержит счетчик операндов и выходной регистр, причем второй выход входного регистра соединен с первым информационным входом выходного регистра, п тый выход блока управлени  подключен к первому управл ющему входу выходного регистра, шестой выход блока управлени  соединен с вторым, третьим, четвертым, п тым, шестым и седьмым управл ющими входами выходного регистра, третий выход блока пам ти соединен с вторым информационным входом выходного регистра, четвертый выход блока пам ти соединен с третьим и четвертым информационными входами выходного регистра, п тый выход блока пам ти соединен с п тым и шестым информа- ционными входами выходного регистра, выход которого  вл етс  информационным выходом устройства, седьмой выход блока управлени  соединен со счетным входом счетчика операндов, выход которого подключен к седьмому информационному входу выходного регистра и информационному входу блока пам ти.
    15
    20
    25
    30
    1
    ffmcvesf - 0гте -
    А
    X
    X
    ZT
    t -r-TT nLlLl ,./L
    X St-i;tS9 y/OCrrr7 ypy
    ic gtrx0Jtto tyЯ/гыа -rra ssTrts
    f ЈZVCfr f r/
    n-5 rt-2 n-f rt i .-ii
    ГГ-f ГГ
    J- ,.. I -.T-l
    .
    X St-i;tS9 y/OCrrr7 ypy $
    /гыа -rra ssTrts
    0rrrЈffOArcr Л7/7& 3
    Фаг 2
    от 5лока M(J4 $ Of cvttrwvta опер&ндеб 4
    cm входного регистра I
    от Јлок& ftttMjimt/ S
SU884497247A 1988-10-24 1988-10-24 Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы SU1742832A1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
SU884497247A SU1742832A1 (ru) 1988-10-24 1988-10-24 Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU884497247A SU1742832A1 (ru) 1988-10-24 1988-10-24 Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы

Publications (1)

Publication Number Publication Date
SU1742832A1 true SU1742832A1 (ru) 1992-06-23

Family

ID=21405513

Family Applications (1)

Application Number Title Priority Date Filing Date
SU884497247A SU1742832A1 (ru) 1988-10-24 1988-10-24 Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы

Country Status (1)

Country Link
SU (1) SU1742832A1 (ru)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Авторское свидетельство СССР V 1130879, кл. G Об F 15/38, 1985. Авторское свидетельство СССР № 1 139591, кл. G Об F 15/38, 11/00, 1987. ( УСТРОЙСТВО ДЛЯ ПЕРЕВОДА АРИФМЕТИЧЕСКИХ ВЫРАЖЕНИЙ В ЛИНЕЙНЫЕ РЕГУЛЯРНЫЕ ПРЕФИКСНЫЕ ФОРМЫ т *

Similar Documents

Publication Publication Date Title
EP0083209B1 (en) A microcomputer for processing instructions of different types
JPH0567981A (ja) ユークリツドの互除回路
US3597600A (en) Electronic desk top calculator having a dual function keyboard logic means
US4994993A (en) System for detecting and correcting errors generated by arithmetic logic units
TWI296773B (en) Apparatus and method for idetifying registers in a processor
JPS5890251A (ja) パリテイ検査装置
SU1742832A1 (ru) Устройство дл перевода арифметических выражений в линейные регул рные префиксные формы
GB2074766A (en) Microprogram control system
GB1003924A (en) Indirect addressing system
GB1070423A (en) Improvements in or relating to variable word length data processing apparatus
US3400380A (en) Digital computer having an address controller operation
US3849634A (en) Electronic computer
Rajaraman et al. An introduction to digital computer design
RU51428U1 (ru) Отказоустойчивый процессор повышенной достоверности функционирования
JP2564318B2 (ja) 通信処理装置
KR100256463B1 (ko) 임의의 베이스의 심볼을 가산하거나 감산하는 프로세스 및 시스템
US3235714A (en) Information handling apparatus
JP3043861B2 (ja) データ処理装置
SU1513443A1 (ru) Устройство дл обработки данных
RU2708956C2 (ru) Процессор повышенной достоверности функционирования
RU186547U1 (ru) Процессор повышенной достоверности функционирования
RU2030785C1 (ru) Вычислительное устройство
US3195122A (en) Code translator
US4024503A (en) Priority interrupt handling system
SU1439594A1 (ru) Синтаксический анализатор