УСТРОЙСТВО СИНТАКСИЧЕСКОГО АНАЛИЗА ПРОГРАММ Советский патент 1973 года по МПК G06F9/00 

Описание патента на изобретение SU377774A1

1

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

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

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

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

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

На фиг. 1 показана блок-схема предлагаемого устройства синтаксического анализа программ; на фиг. 2 - анализирующая таблица. Оно состо ит из постоянного ассоциативного запоминающего устройства /, регистра опроса, состоящего из входного регистра 2 и регистра 3 сформированного кода, блока 4 ассоциативных признаков, блока 5 индикаторов, блока 6 рабочих ячеек, «выходного регистра 7 постоянного ассоциативного запоминающего устройства, схемы 8 контроля, регистра 9 ощибки, блока 10 прерывания и управления, регистра 11 основного кода, регистра 12 чтения, регистра 13 записи, регистра

14 прерывания, регистра 15 адресов подпрограмм, регистра 16 вспомогательного кода, блока 17 магазинной памяти.

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

фиг. 2 (запись ПАЗУ означает постоянное ассоциативное запоминаюц;ее устройство, а номер столбца определяется номером регистра па фиг. 1).

Строка анализирующей таблицы содержит

код текущего символа Г, (столбец 2 таблицы) для поиска необходимой строки совместНО с кодом (столбец 3 таблицы), сформирова.нным Предыдущим символом Tj-i программы. Каждая строка таблицы содержит допол-5 нительный разряд «ОШ (ощибка), в котором всегда записана единица. Данный разряд Используется для проверки текущего символа Тг программы. Устройство работает следующим образом. Текущий символ Тг Программы записывается на входпОЙ регистр 2 регистра опроса постоянного ассоциативного запоминающего устройства /. Затем производится поиск кода inyтем сравнения ассоциативного признака, записанного на регистре опроса (регистры 2 и 3) с ассоциативным признаком, записанным в блоке 4 ассоциативных признаков. При сравпенИИ кодов, очевидно, только 20 один из индикаторов блока 5 индикаторов останется в пулевом состоянии, « из блока 6 рабочих ячеек на выходной регистр 7 будет считан рабочий код, соответствующий найденному ассоциативному признаку. Затем25 схемой 8 контроля производится анализ регистра 9 Ощибки. Поскольку произошло чтение некоторого :кода на выходной регистр 7, то В регистре 9 ошибки будет записана единица :и, следовательно, работа устройства бу-30 дет продолжаться. Если текущий символ Tt записан синтаксически неверно (т. е. символ Т{) не соответствует коду, записанному на регистре 3), то соответствующий ассоциати,вный иризнак не будет найден, и поскольку35 чтения кода на Выходной регистр 7 не происходит, регистр 9 ошибки останется в ну1015 левом состоянии. В этом случае схема 8 «олтроля выдает сигнал в блок 10 прерывания и управления, который прекращает работу устройства, а следовательно, и синтаксический анализ программы. После чтевия кода па выходной регистр 7 и анализа содержимого регистра 9 оШИбки выполняемые действия - формировалше основного кода, анализ регистра чтелия, регистра зап-иси, регистра -прерывания - аналогичны действиям прототипа. ПрИ прерывании синтаксического анализа программы производится обращение к блоку генерирующих подпрОграмм по адресу на регистре 15 для выбора соответствующей генерирующей подпрограммы. Блок 10 прерывания и управления прекращает работу устройства, когда на его вход с регистра 11 поступает код «Конец программы. Предмет изобретепия Устройство Синтаксического анализа программ, содержащее блоки памяти, блок прерываиия и управления, регистр сформированлого кода, отличающееся тем, что, с целью новыщения быстродействия, оно содержит схему контроля и -постоянное запоминающее устройство, вьшолненное в виде постоянного ассоциативного запоминающего устройства, в котором БЫХОД регистра сформированного кода соеди.нен с Одним из входов блока ассоциатпвных признаков и выход регистра ошибки постоянного ассоциативного запоминающего устройства соединен через схему контроля с входом блока прерывания и управления.

Симболы входной про&раммы

В 5/1 о к генерирующих подпрог-рамм

Фиъ. ;

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

название год авторы номер документа
УСТРОЙСТВО ДЛЯ ТРАНСЛЯЦИИ ПРОГРАММ 1969
SU257151A1
Устройство для синтаксического анализа программ 1980
  • Степанов Алексей Николаевич
SU918950A1
Устройство для синтаксически-управляемого перевода 1982
  • Степанов Алексей Николаевич
SU1062721A1
Устройство для синтаксическогоКОНТРОля пРОгРАММ 1978
  • Гужавин Александр Анатольевич
  • Кокаев Олег Григорьевич
SU807299A1
Устройство синтаксически управляемого перевода 1986
  • Фомичев Владимир Степанович
  • Разумовский Геннадий Васильевич
  • Познянский Андрей Измайлович
SU1399767A1
АССОЦИАТИВНЫЙ ПРОЦЕССОР 1988
  • Шаповалов В.А.
  • Коняев С.И.
  • Коробков Л.С.
SU1521118A1
Вычислительная система 1989
  • Бабаян Борис Арташесович
  • Волконский Владимир Юрьевич
  • Горштейн Валерий Яковлевич
  • Ким Александр Киирович
  • Назаров Леонид Николаевич
  • Сахин Юлий Хананович
  • Семенихин Сергей Владимирович
SU1777148A1
Устройство для синтаксического анализа программ 1984
  • Мазаник Вячеслав Вячеславович
  • Бакров Николай Прокофьевич
  • Марченко Константин Александрович
  • Неффа Виктор Михайлович
SU1196899A1
УСТРОЙСТВО для СИНТАКСИЧЕСКОГО КОНТРОЛЯПРОГРАММ 1969
SU247628A1
Устройство для контроля микропроцессорной системы 1987
  • Гладштейн Михаил Аркадьевич
  • Комаров Валерий Михайлович
  • Шубин Николай Алексеевич
  • Альтерман Игорь Зелимович
SU1474650A2

Иллюстрации к изобретению SU 377 774 A1

Реферат патента 1973 года УСТРОЙСТВО СИНТАКСИЧЕСКОГО АНАЛИЗА ПРОГРАММ

Формула изобретения SU 377 774 A1

SU 377 774 A1

Авторы

Авторы Изобретени

Даты

1973-01-01Публикация