Home || Study Aim ||  Teach Staff ||  Laboratories ||  Galary ||  About Us
Welcome to Computer Science Department Website

First year

Second year

Third year

Fourth year


Links
Ministery of Higher Education

Ministery of Higher Education in Erbil

Salahaddin University

University of Sulaimani

Koya University

University of Kurdistan

Compilers

Total hours: 60 theory + 60 practice.

Aim of Subject:

    Introduce basic knowledge to students in the area of language processors–theory and practice of compiler writing. Improve programming skills by learning how a compiler works. Design and implement parts of a compiler for a small programming language.

Subjects Names:
  1. Compilers. Introduction to compiling, Basic concepts, Analysis of the source program, Phases of compiler

  2. Introduction to Language Processors. Evolution of programming languages. Classification of language processors. Basic algorithm of a compiler and an interpreter.

  3. Formal Languages. Sets, alphabets, strings, languages. Operators on sets of strings.

  4. Lexical Analysis The role of the lexical analyzer, Basic idea. Lexical units, specification of tokens, Recognition of token. Symbol table

  5. Compiler-Compilers ( Flex – a scanner generator,. Regular expressions. Actions. Ambiguous source rules. Source definitions. Examples.)

  6. Syntax analysis Introduction to parser, derivation, parse tree, ambiguity Eliminating ambiguity, Associatively of operator

  7. Top down parsing Precedence of operator, Elimination of left recursion, Left factoring a grammar

  8. Non recursive predictive parsing First and Follow function LL(1) grammars Constructing Predictive parsing table

  9. Bottom-Up parsing LR(0) Parser

  10. Compiler-Compilers. Bison – a parser generator. Source – basic specifications. Actions. Ambiguity and conflicts. Examples.

  11. SLR(1) Parser, LR(1) Parser, LALR(1) Parser
  12. Type checking
  13. Intermediate Code Generation
  14. Code Optimization
******************************************************
References:
  1. Compilers: Principles, Techniques and Tools, Aho, Sethi, and Ullman, Addison-Wesley, 1986.

  2. cs.www.edu/~aabyan/Linux/compiler.pdf
University of Dohuk, Dohuk City, Kurdistan Region - Iraq
Tel. : +964 (0)62 7225125    Relations: +964 762 0004
Copyright ©, Department Of Computer Science 2008