5.6. Упражнения.
1) Для заданного правила АТ-грамматики, определить какие атрибуты могут быть использованы в качестве аргументов в правилах вычисления, чтобы правило было L-атрибутным.
а) <I>%a/b
®
<A>%c<B>%d/e<C>%f/g<D>%h/k
b = c*b+1; g
= b*b; k =
e+g;
a = d*2;
б) <I>%a/b
®
$;
a = sqrt(b);
3) Проверьте, является ли грамматика Г 5. 1 L-грамматикой, и представьте ее в форме простого присваивания.
4) Для следующих транслирующих грамматик
построить LАТ-грамматики в форме простого присваивания,
обеспечивающие получение на выходе последовательности атомов с аргументами
в виде указателей на таблицу значений, полагая, что терминальные символы,
соответствующие идентификаторам, имеют атрибуты в виде указателей на таблицу
значений.
а)для транслирующей грамматики
Г
5. 0
б)для транслирующей грамматики,
построенной по грамматике Г 5. 1.
5) Построить LАТ-грамматику
для трансляции префиксных арифметических выражений, состоящих из идентификаторов,
имеющих атрибуты в виде указателей на таблицу значений, и знаков операций
+
и *, в последовательность атомов
с аргументами в виде указателей на элементы таблицы значений.
6)Для построенного в настоящем разделе
нисходящего АП-преобразователя найти последовательность конфигураций для
входной цепочки i%39 + i%41 + i%43 при начальном значении b = 72
и изобразить их в графическом виде.
7) Построить нисходящий преобразователь
для грамматики Г4.2 , предварительно преобразовав ее
к форме простого присваивания.