Устройство для синтаксического анализа программ Советский патент 1985 года по МПК G06F17/27 

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

к входу третьего элемента ИЛИ, второй вход которого подключен к выходу первого триггера и к выходу ошибки устройства, выход четвертого регистра соединен с первым информационным входом первого регистра первой группы, выход которого соединен с первьм входом третьего блока элементов И, выход третьего элемента ИЛИ соединен с входами сброса первого, второго регистров и регистров первой и третьей групп,выход 2го (г ) регистра третьей Ipynпы соединен с первыми входами (z-2)го блока элементов И второй группы, выход второго триггера соединен с вторьми входами блоков элементов И второй группы, выход-первого элемента ИЛИ соединен с первыми входами блоков элементов И третьей группы, выход у - го (У 1, п-1) регистра третьей группы подключен к вторьм входам у-го блока элементов И третьей группы, информационный вход у-го регистра третьей группы соединен с выходом у-го блока элементов ИЛИ группы, выход второго регистра третьей группы подключен к первым входам первого блока элементов ИЛИ группы, выход U)ro (0 1, n-l) блока элементов И второй группы подключен к первому входу (w+1)-ro блока элементов ИЛИ группы, выход U) -го блока элементов И третьей группы - к второму входу {и)+1)-го бло96899

ка элементов ИЛИ группы, выход - го (f 1, Ф) блока элементов И четвертой группы соединен с F-M (F 1,Ф) входом .f-rp блока элементов ИЛИ группы, выходы которого соединены с вторыми входами первого блока элемен тов ИЛИ группы, выход F-ro регистра второй группы соединен с первыми входами F-ro блока элементов И четвертой группы, F-йвыход дешифратора подключен к вторым входам F-ro блока элементов И четвертой группы, выход j-ro (j i, m) регистра первой группы соединен с информационным входом (j+1)-ro регистра первой группы, выходы формирователей импульсов группы соединены с входами четвертого .элемента ИЛИ, выход которого подключен к установочному входу четвертого триггера, вторые входы второго и третьего блоков элементов И соединены с выходом четвертого триггера, выходы второго блока элементов И подключены к информационным входам первой половины разрядов второго регистра, к информационным входам вторбй половины разрядов которого подключены выходы второго блока элементов И, вход начального символа грамматики устройства подключен к второму информационному входу первого регистра третьей группы, выходы (п-1)-го блока элементов И третьей группы под ключей к информационному входу н -го регистра третьей группы.

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

название год авторы номер документа
Устройство для лексического анализа метамикроассемблера 1982
  • Бекасов Александр Алексеевич
  • Кисельников Владимир Максимович
  • Торгашев Валерий Антонович
  • Шкиртиль Вячеслав Иванович
SU1034043A1
Устройство для лексического анализа символьного текста 1984
  • Горбачев Сергей Владимирович
  • Диденко Владимир Дмитриевич
  • Горбачева Альбина Михайловна
  • Торгашев Валерий Антонович
SU1187173A1
Устройство для лексического анализа метатранслятора 1983
  • Александрова Людмила Анатольевна
  • Бекасов Александр Алексеевич
  • Биспен Вероника Николаевна
  • Шкиртиль Вячеслав Иванович
SU1153329A1
Устройство для обработки выражений языков программирования 1981
  • Сергеев Борис Иванович
  • Плахтеев Анатолий Павлович
  • Курносов Михаил Алексеевич
SU1016790A1
Устройство синтаксически управляемого перевода 1986
  • Фомичев Владимир Степанович
  • Разумовский Геннадий Васильевич
  • Познянский Андрей Измайлович
SU1399767A1
Устройство для отображения информации на экране телевизионного приемника 1984
  • Розенштейн Виктор Абенович
SU1265834A1
Устройство для моделирования сетевых графов 1983
  • Титов Виктор Алексеевич
  • Баженов Сергей Михайлович
SU1151979A1
Устройство для моделирования сетевых графов 1981
  • Титов Виктор Алексеевич
  • Баженов Сергей Михайлович
  • Левашов Владимир Константинович
SU1013965A1
Устройство для обработки информации 1989
  • Таран Владимир Николаевич
  • Хуторцев Валерий Владимирович
  • Часнык Константин Александрович
SU1631539A1
Устройство для отображения информации на экране телевизионного приемника 1988
  • Розенштейн Виктор Абенович
  • Иванов Александр Дмитриевич
SU1583967A1

Иллюстрации к изобретению SU 1 196 899 A1

Реферат патента 1985 года Устройство для синтаксического анализа программ

