|
|
|
|
SMD002 Compiler Design 6.0 ECTS credits | |
TIMEPERIOD: II LANGUAGE:English/Swedish EXAMINER Glenn Jennings Univ lekt PREREQUISITES SMD011 Imperative Programming and SMD082 Hardware/Software Interface. Hardware/Software Interface may be taken concurrently. COURSE AIM The goal of the course is for the student to construct a nontrivial and working compiler for a "C"-type imperative language, which translates source code all the way down to assembler code for a standard pipelined uniprocessor (for example, MIPS asembler); and to learn the theory needed to understand this. CONTENTS When the course begins, the teacher presents the problem which the participants shall solve. To solve this problem, the participants must then learn and apply what is needed. TEACHING The compiler-writing is broken up into a number of cumulative subgoals; the subgoals act as guidance toward the final goal. The student is expected to meet the deadlines for each subgoal. There will be a small number of lectures, mostly directed toward the compiler construction, however a few will deal with theoretical aspects as well. EXAMINATION Written examination. The student is expected to meet the course deadlines; therefore the exam will be based in large part on the student´s expected experience gathered during the entire compiler construction: scanner (FLEX), parser (BISON), dictionary construction and seeking, intermediate code and its optimizations, instruction scheduling, register allocation, final code and peephole optimizations. COURSE GRADE SCALE: U,3,4,5 ITEMS/CREDITS | |
Required assignment | 4.50ECTS |
Written exam | 1.50ECTS |
COURSE LITTERATURE Aho, Sethi, Ullman: Compilers: Principles, Techniques and Tools 2nd ed. Addison-Wesley. 1986. A.I. Holub: Compiler Design in C. Prentice-Hall 1990; also Kernighan, Ritchie: The C Programming Language, 2nd ed. Prentice-Hall 1988. REMARKS Course not given during academic year 97/98. The course assumes the student has knowledge of discrete mathematics and of abstract datatypes. The compiler is to be coded in standard "C": the student who does not know "C" will be expected to learn it on his own, as the course proceeds. Further information: Glenn Jennings |
Web Editor: Birgitta.Hakansson@dc.luth.se
The University | Student | Research | Search | Contact us | In Swedish |
LULEÅ UNIVERSITY OF TECHNOLOGY University Campus, Porsön, 971 87 Luleå. Tel. +46 (0) 920-91 000, fax +46 (0) 920-91 399 |