Устройство синтаксического контроля

 

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

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

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

РЕСПУБЛИК ((9) (()) (st)s G 06 F 15/38

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

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР

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

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) 1587542 (21) 4794492/24 (22) 22;02.90 (46) 15.12.91. Бюл, М 46 (72) Н.Д.Цветков В.А.Балабанов, В.П.Денисович и А.В.Тихобаев (53) 681.325(088,8) (56) Авторское свидетельство СССР

М 1587542, кл. G 06 F 15/32, 1988. (54) УСТРОЙСТВО СИНТАКСИЧЕСКОГО

КОНТРОЛЯ (57) Изобретение относится к вычислительной технике и может быть использовано для синтаксического контроля входной последовательности символов. Целью изобретения является расширение функциональных возможностей устройства за счет пропуска . без синтаксического контроля участков входного текста. выделенных коммутирующими скобками. Устройство содержит элементы И 1-3, элемент 4 задержки, счетчик 5, вычитающие.счетчики 6 и 7, триггер 8, дешифратор 9, блок 10 памяти команд. схему

11 сравнения, блок 12 памяти терминальных символов, блок 13 памяти количества символов, блок 14 памяти номеров команд и блок

15 пропуска комментариев..2 ил.

1698898

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

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

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

Устройство для синтаксического контроля содержит первый 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.

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

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

Формальной грамматикой языка будем называть четверку< Чт, Vg, P„S > где Чт— алфавит терминальных символов, Vg — алфавит нетерминальных символов, Р— множество порождающих правил вывода, 3— аксиома (Se Чо), Под правилами вывода понимают преобразования а- Р, где а и,8— цепочки символов из Чт VN.

Устройство позволяет осуществлять синтаксический контроль языков, порождаемых регулярными грамматиками, т.е. грамматиками, порождающие правила которых имеют аид А - а В, где Ае Чм, Вс.Чн0ф абЧт.

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

Устройство работает в двух режимах— режиме контроля синтаксиса и в режиме пропуска комментариев.

Контроль синтаксиса производится сле10 дующим образом.

Первый поступающий символ сравнивается с символом Х1, хранимым в первом поле первой команды. Если они совпадают, то происходит переход к команде с номером йк, хранящимся в третьем поле первой команды. При этом устанавливается значение счетчика возможных ветвей, равное Nc— содержимому второго поля первой команды, и вводится следующий символ, который

55 будет сравниватьсь с содержимым первого поля Мк-й команды.

Если вновь поступивший символ не совпал с символом Хщ — первым полем йк-й команды, то от счетчика возможных ветвей отнимается единица и происходит переход к команде, следующей за данной (с номером

NK+>). При этом ввод нового символа не производится.

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

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

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

Производится установка начального состояния устройства. При этом на счетчике 7 и на счетчике 5 устанавливается значение единица, триггер 8 устанавливается в единицу, в счетчике 6 записывается число, равное числу символов, которое будет подвергаться синтаксическому контролю. В блоке 12 памяти терминальных символов записывается N символов,,т.е. значения

1698898

20

30

50