УСТРОЙСТВО ДЛЯ СИНТАКСИЧЕСКОГО АНАЛИЗА ПРОГРАММ, содержащее первый, второй триггеры, первый, второй блоки элементов И,первый,второй , регистры, постоянный запоминающий блок, формирователь импульсов, элемент И, первый элемент ИЛИ, причем выход первого блока элементов И соединен с первым информационным входом первого регистра, выход которого соединен с первьм входом второго блока элементов И, первый и второй выходы признаков и информационный выход постоянного запоминающего блока соединены с входами первого, второго триггеров и второго регистра, выход второго триггера соединен с вторым входом первого блока элементов И, отличающееся тем, что, с целью сокращения среднего времени синтаксического анализа программ, в него введены третий и четвертый регистры, третий блок элементов И,первая, вторая и третья группы регистр&в, группы блоков элементов ИЛИ, первая, вторая, третья и четвертая группы ОЛОКОБ элементов И, третий и четвертый триггеры, группа формирователей импульсов,генератор импульсов, второй третий, четвертый элементы ИЛИ,блок элементов ИЛИ,дешифратор исчетчик. причем информационный выход счетчика I подключен к входу дешифратора,выход j-ro (j 1,m) регистра первой группы соединен с первым входом j-ro блока элементов И первой группы, выход которого подключен к j - му выходу группы информационных выходов устройства, выход третьего регистра соединен с входами формирователей импульсов группы и с входом постоянного запоминающего блока, выход третьего признака, группа информационных выходов и выход номера правила которого подключены соответственно к входам третьего триггера, регистров i второй группы и четвертого регистра, (Л входы первого и последукмцих символов строки программ устройства соединены соответственно с вторьтм информационным входом первого регистра и . вторым входом первого блока элементов И, информационные выходысчетг чика подключены к входам первого :о элемента ИЛИ, первьй, второй, третий и четвертый входы второго элемента 05 00 ИЛИ соединены соответственно с выходами второго, третьего, первого (Г триггеров и элемента И, входы кото-, со рого соединены с инверсным информационным выходом счетчика, вычитающий и информационный входы которого соединены соответственно с выходами генератора импульсов и третьего регистра, выход второго элемента ИЛИ соединен с входом формирователя импульсов, выход которого подключен к установочному входу четвертого триггера, выход третьего триггера подключен к вторым входам блоков элементов И первой группы, к выходу Конец контроля устройства и

Формула изобретения SU 1 196 899 A1

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

Цель изобретения - сокращение среднего времени синтаксического анапиза программ.

,На чертеже представлена структурная схема устройства, ,

Устройство содержит первый регистр 1, первый блок 2 элементов И, третью группу регистров 3, группу блоков 4 элементов ИЛИ, вторую 5 и третью 6 группы блоков элементов И, третий регистр 7, постоянный запоминакяций блок 8, первый 9, второй 10 и третий 11 тригге ы, второй регистр 12, вторую группу регистров 13, четвертый ре-

гистр 14, группу формирователей 15 импульсов, первую группу регистров 16, формирователь 17 импульсов, четвертый триггер 18, первую группу блоков 19

элементов И, генератор 20 импульсов, счетчик 21, дешифратор 22, первый элемент ИЛИ 23, четвертую группу блоков 24 элементов И, третий 25 и второй 26 блоки элементов И элемент И

27, второй элемент ИЛИ 28, блок 29 элементов ИЛИ, третий 30 и четвертый 31 элементы ИЛИ, выход 22 Конец контроля, входы 33 и 34 первого и по- следунщик символов , группу информационных выходов 35 , выход 36 ошибки , в-хоц 37 начального символа.

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

Заданы набор правил (1)S

S-VB (2)Л

(3)

а g S А (4)

и таблица разбора: входная строка авв,ав e,S $ ,е авв ав е BF. ав е вв ав е в ав е в ав е В исходном состоянии регистры 1,3,7,12 - 14 и 16,триггеры 9 - 11 и счетчик 21 обнулены. Управляющая программа заносит в первый регистр 3 (верхушка стека или магазина) код начального символа грамматики по входу 37, а в регистр 1 - код первого символа входной стро- ки (для примера а) по входу 33. Содержимое регистров 1 и 3 заносится, соответственно, в старшие и младшие разряды регистра 7 адреса постоянного запоминающего блока 8. При этом на выходе элемента ИЛИ 31 появляется сигнал, который устанавливает триггер 18 в единичное состояние, чем запрещается прохождение кодов адреса в регистр 7 через блоки элементов И 25 и 26. По данному адресу производится выборка, в результате чего на выходном регистре запоминающего устройства появляется следующая информация: признаки (ошибка триггер 9 в единичном состоянии, сдвиг - триггер 10, допуск, т.е. конец разбора - триггер 11 в единичном состоянии), количество символов правила (регистр 12), коды символов (регистры 13) и код номера правила (регистр 14).

При этом возможны следующиеварианты: в соответствующем месте таблицы разбора, хранящейся в постоянном запоминающем блоке 8 (задается содержимьи первого регистра 3 - номечание, J, е - граничные символы; ош - ошиб ка.

также разбор строки: магаз ASj{ BSAS $ SAS в AS j AS jj aSj S $ 25

личество символов F правила из регистра 12 записывается в вычитающий счетчик 21, содержимое которого дешифруется дешифратором 22, .в результате чего содержимое F-ro регистра 13 (код символа правила) через соответствующий F-й блок 24 элементов И и блок 29 элементов ИЛИ заносится в первый (верхний по схеме) регистр 3, при этом производится сдвиг стека, реализованного блоком регистров 3, вниз. Затем с генератора 20 импульсов на вычитающий вход счетчика 21 поступает импульс, в результате чего

содержимое счетчика 21 уменьшается на. единицу ST 21 : F-1 и содерясимое (F-l)-ro регистра 13 заносится в первый регистр 3. Описанный процесс продолжается до тех пор, пока коды

5 всех символов правила не записаны в обратном порядке в блок регистров 3. При этом содержимое счетчика 21 равно нулю, на выходе элемента И 27 поинвыходная строка jt Допуск мер строки и регистра 1 - номер столбца) содержится правая часть правила и его номер (вариант 1); ошибка ( II) j сдвиг (вариант Ш) и допуск конец разбора (вариант 1У). В варианте 1 триггеры 9-11 находятся в нулевом состоянии. Код номера правила из регистра 14 заносится в первый регистр 16 (при этом производится сдвиг стека, состоящего из регистров 16 по схеме вправо). Коявляется единичный сигнал, который через элемент ИЛИ 28, формирователь 17импульсов устанавливает триггер 18в нулевое состояние. На нулевом выходе триггера 18 появляется единичный сигнал, который разрешает прохождение содержимого регистра 1 и пер вого регистра 3 через блоки 26 и 25 элементов И, соответственно, в регистр 7. В результате чего производится очередное обращение к блоку 8. В варианте П из блока 8 считывается информация в триггеры 9-11,1)егистры 12-14,содержащая нули за исключением разряда, которому соответствует триггер 9: Т9 1 .Единичное состояние триг-гера 9 указывает на синтаксическую ошибку в анализируемой строке. По сигналу с единичного выхода триггера 9. производится следующая последовательность действий: на выходе 36 устройства появляется сигнал, указывающий на ошибку в анализируемой стро ке; триггер 18 через элемент ИЛИ 28 и формирователь 17 импульсов устанавливается в нулевое состояние и сигнал с выхода элемента ШШ 30 обнуляет регистры 1 и 7, блоки регистров 3 и 16

На этом работа устройства заканчивается.

В варианте Ш из блока 8 считывается нулевая информация за исключением разряда, которому соответствует триггер 10: .Т10 1. Единичное состояние триггера 10 указывает на то,

Таким образом в результате разбора синтаксически правильной строки на выходы 35 устройства вьщается последовательность кодов номеров правил, используемых при написании данной строки. что в данном элементе таблицы разбо ра, хранящейся в блоке 8, записан сдвиг. При этом разрешается запис очередного символа строки по входу 34 устройства через блок 2 элементов И в регистр 1, производится сдвиг блока регистров 3 вверх (по схеме), соответственно, через блоки 5 и 4, и триггер 18 через элемент ИЛИ 28 и формирователь 17 импульсов устанавливается в нуль. В варианте 1У из блока 8 считывается нулевая информация за исключением разряда, которому соответствует триггер 11: Т 11 1. При этом триггер 18 через элемент ИЛИ 28, формирователь 17 импульсов устанавливается в нулевое состояние на выходе 32 устройства появляется сигнал, свидетельствующий об успешном окончании разбора входной строки: через элемент ИЛИ 30 обнуляются регистры 1, 7 JH 3; на входах 35 устройства появляется множество кодов номеров правил разобранной строки, поступивших из регистров 16 через блоки 19 элементов И.На этом работа устройства заканчивается.

Документы, цитированные в отчете о поиске Патент 1985 года SU1196899A1

Устройство для аппаратурной трансляции 1982
  • Потапов Виктор Ильич
  • Нестерук Валерий Филиппович
  • Ионин Сергей Яковлевич
  • Шевчук Владимир Тимофеевич
  • Ефимов Сергей Сергеевич
SU1056210A1
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Устройство для преобразования кодов с одного языка на другой 1982
  • Пацкевич Сергей Александрович
  • Багрич Александр Иванович
  • Бахметьев Игорь Иванович
  • Тощев Вячеслав Владимирович
SU1034045A1

SU 1 196 899 A1

Авторы

Мазаник Вячеслав Вячеславович

Бакров Николай Прокофьевич

Марченко Константин Александрович

Неффа Виктор Михайлович

Даты

1985-12-07Публикация

1984-07-11Подача