Question: please help me to get the answer. thank you! 5. (20) Parsing. Consider the CFG for in the slides for parsing (around P16). Trace the
please help me to get the answer. thank you!




5. (20) Parsing. Consider the CFG for in the slides for parsing (around P16). Trace the table driven parser on the following input program, as done in the class discussion: sum := A + B write sum. LL(1): example grammar 1. - $$ 2. | E 3. id := | read id | write 4. 5. 1 6. 7. + | E 8. + ( ) | id | number 9. + + | - 10. 7 * / Top-of-stack nonterminal id number read Current input token write := ( ) + - * . $$ i TIL TO program stmt_list stmt expr term_tail term factor_tail factor add_op mult_op II III ON Tito i 5 ini loiali 12 12 16 - 17 - - 18 - 19 1. program stmt_list $$ {id, read, write, $$} 2. stmt_list + stmt stmt_list {id, read, write} 3. stmt_list + {$$} 4. stmt id := expr {id} 5. stmt + read id {read} 6. stmt + write expr {write} 7. expr + term term_tail {(, id, number} 8. term_tail add_op term term_tail {+, -} 9. term_tail e{), id, read, write, $$} 10. term + factor factor_tail {(, id, number} 11. factor_tail + mult_op factor factor_tail {*, /} 12. factor_tail +{+, -, ), id, read, write, $$} 13. factor + ( expr ) {(} 14. factor +id {id} 15. factor + number {number} 16. add op ++ {+} 17. add_op +-{-} 18. mult_op=+*{*} 19. mult_op +/{/} 5. (20) Parsing. Consider the CFG for in the slides for parsing (around P16). Trace the table driven parser on the following input program, as done in the class discussion: sum := A + B write sum. LL(1): example grammar 1. - $$ 2. | E 3. id := | read id | write 4. 5. 1 6. 7. + | E 8. + ( ) | id | number 9. + + | - 10. 7 * / Top-of-stack nonterminal id number read Current input token write := ( ) + - * . $$ i TIL TO program stmt_list stmt expr term_tail term factor_tail factor add_op mult_op II III ON Tito i 5 ini loiali 12 12 16 - 17 - - 18 - 19 1. program stmt_list $$ {id, read, write, $$} 2. stmt_list + stmt stmt_list {id, read, write} 3. stmt_list + {$$} 4. stmt id := expr {id} 5. stmt + read id {read} 6. stmt + write expr {write} 7. expr + term term_tail {(, id, number} 8. term_tail add_op term term_tail {+, -} 9. term_tail e{), id, read, write, $$} 10. term + factor factor_tail {(, id, number} 11. factor_tail + mult_op factor factor_tail {*, /} 12. factor_tail +{+, -, ), id, read, write, $$} 13. factor + ( expr ) {(} 14. factor +id {id} 15. factor + number {number} 16. add op ++ {+} 17. add_op +-{-} 18. mult_op=+*{*} 19. mult_op +/{/}