Apresente a Análise de Precedência de Operadores, da entrada (id & (id v id) v id) sobre a gramática a seguir.
G = ({E, T, F}, {id, &, v, (, )}, P, E)
P = {E → EvT | T
T → T&F | F
F → (E) | id}Tabela de precedência de operadores da gramática G| | id | v | & | ( | ) | $ |
|---|
| id | | > | > | | > | > |
| v | < | > | < | < | > | > |
| & | < | > | > | < | > | > |
| ( | < | < | < | < | = | |
| ) | | > | > | | > | > |
| $ | < | < | < | < | | aceita |
Movimentos do analisador de precedência de operadores para (id & (id v id) v id)| Pilha | Relação | Entrada | Ação | Handle |
|---|
| $ | < | (id & (id v id) v id) $ | empilha ( | |
| $ ( | < | id & (id v id) v id) $ | empilha id | |
| $ ( id | > | & (id v id) v id) $ | reduz | F → id |
| $ ( E | < | & (id v id) v id) $ | empilha & | |
| $ ( E & | < | (id v id) v id) $ | empilha ( | |
| $ ( E & ( | < | id v id) v id) $ | empilha id | |
| $ ( E & ( id | > | v id) v id) $ | reduz | F → id |
| $ ( E & ( E | < | v id) v id) $ | empilha v | |
| $ ( E & ( E v | < | id) v id) $ | empilha id | |
| $ ( E & ( E v id | > | ) v id) $ | reduz | F → id |
| $ ( E & ( E v E | > | ) v id) $ | reduz | E → EvT |
| $ ( E & ( E | = | ) v id) $ | empilha ) | |
| $ ( E & ( E ) | > | v id) $ | reduz | F → (E) |
| $ ( E & E | > | v id) $ | reduz | T → T&F |
| $ ( E | < | v id) $ | empilha v | |
| $ ( E v | < | id) $ | empilha id | |
| $ ( E v id | > | ) $ | reduz | F → id |
| $ ( E v E | > | ) $ | reduz | E → EvT |
| $ ( E | = | ) $ | empilha ) | |
| $ ( E ) | > | $ | reduz | F → (E) |
| $ E | aceita | $ | | |