This page lists all lab and homework assignments. There are also quizzes before and after each week of lecture.
Labs are due by the end of the day unless otherwise noted.
Homeworks are due at noon unless otherwise noted.
If an assignment is linked but tentative, there may be some changes, perhaps substantial changes, to the assignment before it is officially released.
- Lab: getting C— on 2018-01-17
- Lab: bomb lab— on 2018-01-24
- HW: bomb HW— due 2018-01-31
- Lab: memory safety lab— on 2018-01-31
- HW: lists in C— due 2018-02-07
- Lab: bit-fiddling lab— on 2018-02-07
- HW: bit-fiddling HW— due 2018-02-14
- Lab: HCL1 (pc)— on 2018-02-14
- HW: HCL2 (irmovq + rrmovq + jmp)— due 2018-02-21
- Lab: HCL3 (seqlab)— on 2018-02-28
- HW: HCL4 (seqhw)— due 2018-03-14
- Lab: HCL5 (pipelab1)— on 2018-03-14
- HW: HCL6 (pipehw1)— due 2018-03-21
- Lab: HCL7 (pipelab2)— on 2018-03-21
- HW: HCL8 (pipehw2)— due 2018-03-28
- Lab: CacheLab— on 2018-03-28
- Lab: LoopLab— on 2018-04-11
- HW: Rotate— due 2018-04-18
- Lab: SIMDLab— on 2018-04-18
- HW: Smooth— due 2018-04-25
- HW: Memory— due 2018-05-02