КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
МП-преобразователиМП - преобразователи позволяют формально описать соответствующие действия, связанные не только с распознаванием синтаксических конструкций, но и с построением дерева разбора (вывода) и его преобразованием, а также действия, которые имеют как синтаксический, так и семантический характер. Определение. МП - преобразователем называют восьмерку вида Q - конечное множество состояний преобразователя; - конечный входной алфавит; Г - конечный магазинный алфавит; - конечный выходной алфавит; - отображение множества (Q * ( * Г) в множество всех подмножеств множества (Q * Г** *), т.е. qо - начальное состояние преобразователя, q0Q; Zo - начальное содержимое магазина, ZoГ; F - множество заключительных состояний преобразователя, F Q. Определение. Конфигурация МП - преобразователя — это четверка (q,w, , у)(Q х * х Г* х *). Начальная конфигурация — (q0 ,w, Zo, ), заключительная конфигурация — (q, , , у), где q F. Если одним из значений функции (q, a, Z) является (q’, , r), то шаг работы преобразователя можно представить в виде отношения на конфигурациях (q, aw, Za, у) |- (q’,wо, а, уr) для любых w *, Г*, у *.
Строка у будет выходом МП - преобразователя для строки w, если существует путь от начальной до заключительной конфигурации
(qо, w, Zo, ) |-* (q, , , у) для некоторых q F и Г*. Определение. Переводом (преобразованием) , определяемым МП - преобразователем Р, называется множество (Р) = {(w,у) | (q0,w, Zo, )|-* (q, , ,у) для q F, Г*.
Определение. МП - преобразователь будет детерминированным, если, как и МП - автомат, он имеет не более одной возможной очередной конфигурации. Расширенный МП - преобразователь отличается от рассмотренного только магазинной функцией
: (Q х ( ) х Г*) -> P(Q х Г* х *).
Теперь обратимся к двум результатам теоретических исследований, имеющим чрезвычайно важное практическое значение. Они состоят в следующем. 1. Если T={VT, VN, ,R,S) - простая СУ-схема с входной грамматикой LL(k), то СУ-перевод (Т) можно осуществить детерминированным МП - преобразователем. 2. Если T={VT, VN, ,R,S) - простая постфиксная СУ-схема с входной грамматикой LR(k), то перевод (T) можно выполнить детерминированным МП - преобразователем. Существуют алгоритмы, позволяющие построить детерминированный МП - преобразователь по заданной СУ-схеме перевода. В их основе лежат алгоритмы построения таблиц разбора. Простые СУ-переводы образуют важный класс переводов, поскольку для каждого из них можно построить детерминированный МП - преобразователь, отображающий входную строку (цепочку) в выходную строку (цепочку). Такие переводы иногда называют цепочечными.
|