SYSU-DCS290: 编译原理 (Compilation Principle),Spring 2021

> Instructor

- 张献伟
- Email: zhangxw79[AT]mail.sysu.edu.cn
- Office Hours: Thu 16:20 - 18:00 (实验中心 E401)

> Teaching Assistants

- 莫泽威 (mozw5[AT]mail2.sysu.edu.cn)
- 王子彦 (wangzy75[AT]mail2.sysu.edu.cn)

> Lecture

- Time: Tue 14:20 - 16:00 (wk2-9), Thu 14:20 - 16:00 (wk1-19)
- Location: 教学大楼 C303

> Lab

- Time: Thu 16:20 - 18:00 (wk1-19)
- Location: 实验中心 E401

> Discussion

- QQ Group: 905213666

> Schedule

Week/Date Topic Note
wk1: Feb 25 Overview Lab: Linux Basics
wk2: Mar 2 Lexical Analysis: Intro, RegEx
wk2: Mar 4 Lexical Analysis: NFA, DFA (1) Lab: Lex Tool
wk3: Mar 9 Lexical Analysis: NFA, DFA (2) HW1 [sol]
Proj1: Lexical Analyzer
wk3: Mar 11 Syntax Analysis: Intro, CFG Lab: proj1
wk4: Mar 16 Syntax Analysis: CFG, Top-down (1) HW1 due
wk4: Mar 18 Syntax Analysis: Top-down (2) Lab: proj1 Q&A
wk5: Mar 23 Syntax Analysis: Bottom-up
wk5: Mar 25 Syntax Analysis: LR(0) Lab: YACC Tool
(Proj1 due)
wk6: Mar 30 Syntax Analysis: LR(0), SLR Proj2: Parser
wk6: Apr 1 Syntax Analysis: SLR, LALR Lab: proj2
wk7: Apr 6 Syntax: LALR, Semantic Analysis: Intro HW2[sol]
wk7: Apr 8 Semantic Analysis: Syntax Directed Trans. (1) Lab: proj2 Q&A
wk8: Apr 13 Semantic Analysis: Syntax Directed Trans. (2)
wk8: Apr 15 Semantic Analysis: SDT (3), Symbol Table Lab (Proj2 due)
wk9: Apr 20 Semantic Analysis: Symbol Table, Type Checking Proj3: Semantic
wk9: Apr 22 Seminar: GCC, LLVM and more ... ( talk1, talk2 ) Lab: proj3
(Proj2 due)
wk10: Apr 27/29 NO CLASS Midterm Exercises [sol]
wk11: May 6 Intermediate Code: IR Lab
wk12: May 13 Intermediate Code: Generation Lab
wk13: May 20 IR Gen, Runtime Management Lab
Proj4: Code Generation[rev-0603]
wk14: May 27 Runtime, Target Code Lab: proj4 - MIPS Arch
(Proj3 due)
wk15: Jun 3 Target Code Generation Lab: proj 4 - MIPS Code
wk16: Jun 10 Code Optimization (1) Lab: proj4 Q&A
wk17: Jun 17 Code Optimization (2) Lab
wk18: Jun 24 Seminar: Advanced Compiling Topics ( Golden Age, Smart Contract ) Lab (Proj4 due)
wk19: Jul 1 Review for Final Lab (Proj4 due)
wk20: Jul 8 NO CLASS FINAL EXAM (14:30 - 16:30, A105)