教學時程

電腦語言工程(SMA 5502)

因舊版課程無指定課堂作業與考試,因此統整所有作業、講義、考試內容合併列出。

    下面這份時程表提供了課程講座、復習、一對一討論會、專題和測試的資訊。對於一對一討論會,學生應該閱讀指派的論文並且在於教授或助教的單獨討論會中討論該論文。

     

    時程表字母縮寫

    L:講座

    P:專題

    R:復習

    Q:測試

    M:討論會

    (S):Saman Amarasinghe教授的課

    (M):Martin Rinard教授的課

     

    第一天

    第二天

    第三天

    第四天

    1

     

     

    L1: 課程管理資訊和總覽

    Course Administration Information and Overview

     (S)

    P1:掃描器/解析器

     Scanner/Parser Assigned

     

    R1:掃描解析器專題Scanner Parser Project

    2

    L2:程式設計語言總覽

    Overview of Programming Languages (M)

    L3: 正則運算式,使用形式語法的語言規範

    Regular Expressions, Language Specification by Formal Grammars (M)

    L4:分析表建構

    Parse Table Construction (M)

    L5:自上至下分析法Top-down Parsing (M)

    3

     

     

    P1: 掃描/解析器專題截止

    Scanner/Parser Project Due

    P2: 指派語義檢查器專題

    Semantic Checker Project Assigned

    R2: 專題資訊課Project Information Session

    4

    L6: 中間表示法Intermediate Representations (M)

    L7: 語義分析

    Semantic Analysis (M)

     

     

    5

    Q1: 隨堂測試In-class Quiz

    M1: 一對一會談One-on-One Meeting

    M1: 一對一會談(續) One-on-One Meeting (cont.)

    P2: 語義檢查器專題截止

    Semantic Checker Project Due

     

    P3:指派代碼生成器專題

    Code Generator Project Assigned

    6

     

     

    R3: 專題資訊課

    Project Information Session

    L8:未優化的代碼生成

    Unoptimized Code Generation (S)

    M2: 一對一會談One-on-One Meeting

    7

    L9:未優化的代碼生成(續)

    Unoptimized Code Generation (cont.) (S)

     

    M2: 一對一會談(續) One-on-One Meeting (cont.)

     

     

     

    8

     

    P3:代碼生成專題檢查點

    Code Generator Project Checkpoint

     

     

    9

    P3: 代碼生成專題截止

    Code Generator Project Due

     

    L10: 程式分析和優化導論

    Introduction to Program Analysis and Optimization (M)

     

    P4:指派資料流程優化器專題

    Data-flow Optimizer Project Assigned

    L11: 資料流程分析Data-flow Analysis (M)

    L12: 資料流程優化Data-flow Optimizations (M)

     

    M3: 一對一會談One-on-One Meeting

    L13:資料流程分析基礎

    Foundations of Data-flow Analysis (M)

    M3: 一對一會談(續)

    One-on-One Meeting (cont.)

    10

    Q2: 隨堂測試In-class Quiz

    R4:專題資訊課

    Project Information Session

     

     

    11

     

     

     

    P4:資料流程優化器專題檢查點

    Data-flow Optimizer Project Checkpoint

    12

     

     

    P4:資料流程優化器專題截止

    Data-flow Optimizer Project Due

     

    P5:指派指令優化器專題

    Instruction Optimizer Project Assigned

     

    13

    R5:專題資訊課Project Information Session

     

    L14: 指令調度Instruction Scheduling (S)

     

    L15:指令調度(續) Instruction Scheduling (cont.) (S)

    L16:寄存器分配Register Allocation (S)

    14

    L17: 所有模組綜合Putting it all Together (S)

    Q3: 隨堂測試

    In-class Quiz

     

     

    15

    P5: 指令優化器專題截止

     Instruction Optimizer Project Due

     

    L18: 編譯器競賽Compiler Derby (S)