Start of TRI Parser for a Program P2.tri at Sun Sep 28 14:06:39 2003


Scanner started

Input program:

# F := 1 ; I := 0 ; M1 : I := I + 1 ; IF I > 5 THEN GOTO M2 ; F := F * I ; GOTO M1 ; M2 : F := F #

Scanned program:

1 4 52 5 11 53 2 4 54 5 11 55 2 4 56 3 4 54 5 4 54 7 11 53 2 20 4 54 15 11 57 21 6 4 58 2 4 52 5 4 52 9 4 54 2 6 4 56 2 4 58 3 4 52 5 4 52 1

Identifiers:F, I, M1, M2;

Constants:1, 0, 5;

Scanner ended

Parser started


Stack & Word # <•#i#:= #c# 1 ; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•muutuja:= #c# 1 ; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•muutuja =•:=#c# 1 ; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•muutuja =•:= <•#c#; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•muutuja =•:= <•tegur; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•muutuja =•:= <•yksliige; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•muutuja =•:= <•aritmav; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•muutuja =•:= =•omistamine1; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•omistamine; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

omistamine
F1



Stack & Word # <•operaator; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13; #i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•;#i# I := #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•#i#:= #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•muutuja:= #c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•muutuja =•:=#c# 0 ; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•muutuja =•:= <•#c#; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•muutuja =•:= <•tegur; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•muutuja =•:= <•yksliige; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•muutuja =•:= <•aritmav; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•muutuja =•:= =•omistamine1; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•omistamine; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

omistamine
I0



Stack & Word # <•operaatorid13 =•; <•operaator; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13; #i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•;#i# M1 : #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•#i#: #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label: #i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

label
M1


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•:#i# I := #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•#i#:= #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja:= #i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:=#i# I + #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•#i#+ #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•tegur+ #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•yksliige+ #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav+ #c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav =•+#c# 1 ; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav =•+ <•#c#; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav =•+ <•tegur; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav =•+ <•yksliige; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav =•+ =•aritmav2; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

aritmav
I1



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= =•omistamine1; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•omistamine; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

omistamine
Iaritmav
I1



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: =•operaator; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaator; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13; IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•;IF #i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF#i# I > #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•#i#> #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•tegur> #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•yksliige> #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav> #c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•>#c# 5 THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•> <•#c#THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•> <•tegurTHEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•> <•yksliigeTHEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•> <•aritmavTHEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF <•aritmav =•> =•loogilav7THEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF =•loogilavTHEN GOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

loogilav
I5


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•IF =•loogilav =•THENGOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimusGOTO #i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

tingimus
loogilav
I5


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimus <•GOTO#i# M2 ; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimus <•GOTO <•#i#; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimus <•GOTO =•label; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

label
M2



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimus <•suunamine; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

suunamine
label
M2



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•tingimus =•operaator; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•iflause; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaator; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13; #i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•;#i# F := #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•#i#:= #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja:= #i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:=#i# F * #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•#i#* #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•tegur* #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige* #i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige =•*#i# I ; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige =•* <•#i#; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige =•* <•tegur; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige =•* =•yksliige4; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•yksliige; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

yksliige
FI



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= <•aritmav; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•muutuja =•:= =•omistamine1; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•omistamine; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Parsing tree

omistamine
Fyksliige
FI



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaator; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13; GOTO #i# M1 ; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•;GOTO #i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•GOTO#i# M1 ; #i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•GOTO <•#i#; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•GOTO =•label; #i# M2 : #i# F := #i# F #

Parsing tree

label
M1



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•suunamine; #i# M2 : #i# F := #i# F #

Parsing tree

suunamine
label
M1



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaator; #i# M2 : #i# F := #i# F #



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13; #i# M2 : #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•;#i# M2 : #i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•#i#: #i# F := #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label: #i# F := #i# F #

Parsing tree

label
M2


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•:#i# F := #i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•#i#:= #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja:= #i# F #


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:=#i# F #

Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•#i##


Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•tegur#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•yksliige#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= <•aritmav#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•muutuja =•:= =•omistamine1#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: <•omistamine#

Parsing tree

omistamine
FF



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•label =•: =•operaator#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaator#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; =•operaatorid#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; =•operaatorid#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; =•operaatorid#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; <•operaatorid13 =•; =•operaatorid#



Stack & Word # <•operaatorid13 =•; <•operaatorid13 =•; =•operaatorid#



Stack & Word # <•operaatorid13 =•; =•operaatorid#



Stack & Word # =•operaatorid#



Stack & Word programm12#

the parsing is completed

Parsing tree

programm12
omistamine
F1
omistamine
I0
label
M1
omistamine
Iaritmav
I1
tingimus
loogilav
I5
suunamine
label
M2
omistamine
Fyksliige
FI
suunamine
label
M1
label
M2
omistamine
FF

Table of constants

c1=1c2=0c3=5

Table of identifiers

i1=Fi2=Ii3=M1i4=M2

Result tables


FileSize
P2.prm28
P2.t1200
P2.it16
P2.kt12
P2.pt1224

Parser ended at Sun Sep 28 14:06:39 2003