Синтаксический анализатор

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вьиислительной технике и может быть ., пользовано в автоматизированных системах обработки данных и производства программ для ЭВМ, для поддержки процессов трансляции языков высокого уровня. Цель изобретения - расширение функциональных возможностей за счет обеспечения бесприоритетного синтаксического анализа исходных выражений при одновременном повышении быстродействия и упрощении устройства Для достижения указанных целей в устройство дополнительно введен блок 9 выделения аксиомы. Реализация бесприоритетного синтаксического анализа сокраТцает аппаратурные затраты и увеличивает быстродействие синтаксического анализатора. Кроме того, введение блока 9, управляемого блоком 3 микропрограммного управления, повьппает надежность и устойчивость работы синтаксического анализатора. 3 ил. (Л

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

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

РЕСПУБЛИН (19) (И) А1 (Ю 4 G 06 F 11/00

П

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

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

БИБЛМ07Л.

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 4089673/24-24 (22) 11.07.86 (46} 30.05.88. Бюл. У 20

{72) В.Н. Волков, С.Н. Вавилов, В.К.Водопьянов и В.Н.Цымбал (53) 681.325(088.8) (56) Авторское свидетельство СССР

У 637818, кл. С 06 F 11/00.

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

У 1334149, кл. G 06 F, 11/00, 15/38, 1986. (54) СИНТАКСИЧЕСКИЙ АНАЛИЗАТОР

{57) Изобретение относится к вычислительной технике и может быть ис >; ..польэовано в автоматизированных системах обработки данных и производства программ для ЭВМ, для поддержки процессов трансляции языков высокого уровня. Цель изобретения " расширение, функциональных возможностей за счет обеспечения бесприоритетного синтаксического анализа исходных выражений при одновременном повышении быстродействия и упрощении устройства. Для достижения укаэанных целей в устройство дополнительно введен блок 9 выделения аксиомы. Реализация бесприоритетного синтаксического анализа сокращает аппаратурные затраты и увеличивает быстродействие синтаксического анализатора. Кроме того, введение блока 9, управляемого бло ком 3 микропрограммного управления, повышает надежность и устойчивость р работы синтаксического анализатора. Е

3 ил.

1399741

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

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

На фиг. 1 представлена структур" ная схема анализатора; на фиг. 2— структурная схема блока памяти; на фиг. 3 - блок-схема микропрограммного ( управ 1ения анализатором.

Синтаксический анализатор (фиг. 1) содержит входной регистр 1, дешифратор,2 лексических единиц, блок 3 20

;управления, выполненный, например,,на программируемых логических матри Uàõ шифратор 4 основ, блок.5 памяти, дешифратор б.кодов операций, буферный ! !

Регистр 7, сумматор 8 и блок 9 выделения аксиомы.

В состав .блока 5 памяти входит группа реверсивных регистров 10 сдвига.

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

Входной регистр 1 используется для хранения очередной лексической едини- 4 цы исходного выражения, дешифратор 2 лексических единиц разделяет лексические единицы на операнды, операции, .скобки.

Блок 3 управления управляет работой всех элементов устройства. При" мер его функционирования для операций "+" и "х" описан блок-схемой микРопрограммного УпРавления (фиг. 3), 50 где входные сигналы Х,"Х, Х формирует дешифратор 2 лексических единиц Хт, Хь, Х, — дешифратор кодов операций, а Х, — дешифратор аксиомы, На выходе блока 3 микропрограммного управления формируются сигналы микроопераций 1,,Y --+> и Y@, а также сигналы

Y I У Yz l 4 » Y63 YI5% Yi l "" ляющиеся совокупностями микроопераций, Содержательный смысл входных и выходных сигналов следующий:

1, если лексическая единица исходного напряжения есть открывающая скобка;

0 в противном случае.

1, если лексическая единица исходного выражения есть опе" ранд;

0 в противном случае, 1, если лексическая единица исходного выражения есть знак плюс;

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

0 в противном случае.

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

Х =.

l, если терминал в (N-1) разрядах блока 5 памяти есть код знака плюс;

0 в противном случае.

l„ если терминал в (N-1) pasрядах блока 5 памяти есть код знака умножить;

0 в противном случае.

Х =.

Х =, Ь

0 Х =

1, если в сумматоре содержится код нетерминала "F

0 в противном случае, Х-= ю

Y—

2 .

7 = о

Y =

У о

Y q =

l5 если лексическая единица исходного выражения есть знак конца выражения "ф"; в противном случае, если терминал в (N-l) разря" дах блока 5 памяти есть код открывающей скобки; в противном случае, У(1 Ук 4 YI2.> УЗ ( (У у У, Уф j 9 5 У1х

{ У 5э 7i5) 5 (У!Ч1 У 6 (У ю У 1 т YI5> s IS °

Уи 1 о — Ущ э и — У» э Yet= У о

I у, у м (у7 Ф у5 ° i 4

Уч з 13 запись кода терминала "Открывающая скобка" н буферны регистр 7;

- сложение н сумматоре 8 кода терминала/нетерминала, поступающего из буферного ре" гистра .7;

- запись кода терминала "Открывающая скобка" н блок 5 памяти; чтение следующей лексическо единицы исходного выражения из входного регистра 1; запись кода нетерминала "F" в буферный регистр 7;

- запись кода нетерминала основы "Р Р" в буферный регистр 7;

-. вычитание кода нетерминала основы из содержимого сумматора 8;

- сдвиг на два разряда вправо (в сторону старших разрядов) содержимого блока 5 памяти;

- запись кода нетерминала основы "(Р)" в буферный регистр 7;

- запись кода нетерминала основы "Р+Р" в буферный регистр 7; выдача сообщения Ошибка сдвиг на 1 разряд влево содержимого блока 5 памяти;

- запись кода терминала "Знак плюс" а буферный регистр 7;

" запись кода терминала "Знакоумножитель" в буферный регистр 7, запись кода терминала

"Знак плюс" в блок 5 памя99741 где у

10 и

У4

УБ

У1о

Уц

У у„ цы из входного регистра 1 (микрооперация у ).

Если следующая лексическая единица есть операнд (Х =О, Х,=О, Х =1), то блок 3 управленйя выполняет со55 вокупность микроопераций (Y Y ): . на шифраторе 4 основ формируется код нетерминала "F", произнодится запйсь ти; у, " запись кода терминала "Знак умножения" н блок 5 памяти; у,т — запись кода терминала "Закрывающая скобка" н блок 5 памяти; у,8 " запись кода терминала "Конец исходного выражения" (знак ") в блок 5 памяти.

Шифратор 4 основ формирует коды терминалов и нетерминалов.

Блок S памяти - это память с последовательным безадресным принципом записи и чтения. В состав блока памяти (фиг. 2) входит группа ревер" сивных сднигающих регистров 10. 3апись информации производится в старшие N-е разряды параметров.

Ренерсинные регистры 10 сдвига блока 5 памяти поразрядно сдвигают коды терминалов, а также совместно с дешифратором 6 кодов операций производят выбор основы для свертки исходного выражения.

Буферный 7 регистр используется для хранения кодов терминалов и нетерминалов.

Сумматор 8 выполняет либо функцию вычитания кодов терминалов и нетерминалов, либо функцию вычитания нетерминалов основ.

Блок 9 выделения аксиомы выделяет код нетерминала "Р", определенный и качестве начального нетерминала (или аксиомы) и соответствующей успешному завершению синтаксического анализа.

Устройство работает следующим образом.

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

При поступлении лексической единицы, например, открывающей скобки (Х =О, Х;=1) дешифратор 2 лексических единиц запускает блок 3 управления, который вырабатывает совокупно ть микроопераций (7.,). Управляющие сигналы с блока 3 управления поступают на вход шифратора 4 основ и формируют код терминала открывающей скобки, а затем разрешают запись кода терминала в буферный регистр 7 (микрооперация у,1 и сложение его с содержимым сумматора 8 (микрооперация у ), а также осуществляют сдвиг на I разряд влево содержимого блока

5 памяти (микрооперация у, ), запись в N-e разряды блока 5 памяти кода терминального символа и разрешают чтение следующей лексической единикода нетерминального символа "F" в буферный регистр 7 (микрооперация

5 1 у ), происходит сложение кода и со" держимого сумматора 8, выполняется сдвиг на 1 разряд влево содержимого блока 5 памяти (микрооперация у, ) и вырабатывается разрешающий сигнал на чтение очередной лексической единицы иэ входного регистра 1, Если лексическая единица не была операндом (ХО=0, Х =О, X =0), то формиру ется управляющий сигнал об ошибке (микрооперация у„), Если очередная лексическая едини"

qa есть операция, например, знак плюс (Х -1), то дешифратор 2 логических единиц запускает блок 3 управ пения, входные сигналы (Y< Y ). которого формируют на шифраторе 4 основ код терминала "Знак плюс" „запись

Кода в буферный регистр 7 (микроопе" рация у, ) и в старшие разряды блока

5 памяти (микрооперация у, ), сложени

Кода терминального символа с содержимым сумматора 8 (микрооперация у )

И сбрасывает запрет на чтение аче" редной единицы из входного регист" ра 1. Если лексическая единица не операция (Х, =О, Х =D), то происходит формирование сигнала (Y ) сообщающего об ошибке.

Если следующая лексическая единица есть открывающая скобка (Х =О;

Х =1), то дешифратор 2 лексических единиц запускает блок 3 управления, t<оторый вырабатьгнает совокупность

Микроопераций (Y ), и работа устройства повторяется, Если очередная лексическая единица есть не операнд и не открыва" ющая скобка (Х„=О, Х,=D), то форми" руется управляющий сигнал об ошибке (мик рооп е рация, y«) .

Если очередная лексическая единица есть операнд (Х =1), то блок 3 управления выполняет совокупность микро операций (У, У. ) на шифраторе

4 основ формируется код нетерминала

Ф1 tt

F, производится запись кода нетерминального символа "F" н буферный регистр 7 (микрооперация у ), происходит сложение содержимого сумматора

8 и кода, выполняется сдвиг íà 1 раз ряд влево содержимого блока 5 памяти (микро операция y«) и вырабатывается разрешающий сигнал на чтение очередной лексической единицы из входного регистра 1.

Если очередная лексическая единица не знак операции, не закрываю399741 6

50 щая скобка и не конец выражения 4" (Х 09 Х,,=О, Х .=-О, Х =0) р TO В блоке 3 управления формируется управляющий сигнал выдачи ошибки (микрооперация у«) .

Если очередная лексическая единица есть знак "+" (Х =1), или знак

" " (X =1), или закрывающая скобка (Х =1), или конец выражения "ф" (X- 1), то блок микропрограммного управления формирует на шифраторе 4 основ код терминала "Знак плюс", "Знак умножить", "Закрывающая скобка", "Конец выражения" соответственно, затем происходит запись соответствующего кода н N-й разряд блока 5 памяти.

После записи кода терминала в старшие разряды реверсивных регистров сдвига блока 5 памяти содержимое (N-1)-х разрядов блока 5 памяти поступает на вход дешифратора б кодов операций, который формирует сигнал, определяющий вид основы для свертки исходного выражения. Дешифратор 6 кодов операций запускает блок 3 уп" равления, который разрешает выполнение операций (У„-Y P . Если в (N-1)-х разрядах реверсивных сдвигающих регистрон находится, например, код терминала "Знак плюс" (Х 0, Х =1), то в буферный регистр 7 записывается код нетерминала основы

" F + Р" (микрооперация y, ), затем из содержимого сумматора 8 нычитается код нетерминала основы (микрооперация у ), а в буферный регистр 7 заносится код нетерминала F (микрооперация у ), после чего производится сложение кода нетерминала с содержимым сумматора 8 (микрооперация уд) и осуществляется сдвиг на 2 разряда вправо содержимого ренерсивных сднигающих регистров блока 5 памяти (микрооперация ув ), Если в (N-1)"х разрядах реверсивных сднигающих регистров находится код терминала. "Знак умножения" (Х6=1), то н буферный регистр 7 записывается код нетерминала основы "Р Р" и следует операция У«, Если в (N-1)-х разрядах реверсивных сдвигающих регистров находится код терминала "Закрывающая скобка" (Х =О, Х, =О, Х =1), то в буферный регистр 7 записывается код нетерминала основы "(F)" и следуют разрешение на чтение очередного символа на входной

7 !399 регистр 1 (микрооперация у ) и операция Y 4

Если выбрана несуществующая основа (Х =О, X =Î,.Хэ=О), то в блоке 3 управления формируется управляющий сигнал выдачи ошибки (Y, ).

Если очередная лексическая едини ца есть закрывающая скобка (Х =!), то дешифратор 2 лексических единиц запускает блок 3 управления, который выполняет (Y ) сдвиг на 1 разряд влево содержимое реверсивных сдвига" ющих регистров (микрооперация у, ), затем на шифраторе 4 основ происходит !5 формирование кода терминала "Закрывающая скобка" и запись (Y ) кода терминала в блок 5 памяти микрооперация у, ). Далее работа устройст" ва повторяется, 20

Если очередная лексическая единица не закрывающая скобка (Х =О), не конец выражения "ф (Х =О), то дешифра то р 2 л ек с ич еск их единиц з any ск ае т блок 3 управления, который выполня- 25 ет (Уэ) сдвиг,на 1 разряд влево содержимого реверсивных сдвигающих регистров (микрооперация у .) . Далее работа устройства повторяется.

Если очередная лексическая едини" 30 ца есть конец выражения ".ф" (Х =О, Х =1), то блок 9 выделения аксиомы осуществляет проверку содержимого сумматора 8. !

Если сумматор 8 содержит код нетерминала "Г" (Х, О, Х 1, Х„=1), то - входное выражение синтаксически правильно.

Если сумматор 8 содержит код другого символа (Х- =0, Х =1; Х О), то 40 блок 3 управления формирует сигнал об ошибке (Y ).

Пример 1. Пусть входное выражение имеет вид (A+(B+C) D 4,Процесс синтаксического анализа происхо- 45 дит следующим образом. На входной ре" гистр поступает лексическая единица (", которая дешифратором 2 лекси,ческих единиц определяется как открывающая скобка (Х 1), и происходит б0 запуск блока Э управления, формирующего совокупность микроопераций, которая блокирует входной регистр 1, запускает шифратор 4 основ на формирование кода терминала "Открывающая скобка". Затем происходят запись кода терминала в буферный регистр 7, сложение кода терминала с содержимым сумматора 8. В блоке 5 памяти проис74! 8 ходит сдвиг на 1 разряд влево содержимого реверсивных сдвигающих регистров, в старшие разряды которых записывается код терминала, после чего записывается чтение с входного регистра 1 следующей лексической единицы исходного выражения.

Лексическая единица "А" дешифруется дешифратором 2 как операнд (Х =!), и выдается сигнал на запуск блока 3 управления, который разрешает формирование на шифраторе 4 основ кода нетерминала "F", заносит его в буферный регистр 7, суммирует содержимое сумматора 8 с кодом негерминала, производит сдвиг на 1 разряд влево содержимого блока 5 памяти и снимает блокировку на чтение с входного регистра 1, с которого поступает очередная лексическая единица "+"

Дешифратор 2 лексических единиц распознает ее как операцию (Х- 1) и з возбуждает блок 3 управления, который запускает шифратор основ, формирующий код,терминала "Знак плюс", записываемый в буферный регистр 7 и в N-å разряды реверсивных сдвигающих регистров блока 5 памяти, происходит сложение кода терминала с содержимым сумматора 8 и дается с блока 3 управления разрешение на чтение очередной лексической единицы, Лексическая единица, поступающая на дешифратор 2, определяется как открывающая скобка. С помощью блока

3 управления шифратор 4 основ формирует код терминала открывающей скобки, который заносится в буферный регистр 7, складывается с содержимым сумматора 8, а также производится сдвиг на 1 разряд влево содержимого блока 5 памяти и разрешается считывание следующей лексической единицы

".В" из входного регистра.

Дешифратор 2 лексических единиц определяет ее как операнд (Х 1) и запускает блок 3 управления, выходные сигналы с которого разрешают шифратору 4 основ формирование кода нетерминала "F", запись его в буферный регистр 7, сложение кода с содержимым сумматора 8 и чтение очередной лек" .сической единицы с входного регист" ра 1.

Поступившая на дешифратор 2 лекси" ческая единица "+" есть oneрация (Хз l ). Блок 3 управления на шифра» торе 4 основ формирует код т :.рминала

9741 !

5

9 139

"Знак плюс", записывает его в старшие разряды блока 5 памяти и я буферный регистр 7, затем складьвает с содержимым сумматора 8, После этого происходит считывание очередной лексической единицы с входного регистра

Лексическая единица "С" — операнд, который формирует на шифраторе 4 код нетерминала 1F Код нетерминала записывается в буферный регистр 7, и одновременно сдвигается содержимое блока 5 памяти влево на 1 разряд, затем код нетерминала суммируется с содержимым сумматора 8. н н

Очередная лексическая единица ) поступает на дешифратор 2 и определя, ется как закрывающая скобка. Формируется код терминала "Закрьвающая скобка", который записывается в блок

5 памяти. Дешифратор 6 кодов операций по коду предыдущего терминала определяет вид основы (Х.1). Код нетерминала основы "Р+Р" заносится в буФерный регистр 7 и вычитается из со- 2 держимого сумматора, а содержимое . блока 5 памяти сдвигается на 2 разряда вправо, Код нетерминала "F" заносится в буферный регистр 7 и складывается с содержимым сумматора 8. Дешифратор 2 определяет текущую лексическую единицу как закрывающую . скобку. Блок 3 управления формирует сигнал, который производит сдвиг влево на 1 разряд содержимого олока памяти и запись кода терминала "Закрывающая скобка" в старшие разряды реверсивных сдвигающих регистров.

Дешифратор 6 кодов операций онределяет вид основы "(F)" (Х =1), так как в (М-1)-х разрядах реверсивных регистров сдвига содержится код тер. минала "Открьвающая скобка". Код нетерминала основы записывается в буферный регистр 7 и вычитывается иэ сумматора 8. Одновременно сдвигается содержимое блока 5 памяти на 2 разряда вправо, снимается блокировка с входного регистра 1, с которого на дешифратор 2 поступает лексическая единица ")", В буферный регистр 7 заносится код нетерминала "Р" и скла— дывается с содержимым сумматора 8.

Текущая лексическая единица ")" определяется дешифратором 2 как закрьвающая скобка (Хд=1), происходит блокирование входного регистра

Далее устройство работает по циклу, описанному Bbllve, 1 у 1!

Текущая лексическая единица Х определяется дешифратором 2 как операция (Х =1) . Сформированный шифратором 4 код терминала "Знак умножить" заносится в блок 5 памяти, в буферный регистр 7, складывается с содерж жым сумматора 8 и осуществляется переход к следующей лексической единице.

Очередная лексическая единица

"D" - операнд. В сумматоре 8 добавляется код нетерминала "F", производится сдвиг влево на 1 разряд содержимо . го блока 5 памяти и выбирается следую" щая лексическая единица — конец выражения.

Дешифратор 2 выделяет лексическую единицу, запускает шифратор 4 основ, Формирующий код терминала "Конец выражения", который заносится в блок 5 памяти. На основании этого кода де" шифратор 6 кодов операции разрешает выбор основы вида "Р+Р". Код нетерминала основы вычитается иэ сумматора

8, а, затем к содер лмому сумматора добавляется код нетерминала ."Г".

Блок 3 управления разрешает выдачу содержимого сумматора 8 на вход блока 9 выделения аксиомы. Так как в сумматоре 8 содержится код нетерминаР, То блок 9 выде ения BKGHQYibI запускает блок 3 микропрограммного управления, коч орый успешно завершает синтаксический анализ исходного выражения.

Пример 2. Пусть исходное выражение имеет вид ((А+В) ° CO, кото" рое содержит синтаксическую ошибку— нет закрывающей скобки.

Лексическая единица "(" поступает через входной регистр 1 на дешифратор

2 и определяется как открывающая скобка. Запускается блок 3 управления, который блокирует входной регистр 1, формирует на шифраторе 4 основ код терминала "Открывающая скобка", который эапись|вается в буферный регистр 7, а также сдвигается содержимое блока 5 памяти на 1 разряд влево. Код терминала заносится в блок 5 памяти, одновременно суммируется с содержимым сумматора 8, за" тем снимается блокировка с входного регистра 1 .и следующая лексическая единица "(поступает на дешифратор 2 лексических единиц.

399741

Лексическая единица "(" — открыва ющая скобка, и цикл устройства повторяется, Очередная .лексическая единица А дешифрируется как операнд. На шифраторе 4 формируется код нетерминала

"Р", который поступает в буферный регистр 7, суммируется с содержимым сумматора 8, содержимое блока 5 памяти сдвигается на 1 разряд влево, и происходит чтение очередной лексической единицы. "+", "+" - это операция, формируется код соответствующего терминала, который заносится в блок 5 памяти. Код терминала записывается в буферный регистр 7 и складывается с содержимым сумматора 8, после чего выбирается очередная лексическая единица "В".

Дешифратор 2 определяет ее как операнд. Содержимое сумматора увеличивается на значение кода нетерминала "F" блок 5 памяти подготавливается к приему очередного кода терминала.

Следующая лексическая единица ")" дешифрируется как закрывающая скобка. Шифратор основ формирует код терминала "Закрывающая скобка", который записывается в блок 5 памяти.

Дешифратор 6 кодов операций разрешает блоку 3;управления выбор основы "Р+Р", Код нетерминала основы вычитается из сумматора 8, а в блоке

5 памяти содержимое сдвигается на

2 разряда вправо, содержимое сумматора складывается с кодом нетерминала "F". Дешифратор определяет текущую лексическую единицу как зак.рывающую скобку. Код терминала "Закрывающая скобка" заносится в блок

5 памяти. Дешифратор 6 кодов операций разрешает выбор основы "(F)", Блок 3 управления считывает очередную лексическую единицу "х", одно" временно иэ содержимого сумматора 8 вычитается код нетерминала основы, сбрасывается содержимое 2 старших разрядов в блоке 5 памяти, и к содержимому сумматора 8 добавляется код нетерминала "Р".

Текущая лексическая единица """— операция. Код терминала "Знак умножить" записывается в блок 5 памяти, складывается с содержимым сумматора

8, и происходит переход к анализу следующей лексической единицы "С".

"С" — это операнд, код нетерминала

Очередная лексическая единица—

5 конец выражения "ф". Код терминала записывается в блок 5 памяти. Возбуждается блок 3 управления и выбирается основа "F+F" код нетерминала которой вычитается иэ содержимого сумматора 8, сбрасываются 2 старших разряда блока 5 памяти, а содержимое сумматора 8 увеличивается на код нетерминала "Р", Дешифратор 2 определяет, что те20

55

"F" суммируется с содержимым сумматора 8, а блок 5 памяти сдвигает со1 держимое на разряд влево. кущая лексическая единица — .конец выражения, и содержимое сумматора 8 по сигналу с блока 3 управления поступает на вход блока 9 выделения аксиомы, который определяет, что содержимое сумматора отлично от кода нетерминала "F", и возбуждает в блоке

3 управления сигнал ошибки.

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

Синтаксический анализатор, содержащий входной регистр, дешифратор лексических единиц, блок управления, шифратор основ, блок памяти, дешифратор кодов операций, буферный регистр и сумматор, причем информационный вход входного регистра является входом анализатора, выход вкодного регистра подключен к входу дешифратора лексических единиц, выход кото1 . ° рого подключен к первому входу блока управления, первый выход которого соединен с входом синхронизации входного регистра, второй выход блока управления соединен с входом шифратора основ, выход которого соединен с информационными входами блока памяти и буферного. регистра, третий выход блока управления соединен с управляющим входом блока памяти, выход которого подключен к входу дешифратора кодов операций, вы- ход которого соединен с вторым входом блока управления, четвертый выход которого соединен с входом синхронизации буферного регистра, выход которого подключен к информационному входу сумматора, управляющий вход которого соединен с пятым выходом блока управления, седьмой и восьмой выходы которого являются соответ- . ственно выходами "Ошибка" и "Конец анализа" анализатора, о т л и ч а— уие.2

Составитель И. Поливода

Техред A.Kðàâ÷óê Корректор А. Обручар

Редактор А. Огар

Заказ 26б7/49 Тираж 704 Подпис нае

ВНИИПИ Государственного комитета СССР по делам изобретений и открытии

113035, Москва, Ж-35, Раушская наб., д. 4/5

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

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