Computer Science

ECS 242 Translation of Programming Languages

ECS 242 TRANSLATION OF PROGRAMMING LANGUAGES (4) III

Lecture: 3 hours

Discussion: 1 hour

Prerequisite: Course 240

Grading: Letter; one large programming project (60%), and final (40%).

Catalog Description:
Lexical analysis, parsing, storage management, symbol table design, semantic analysis and code generation. LR, LALR grammars. Compiler-compilers.

Goals:
Understanding of the techniques involved in the analysis of source language and the generation of efficient code.

Expanded Course Description:

  1. Compilation Process, Loading, One-Pass and Multiple-Pass Compilers
  2. Parsing techniques, use of formal languages
  3. Table driven compilers and languages for writing compilers
  4. Object Code Generation
    1. Translation of arithmetic expressions
    2. Register allocation
    3. Memory allocation
    4. Procedure and subprogram linkage
    5. Block structure
    6. Dynamic storage allocation
  5. Optimization techniques
    1. Local optimization
    2. Expression and loop optimization
    3. Problem of global optimization

Textbook:
A. Aho, R. Sethi, J. Ullman, Compilers: Principles and Tools, Addison-Wesley, 1986.

Instructors: R. Pandey

Prepared by: R. Pandey (Feb. 1997)

THIS COURSE DOES NOT DUPLICATE ANY EXISTING COURSES

Last revised: 2/97

border