Линейная форма стандартной схемы



 

Для использования линейной формы СПП множество специальных символов расширим дополнительными символами { :, goto, if, then, else }. СПП в линейной форме представляет собой последовательность инструкций, которая строится следующим образом:

1.если выходная дуга начальной вершины с оператором start (х1,..., хn) ведет к вершине с меткой L, то начальной вершине соответствует инструкция:

0: start( х1,..., хn ) goto L;

2.если вершина схемы S с меткой L - преобразователь с оператором присваивания х:=τ, выходная дуга которого ведет к вершине с меткой L 1, то этому преобразователю соответствует инструкция:

L: x:= τ goto L 1;

3.если вершина с меткой L - заключительная вершина с оператором stop1,...τ m), то ей соответствует инструкция:

L: stop1,..., τ m);

4.если вершина с меткой L - распознаватель с условием р1,...τ k), причем 1-дуга ведет к вершине с меткой L 1, а 0-дуга - к вершине с меткой L 0, то этому распознавателю соответствует инструкция:

L: if р1,...τ k) then L 1 else L 0;

5.если вершина с меткой L - петля, то ей соответствует инструкция:

L: loop.

Обычно используется сокращенная запись (опускание меток). Полная и сокращенная линейные формы ССП (рисунок 1.3, а) приведены ниже

0: start (х) goto 1, start (х),

1: у:=а goto 2, у:=а,

2: if р (х) then 5 else 3,2: if р (х) then 5 else 3,

3: у:=g (x,y) goto 4,3: у:=g (x,y),

4: х:=h (x) goto 2, х:=h (x) goto 2,

5: stop (у).5: stop (у).

 

 


Дата добавления: 2015-12-20; просмотров: 19; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!