Семантическая подпрограмма - Большая Энциклопедия Нефти и Газа, статья, страница 2
Если человек знает, чего он хочет, значит, он или много знает, или мало хочет. Законы Мерфи (еще...)

Семантическая подпрограмма

Cтраница 2


Для генерирования предложений выходного языка в любую Тюдпрограмму распознавателя можно включить семантическую подпрограмму или обращение к семантической подпрограмме, если это нужно.  [16]

17 Граф восходящего грамматического разбора опе - ратора ОКРУЖНОСТЬ. [17]

Если они совпали, то символы [ К выталкиваются из магазина, в него заносится символ левой части правила, затем выполняются семантические подпрограммы блока БСЕП. Если правило не найдено, печатается информация об ошибке и осуществляется возврат в блок ЛЕКСА.  [18]

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

По таблице, имеющейся в трансляторе, в которой записаны правила свертывания, производится свертывание ( блок 7) и управление передается на соответствующую семантическую подпрограмму.  [20]

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

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

Сформированная блоком ЛЕКСА 5у - строка передается блоку синтаксического анализа ( СИНТА), который осуществляет поиск и распознавание синтаксических ошибок в конструкциях операторов ОГРА-1; восходящий грамматический разбор и каноническое свертывание [60 ] символов S-строки в нетерминальный символ ( Sy-строка), если все конструкции правильные; обращение к семантическим подпрограммам блока БСЕП ( см. рис. 79) в вершинах деревьев синтаксического разбора.  [23]

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

25 Стек и входная строка до и после редукции. [25]

Если нужно, вызывается семантическая подпрограмма, соответствующая правилу (5.30), которая обрабатывает строку х, переводя ее на выходной язык. Семантическая подпрограмма учитывает как терминальные, так и нетерминальные символы первичной фразы, поэтому в ней можно предусмотреть возможность устранения неоднозначности разбора.  [26]

Подводя итог, можно сказать, что строки х и у представляют тот контекст, который необходим для однозначного определения основы В каждом правиле можно использовать ровно столько контекста, сколько необходимо, не ограничивая заранее его длину, как в рассмотренных ранее распознавателях. Это, а также возможность использования семантических подпрограмм на каждом шаге анализа, делает язык правил подстановки очень гибким.  [27]

Тогда конструктор может включить в подпрограммы распознавателя обращения к семантическим подпрограммам. В этом случае в результате работы конструктора получается готовый распознаватель. Объединение его с лексическим анализатором и генератором дает основную часть транслятора.  [28]

Необходимо также заметить, что в чистом виде метод стека с приоритетами неприменим к языкам типа Алгол-60. Аналогичные замечания можно сделать и в отношении всех методов предшествования: некоторые особенности реального входного языка почти всегда приходится учитывать в семантических подпрограммах.  [29]

30 Схема транслятора, основанного на методе предшествования. [30]



Страницы:      1    2    3