Lecture |
Date |
Topics |
P&P Reading |
Materials |
1 |
Tue 15 Sep |
Introduction and review |
Ch. 6-7 |
|
2 |
Thu 17 Sep |
I/O abstractions, keyboard, monitor |
Sec. 8.1-4 |
|
3 |
Tue 22 Sep |
Repeated code: subroutines, TRAPs, interrupts, libraries |
Ch. 9 |
|
4 |
Thu 24 Sep |
Stacks: abstraction and use in assembly |
Ch. 10 |
|
5 |
Tue 29 Sep |
Stacks: conventions and use for subroutines |
Ch. 10 |
|
|
|
National Day Holiday Week! |
|
|
6 |
Tue 13 Oct |
Re-introduction to C: variables, operators |
Ch. 11-12 |
|
7 |
Thu 15 Oct |
C control constructs |
Ch. 13 |
|
8 |
Tue 20 Oct |
Examples, problem solving with C |
(Ch. 11-13) |
|
9 |
Thu 22 Oct |
Functions in C: implementation and examples |
Sec. 14.1-3 |
|
10 |
Tue 27 Oct |
Examples using functions, introduction to pointers |
Sec. 14.4, 16.1-2 |
|
MT1 |
Thu 29 Oct |
Optional: Review for Midterm #1 |
|
|
12 |
Tue 3 Nov |
Arrays: introduction and examples |
Ch. 16 |
|
13 |
Thu 5 Nov |
Testing and debugging: error taxonomy, examples, and strategies |
Ch. 15 |
|
14 |
Tue 10 Nov |
More examples of testing |
-- |
|
15 |
Thu 12 Nov |
Recursion: introduction and example |
Ch. 17 |
|
16 |
Tue 17 Nov |
Recursion: general strategy, examples, stack frames |
Ch. 17 |
|
17 |
Thu 19 Nov |
Structured data in C |
Sec. 19.1 |
|
18 |
Tue 24 Nov |
Data structures: example, defining types, enums |
Sec. 19.2-3 |
|
19 |
Thu 26 Nov |
Dynamic allocation: resizing, C API, linked lists |
Sec. 19.4-5 |
|
20 |
Tue 1 Dec |
Pointer-based data structures |
-- |
|
MT2 |
Thu 3 Dec |
Optional: Review for Midterm #2 |
|
|
22 |
Tue 8 Dec |
Implementation of dynamic memory allocation |
-- |
|
23 |
Thu 10 Dec |
I/O in Unix and C |
Ch. 18 and notes |
|
24 |
Tue 15 Dec |
Extensive I/O example |
-- |
|
25 |
Thu 17 Dec |
Function pointers, hierarchies of structures |
-- |
|
26 |
Tue 22 Dec |
C++: classes, inheritance, access control |
-- |
|
27 |
Thu 24 Dec |
C++: constructors and destructors, dynamic memory management |
-- |
|
FIN |
TBD |
Final Exam |
|
|