下面的教学日程提供了关于课程讲义、习题课,一对一会议和测试部分的信息。对于一对一的会议,学生需要阅读相关论文,然后在个人会议上和教授或者助教进行讨论。
教学日程图例
L: 讲义
P: 项目
R: 习题课
Q: 测试
M: 会议
(S):
教授Saman Amarasinghe的课程
(M): 教授Martin Rinard的课程
课程时间表
| 星期 # |
第一天 |
第二天 |
第三天 |
第四天 |
| 1 |
|
|
L1: 课程信息和概述
(S) |
P1: 布置词法分析器/语法分析器
R1: 词法分析器和语法分析器项目 |
| 2 |
L2: 变成语言概述(M) |
L3: 正规表达式, 形式语法定义的语言 (M) |
L4: 语法分析表构建 (M) |
L5: 自顶向下语法分析 (M) |
| 3 |
|
|
P1: 词法分析器/语法分析器完成时间
P2: 布置语义检测器项目 |
R2: 项目信息课 |
| 4 |
L6: 中间表达式 (M) |
L7: 语义分析 (M) |
|
|
| 5 |
Q1: 课内测试 |
M1: 一对一会议 |
M1: 一对一会议 (续) |
P2: 布置语义检测器项目
P3: 布置代码生成项目 |
| 6 |
|
|
R3: 项目信息课 |
L8: 未优化代码生成 (S)
M2:
一对一会议 |
| 7 |
L9:未优化代码生成 (cont.)
(S)
M2: 一对一会议 (cont.) |
|
|
|
| 8 |
|
P3: 代码生成器项目检测点 |
|
|
| 9 |
P3: 代码生成项目完成时间
L10:
程序分析和优化介绍 (M)
P4: 布置数据流优化项目 |
L11: 数据流分析 (M) |
L12: 数据流优化 (M)
M3:
一对一会议 |
L13: 数据流分析基础
(M)
M3: 一对一会议 (cont.) |
| 10 |
Q2: 课内测试 |
R4: 项目信息课 |
|
|
| 11 |
|
|
|
P4: 数据流优化器项目检测点 |
| 12 |
|
|
P4: 数据流优化器项目完成时间
P5: 布置指令优化器项目 |
|
| 13 |
R5: 项目信息课 |
L14: 指令调度 (S) |
L15: 指令调度 (cont.) (S) |
L16: 寄存器分配 (S) |
| 14 |
L17: 汇总 (S) |
Q3: 课内测试 |
|
|
| 15 |
P5: 指令优化器项目完成时间 |
|
L18: 编译器比赛 (S) |
|