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. These are made available to the class as an optional resource; they are not assigned readings or homework. The videos will neither be shown nor discussed in class.
# | Day | Date | Topic | Chen BL1 |
Abraham BL2 |
Bhowmik BL3 |
---|---|---|---|---|---|---|
1 | T | 08-26 | Memory-mapped I/O: input from the keyboard, output to the monitor | Lect01, Git, LOs | Git, Lec | Lec01, Git |
2 | R | 08-28 | Repeated code: TRAPs and Subroutines | Lect02, Git, | Git, Lec | Lec02, Git |
3 | T | 09-02 | Stack data structure and stack operations | Lect03, Git, LOs | Git, Lec | Lec03, Git |
4 | R | 09-04 | Programming with stack; Arithmetic using a stack | Lect04, Git | Git, Lec | Lec04, Git |
5 | T | 09-09 | Introduction to C: data types, operators, scope, storage | Lect05, Git, LOs | Git, Lec | Lec05, Git |
6 | R | 09-11 | Introduction to C: control structures, basic I/O | Lect06, Git | Git, Lec | Lec06, Git |
7 | T | 09-16 | Introduction to functions in C | Lect07, Git, LOs | Git, Lec | Lec07, Git |
8 | R | 09-18 | Implementing functions in C, run-time stack | Lect08, Git | Git, Lec, LecExt | Lec08, Git |
9 | T | 09-23 | Pointers and Arrays | Lect09, Git, LOs | Git, Lec | Lec09, Git |
R | 09-25 | Midterm 1 | ||||
10 | T | 09-30 | Strings; multi-dimensional arrays | |||
11 | R | 10-02 | Problem solving with pointers and arrays | |||
12 | T | 10-07 | Recursion | |||
13 | R | 10-09 | Problem solving with recursion; Recursion with backtracking | |||
14 | T | 10-14 | File I/O in C | |||
15 | R | 10-16 | Data Structures | |||
16 | T | 10-21 | Dynamic memory allocation | |||
17 | R | 10-23 | Linked Lists | |||
18 | T | 10-28 | Problem solving with linked lists | |||
R | 10-30 | Midterm 2 | ||||
19 | T | 11-04 | From C to LC-3 assembly with linked data structures | |||
20 | R | 11-06 | Intro to C++: Objects, Constructors | |||
21 | T | 11-11 | Intro to C++: inheritance and polymorphism | |||
22 | R | 11-13 | Intro to C++: iterators and templates | |||
23 | T | 11-18 | Trees, traversal and search | |||
24 | R | 11-20 | C++ examples | |||
25 | T | 12-02 | Interrupts and exceptions; Interrupt-driven I/O; TRAP | |||
26 | R | 12-04 | Course Review Day 1 | |||
27 | T | 12-09 | Course Review Day 2 |