55 первых полей команд, в блоке 13 памяти количества символов записывается содержимое вторы>(полей команд Nc, а в блоке

14 памяти номеров команд данных — третьих полей команд йк, В блок 10 памяти команд заносится последовательность символов, которая будет контролироваться, причем в первые разряды регистров группы информации не заносится.

В первый и второй регистры заносятся коды открывающей и закрывающий скобок комментария соответственно. На счетчике

22 устанавливается значение ноль.

Так как на счетчике 22 установлен ноль, то на выходе обнуления счетчика 22 единичный потенциал, а на первом входе элемента

ИЛ И-Н Е 24 — нулевой потенциал. Предполагая, что первый входной символ отличен от открывающей и закрывающей скобок, схемы 18 и 19 сравнения не срабатывают и на второй и третий входы элемента ИЛИ-НЕ подается нулевой потенциал. Учитывая, что нулевой потенциал на всех входах элемента

ИЛИ-НЕ, на управляющем выходе 27 блока пропуска комментариев устанавливается единичный потенциал. В таком состоянии блок 15 пропуска комментариев не оказывает влияния на работу остальных блоков устройства. Это состояние соответствует режиму синтаксического контроля. В этом режиме устройство работает следующим образом, Так как начальное значение счетчика 5 равно "единице", то дешифратор 9 подает напряжение на первый выход. Этот сигнал поступает на входы блоков 12-14 памяти и на выходе этих блоков устанавливаются сигналы, соответствующие их содержимому.

Короткий тактовый импульс открывает первый элемент И 1, так как на втором входе этого элемента с триггера 8 установлена единица. Первый элемент И 1 уменьшает на единицу значение первого счетчика 6 и позволяет считывание следующего символа из блока 10 памяти команд. Считанный символ сравнивается в схеме 11 сравнения.с символом на выходе блока 12 памяти терминальных символов, Если эти символы совпали, то на выходе совпадения схемы 11 сравнения устанавливается единица, иначе единица устанавливается на выходе несовпадения.

Тактовый импульс, пройдя через элемент 4 задержки, открывает второй 2 и третий 3 элементы И. Если символы совпали, то импульс с выхода второго элемента И 2 подается на единичный вход триггера 8 и на входы разрешения установки счетчиков 5 и

7. При этом в счетчик? переписывается сигнал с выхода блока 13 памяти количества символов, а в счетчик.5 переписывается значение, установленное на выходе блока 14 памяти номеров команд. Значение счетчика

5 поступает на информационный вход дешифратора 9, который подает напряжение на соответствующий выход. При этом на выходах блоков 12-14 памяти устанавливаются новые значения.

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

Если схема 11 сравнения выработала напряжение на выходе несовпадения, то сигнал с выхода элемента 4 задержки открывает третий элемент И 3, сигнал на выходе которого установит триггер 8 в ноль, тем самым запретив ввод следующего символа, увеличит на единицу значение. счетчика 5 и уменьшит на единицу значение счетчика 7.

Если при этом значение счетчика 7 оказалось равным нулю, то на выходе признака ошибки устройства появляется сигнал ошибке.

Если при вводе очередного символа его код, пройдя через информационный вход блока пропуска комментариев, сравнится с содержимым регистра 16, то сигнал совпадения с выхода блока 18 сравнения открывает элемент И 20 и поступает на третий вход элемента ИЛИ-НЕ. На выходе элемента ИЛИ-НЕ устанавливается нулевой потенциал, который, пройдя через управляющий выход блока 15 пропуска комментариев, закрывает второй 2 и третий 3 элементы И. Это соответствует переходу устройства в режим пропуска комментариев.

Тактовый импульс, который вызвал ввод текущего символа, пройдя через элемент 4 задержки и четвертый элемент И 20, поступает на суммирующий вход второго счетчика 22. Инвертированный сигнал с выхода обнуления счетчика 22 поступает на первый вход элемента ИЛИ-НЕ 24 и фиксирует нулевой потенциал на управляющем выходе блока пропуска комментариев.

В режиме пропуска комментариев все вводимые символы, кроме открывающей и закрывающей скобок комментария, игнорируются, так как второй 2, третий 3, четвертый 20 и пятый 21 элементы И закрыты.и не пропускают тактовые импульсы.

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

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

30 нения третьей схемы 19 сравнения открывает пятый элемент И 21. Если счетчик 22 не обнулен, то текущий тактовый импульс поступает на вычитающий вход счетчика 22 и уменьшает его значение на единицу. Если ввод очередной закрывающей скобки комментария приводит к обнулению счетчика

22, то на выходе счетчика 22 устанавливается единичный потенциал, который, пройдя через инвертар, обнуляет потенциал на первом входе элемента ИЛИ-НЕ 24, После ввода очередного символа, отличного от комментирующих скобок, все входы элемента ИЛИ-НЕ 24 обнуляются, а на управляющем выходе блока пропуска комментариев формируется единичный потенциал. Устройство возвращается в режим синтаксического контроля.

В режиме синтаксического контроля закрывающая скобка комментария игнорируется, так как сигнал сравнения с выхода схемь, 19 сравнения поступает на второй вход элемента И Л И-HE 24 и обнуляет потенциал на выходе блока 15 пропуска комментариев и закрывает второй 2 и третий 3 элементы И. Сигнал сравнения, поступающий на третий вход пятого элемента И 21, йе проходит на вычитающий вход счетчика

22, так как пятый элемент И 21 закрыт нулевым сигналом, поступающим через инвертор 23 с выхода обнуления счетчика 22.

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

Устройство синтаксического контроля по авт. св. М 1587542, о т л и ч а ю щ е е с я тем, что, с целью расширения функциональных возможностей за счет пропуска без синтаксического контроля участков входного текста, выделенных комментирующими скобками, в него введен блок пропуска комментариев, управляющий вход которого соединен с выходом блока задержки, информационный вход — с выходом блока памяти команд, а управляющий выход — с третьими входами второго и третьего элементов И, в состав блока пропуска комментариев входят вторая и третья схемы сравнения, первый и второй регистры, четвертый и пятый элементы И, второй счетчик, инвертор, элемент ИЛИ-НЕ, причем первые входы второй и третьей схем сравнения соединены с информационным входом блока пропуска комментариев, вторые входы второй и третьей схем сравнения — с выходами первого и второго регистров соответственно, выходы второй и третьей схем сравнения— с первыми входами четвертого и пятого элементов И соответственно. вторые входы которых соединены с управляющим входом блока пропуска комментариев, а выходы которых соединены с суммирующим и вычитаю щим входами второго счетчика соответственно, выход обнуления счетчика через инвертор соединен с первым входом элемента ИЛИ-HE и с третьим входом пятого элемента И, второй и третий входы элемента ИЛИ-НЕ соединены с выходами второй и третьей схем сравнения соответственно, а его выход — с управляющим выходом блока пропуска комментариев.

1698898

Составитель В.Юкин

Техред М.Моргентал Корректор M.Êó÷åðÿâàÿ

Редактор Э.Слиган

Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101

Заказ 4397 Тираж Подписное . ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

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

Устройство синтаксического контроля Устройство синтаксического контроля Устройство синтаксического контроля Устройство синтаксического контроля Устройство синтаксического контроля 

 

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к обработке информационных естественно-языковых текстовых материалов

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

Изобретение относится к автоматизированному синтезу текстовых документов

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

Изобретение относится к распознаванию образов из графического изображения, и в частности к распознаванию текста на изображении документа в электронном виде

Изобретение относится к устройствам распознавания написанных знаков
Наверх