Page Preview: 101

Course Title[Course Code]:Compiler Theory[CSW 456]

Faculty: Computers and Artificial Intelligence
Department: Computer Science
Program: Computer Science
Compulsory / Elective:Compulsory
Undergraduate(Forth Year-First Semester)
Lecture:( 3 ) Practical / Clinical:( - ) Tutorial:( 2 )

Course Description:
The course aims at introducing the Introduction and overview. Scanning-theory and practice: Regular expressions, finite automata and scanners, scanner generators, practical considerations, translating regular expressions to finite automata. Grammars and parsing: Context frees grammars, parsers and recognizers, grammar analysis algorithms. Semantic processing: Syntax-directed translation, semantic processing techniques. Symbol tables: Basic techniques, block-structured and extensions, Implicit declarations. Run-time storage organization: Static allocation, stack allocation, heap allocation, program layout in memory. Data structures: declaration-processing fundamentals, action routines. Procedures and functions: If statements, loops, case statement, exception handling, passing parameters to subprograms. Code generation and optimization: Register and temporary management, interpretive code generation, generating code from trees and tags, optimizing subprogram calls, loop optimization.