编译原理 (2024年春夏)

Course Information

Semester: 2023-2024学年春夏学期
Lectures: 周二(3-5), 10:00am - 12:25pm
Instructor: 姚培森, pyaoaa@zju.edu.cn
Teaching assistant: 陈楷骐

Schedule

The textbook we (mainly) use is Andrew W. Appel's Modern Compiler Implementation in C.

Section Topic Readings
(A=Appel, C=Cooper, D=Dragon)
Introduction Course overview A1
Lexical Analysis RE, automata, lexer A2, D3.3, D3.6-3.8
Parsing I CFG, parse tree A3.1, D4.2
Parsing Top-down parsing A3.2, D4.3-4
Parsing Bottom-up parsing A3.3, D4.5-7
Abstract Syntax Semantic action, AST A3.4, A4, D4.8-9
Semantic Analysis Scope & symbol table, type checking A5, D6.1-2, D7.6, Cardelli
Activation Record Memory layout, stack frame, use of registers A6, D7.2-4
Translating to Intermediate Code Overview of IR, translation to IR Tree A7, C5, D8.1
Basic Block and Traces Lowering of IR Tree A8
Instruction Selection A9
Liveness Analysis A10, D10.6
Register Allocation A11, C13.3, C13.5, D9.5-6
Garbage Collection A13, C13.5
Object-oriented Languages A14
Loop Optimizations A18

Assignments/Labs

References

Some Tutorials

Other Resources