Web viewIntroducing students to the concepts and principles of compiler design. Providing students...

Preview:

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

Recommended