Lecture slides will be posted here as material is covered. The T
stands for Tuesday and the R
for Thursday in the table below.
Pre-lecture videos from Prof. Yih-Chun Hu are available here.
# | Day | Date | Topic | Bhowmik (BL) | Chen (BL2) | Abraham (BL3) |
---|---|---|---|---|---|---|
1 | T | 1/21 | Memory-mapped I/O: input from the keyboard, output to the monitor | slides, git | slides, code | Lec01, git |
2 | R | 1/23 | Repeated code: TRAPs and Subroutines | slides, git | slides, code | Lec02, git |
3 | T | 1/28 | Stack data structure and stack operations | slides, git | slides, code | Lec03, git |
4 | R | 1/30 | Programming with stack; Arithmetic using a stack | slides | slides, code | Lec04, Lec04e, git |
5 | T | 2/04 | Introduction to C: data types, operators, scope, storage | slides, git | slides, code | Lec05, git |
6 | R | 2/06 | Introduction to C: control structures, basic I/O | slides, git | slides, code | Lec06, git |
7 | T | 2/11 | Introduction to functions in C | slides, git | slides, code | Lec07, git |
8 | R | 2/13 | Implementing functions in C, run-time stack | slides | slides, code | Lec08c, Lec08e |
9 | T | 2/18 | Pointers and Arrays | slides | slides, code | Lec09c, Lec09e, git |
10 | R | 2/20 | Strings; multi-dimensional arrays | slides | slides, code | Lec10c, git |
11 | T | 2/25 | Problem solving with pointers and arrays | slides | slides, code | Lec11c, QS, git |
R | 2/27 | Midterm 1 | ||||
12 | T | 3/04 | Recursion | slides | slides, code | Lec12c, Lec12e, git |
13 | R | 3/06 | Problem solving with recursion; Recursion with backtracking | slides | slides, CtoLC-3 (video), code | Lec13c, Lec13e, git |
14 | T | 3/11 | File I/O in C | slides | slides, code | Lec14, git |
15 | R | 3/13 | Data Structures | slides, git | slides, code | Lec15c, Lec15e, git |
16 | T | 3/25 | Dynamic memory allocation | slides, git | slides, code | Lec16c, git |
17 | R | 3/27 | Linked Lists | slides, git | slides, code | Lec17c, Lec17e, git |
18 | T | 4/01 | Problem solving with linked lists | slides, git | slides, code | Lec18c, Lec18e, git |
19 | R | 4/03 | From C to LC-3 assembly with linked data structures | slides, git | slides, code | Lec19c, Lec19e, git |
20 | T | 4/08 | Intro to C++: Objects, Constructors | |||
R | 4/10 | Midterm 2 | ||||
21 | T | 4/15 | Intro to C++: inheritance and polymorphism | |||
22 | R | 4/17 | Intro to C++: iterators and templates | |||
23 | T | 4/22 | Trees, traversal and search | |||
24 | R | 4/24 | C++ examples | |||
25 | T | 4/29 | Interrupts and exceptions; Interrupt-driven I/O; TRAP | |||
26 | R | 5/01 | Course Review Day 1 | |||
27 | T | 5/06 | Course Review Day 2 |