Anna university Examination 2009 Question paper - PRINCIPLES OF COMPILER DESIGN
B.E/B.Tech.DEGREE EXAMINATION,MAY/JUNE 2009
Computer Science and EngineeringCS1352-PRINCIPLES OF COMPILER DESIGN
Time:Three hours Maximum:100 marks
Answer All questions
Part A --(10*2=20 marks)
1. What are the issues to be considered in the design of lexical analyzer?
2. Define concrete and abstract syntax with example.
3. Derive the string and construct a syntax tree for the input string ceaedbe using
the grammar S->SaA|A,A->AbB|B,B->cSd|e
4. List the factors to be considered for top-down parsing.
5. Why is it necessary to generate intermediate code instead of generating target
6. Define back patching.
7. List the issues in code generation.
8. Write the steps for constructing leaders in basic blocks.
9. What are the issues in static allocation?
10. What is meant by copy-restor?
11. (a) (i) Explain the need for dividing the compilation process into various phases
and explain its functions. (
(ii) Explain how abstract stack machine can be used as translators. (
(b) What is syntax directed translation? How it is used for translation of expresions?
12. (a) Given the following grammar S->AS|b,A->SA|a Construct a SLR parsing table for
the string baab (16)
(b) Consider the grammar E->E+T,T->T*F,F->(E)\id.Using predictive parsing the string
13. (a) Explain in detail how three address code are generated and implemented.
(b) Explain the role of declaration statements in intermediate code generation.
14. (a) Design a simple code generator and explain with example.
(b) Write short notes on:
1: Peep hole optimization
2: Issues in code generation
15. (a) Explain with an example how basic blocks are optimized.
(b) Explain the storage allocation strategies used in run time environments.