(Created page with "= Problem = Consider the following grammar, where '''<tt>S</tt>''' is the initial symbol and '''<tt>{v, w, x, y, z}</tt>''' is the set of terminal symbols: S → M y S x |...") |
(→Solution) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
= Problem = | = Problem = | ||
− | Consider the following grammar, where ''' | + | Consider the following grammar, where '''A''' is the initial symbol and '''{x, y, z}''' is the set of terminal symbols: |
− | + | A → B y | x | ε | |
− | + | B → A x | C z | |
− | + | C → x | ε | |
# Examine the grammar and rewrite it so that an LL(1) predictive parser can be built for the corresponding language. | # Examine the grammar and rewrite it so that an LL(1) predictive parser can be built for the corresponding language. | ||
# Compute the FIRST and FOLLOW sets for all non-terminal symbols in the new grammar and build the parse table. | # Compute the FIRST and FOLLOW sets for all non-terminal symbols in the new grammar and build the parse table. | ||
− | # Show the analysis table (stack, input, and actions) for the parsing process of the ''' | + | # Show the analysis table (stack, input, and actions) for the parsing process of the '''xzyxy''' input sequence. |
= Solution = | = Solution = | ||
+ | {{CollapsedCode|Solução completa| | ||
[[image:ll1-ex11.jpg]] | [[image:ll1-ex11.jpg]] | ||
+ | }} | ||
[[category:Compiladores]] | [[category:Compiladores]] | ||
[[category:Ensino]] | [[category:Ensino]] |
Consider the following grammar, where A is the initial symbol and {x, y, z} is the set of terminal symbols:
A → B y | x | ε B → A x | C z C → x | ε
Solução completa |
---|