Пред. страница .
След. страница Раздел
Содержание
4.9. Резюме
Перевод представляет собой множество пар цепочек, одна из которых принадлежит входному языку, а другая - выходному языку. Задание конечных переводов, содержащих небольшое число пар, можно осуществить путем перечисления. Для задания больших конечных и бесконечных переводов применяют СУ - схемы и транслирующие грамматики. Один и тот же перевод может быть задан как с помощью СУ - схемы, так и с помощью грамматики. Кроме того, для каждой СУ- схемы можно построить Т - грамматику определяющую такой же перевод как заданная СУ - схема. СУ - схемы и Т - грамматики могут применяться для задания переводов при построении компиляторов языков программирования .
Бесскобочные формы записи, называемые польскими записями, позволяют
использовать более простые правила, определяющие порядок выполнения операций,
чем скобочные инфиксные выражения. Вычисление польских записей эффективно
реализуется с помощью магазина. Такие записи применяются в качестве промежуточных
представлений программы при компиляции.
Преобразователь читает символы с входной цепочки и, если
эта цепочка является допустимой, строит выходную цепочку. Если же входная
цепочка недопустима, то он останавливается, не достигнув конечной конфигурации.
Исходным материалом для построения преобразователя является СУ-схема,
определяющая тот перевод, который должен выполнять преобразователь.
Преобразователь получается детерминированным, если входная грамматика заданной
СУ-схемы относится к классу LL(1) грамматик. Вначале по СУ-схеме строится
транслирующая грамматика, а затем по ней определяются команды преобразователя.
Команды преобразователя получаются путем добавления к командам распознавателя
группы команд, выполняющих передачу выходных символов на выходную ленту.
Для построения восходящего преобразователя необходимо преобразовать построенную транслирующую грамматику в постфиксную форму. Такая форма позволяет совместить выполнение символов действия с выполнением операции свертки. При этом процедура построения восходящего преобразователя сводится к процедуре построения восходящего распознавателя и включению операций, реализующих символы действия, в соответствующие процедуры свертки.
Пред. страница . След. страница Раздел Содержание