Upload
hanguyet
View
213
Download
0
Embed Size (px)
Citation preview
Bahria University
Department of Computer Science
Compiler Construction CSC-380 Semester 6
Course Objectives
After completing this course, the student should be able to:
Introducing students to the concepts and principles of compiler design. Providing students with basic understanding of grammars and language definition. Introducing students to the various phases of designing a compiler. Introducing students to the various programming techniques and structures used in
compiler construction. Providing students with practical programming skills necessary for constructing a
compiler.
Course Outline
Lexical Analysis• Token, Pattern, Lexeme• Attributes of tokens• Strings and languages• Regular expressions• Recognition of tokens
Syntax Analysis
• Grammars and language definition (BNF grammar, syntax diagrams)• Top-down parsing• bottom-up parsing• LL vs. LR parsing• Recursive descent parsing• Predictive parsing (table driven and operator precedence driven parsing)
Syntax Directed Translation• Synthesized and Inherited attributes
Symbol table • Information in symbol table• Linear table• Ordered list • Tree• Hash table
Intermediate Code Generation• Types and declarations• Three Address code
Optimization
• Introduction
Text Book
Alfred V. Aho, Monica Lam, Ravi Sethi, and Jeffrey D. Ullman. 2007. Compilers: Principles
Reference BooksCompiler Construction by Kennth C.Louden