Click here to load reader
Upload
yohanbeschi
View
1.535
Download
0
Embed Size (px)
Citation preview
3 + 5
Pointeur sur le prochain caractère à lire
Expression à analyser : EOF
Expression
3 + 5
Pointeur sur le prochain caractère à lire
État de la pile de productions avant
État initial
Note : la table de productions contient des instances des types indiqués
Expression à analyser : EOF
Expression
3 + 5
Pointeur sur le prochain caractère à lire
État de la pile de productions avant / après
État initial
Note : la table de productions contient des instances des types indiqués
Expression à analyser : EOF
Expression
3 + 5
Pointeur sur le prochain caractère à lire
État de la pile de productions avant / après exécution des méthodes pop()
Production p = pop()
État initial
1
Note : la table de productions contient des instances des types indiqués
Expression à analyser : EOF
Expression
3 + 5
Digit
Operator
Digit
Pointeur sur le prochain caractère à lire
État de la pile de productions avant / après exécution des méthodes pop() et produce()
p.produce()
Production p = pop()
État initial
1 2
Note : la table de productions contient des instances des types indiqués
Expression à analyser : EOF
Expression
3 + 5
Digit
Operator
Digit
Pointeur sur le prochain caractère à lire
État de la pile de productions avant / après exécution des méthodes pop() et produce()
Valeur retournée : null
p.produce()
Production p = pop()
État initial
1 2
3
Note : la table de productions contient des instances des types indiqués
Expression à analyser : EOF
Digit
Operator
Digit
3 + 5
Operator
Digit
État de la pile de productions avant / après exécution des méthodes pop() et produce()
Valeur retournée : EventType.DIGIT
p.produce()
Production p = pop()
1 2
3
Expression à analyser :
X
EOF
Pointeur sur le prochain caractère à lire
Note : la table de productions contient des instances des types indiqués
Aucune modification de la pile X
Operator
Digit
3 + 5
Digit
État de la pile de productions avant / après exécution des méthodes pop() et produce()
Valeur retournée : EventType.OPERATOR
p.produce()
Production p = pop()
1 2
3
Expression à analyser :
X
EOF
Pointeur sur le prochain caractère à lire
Note : la table de productions contient des instances des types indiqués
Aucune modification de la pile X
Digit
3 + 5
État de la pile de productions avant / après exécution des méthodes pop() et produce()
Valeur retournée : EventType.DIGIT
p.produce()
Production p = pop()
2
3
Expression à analyser :
X
1
EOF
Pointeur sur le prochain caractère à lire
Note : la table de productions contient des instances des types indiqués
Aucune modification de la pile X
3 + 5
Pointeur sur le prochain caractère à lire
État de la pile de productions avant / après exécution des méthodes pop() et produce()
Note : la table de productions contient des instances des types indiqués
Expression à analyser :
Aucune modification de la pile X
EOF
La pile de productions étant vide, l’analyse est terminée