Course Schedule
This schedule is tentative and subject to change. Keep in mind that the slides may not include all the material discussed in lecture. You are responsible for any material we present in lecture, even if it does not appear in the posted slides. Notice that code examples can be found in the grace cluster (public directory).

| Week | Topics | Reading | Slides | Work |
|---|---|---|---|---|
| cmsc216 Schedule | ||||
| Week #1 (Sep 3) |
Course Introduction, Introduction to C Language (Data Types, Operators, Input/Output, Control Statements, Functions, Scope, Storage Types, Linkage) |
Course-Intro-C-Intro-I.pdf C-Intro-II.pdf |
||
| Week #2 (Sep 9) |
Introduction to C Language (Cont.), Pointers, GDB (lab) |
C-Intro-III.pdf,
Pointers.pdf |
||
| Week #3 (Sep 16) |
Pointers (Cont.), Arrays, Strings, Bitwise Operators, Math Library (lab), Input/Output Redirection (lab) |
Arrays-Strings.pdf BitwiseOperators.pdf |
Q1 (Wed/Sep 18) P1 Out (Thu/Sep 19) |
|
| Week #4 (Sep 23) |
Bitwise Operators (Cont.), Structures, Pointer Arithmetic |
Structures.pdf PtrArithmeticFuncPtr.pdf |
Q2 (Wed/Sep 25) | |
| Week #5 (Sep 30) |
2-Dim Arrays, Function Pointers, Preprocessor I, I/O (line-oriented-formatted), GDB (lecture) |
PreprocessorI.pdf IO.pdf |
P1 Due (Tue/Oct 1) P2 Out (Thu/Oct 3) |
|
| Week #6 (Oct 7) |
Make, Dynamic Memory Allocation, Valgrind Tool |
Make.pdf DynamicMemAlloc.pdf |
Q3 (Wed/Oct 9) |
|
| Week #7 (Oct 14) |
Dynamic Structures, Assembly, Midterm I (Lecture) |
AssemblyI.pdf |
P2 Due (Tue/Oct 15) P3 Out (Fri/Oct 18) Midterm I (Thu/Oct 17) |
|
| Week #8 (Oct 21) |
Assembly |
AssemblyII-If-Loops.pdf AssemblyIII-CallStack.pdf |
||
| Week #9 (Oct 28) |
Assembly, Process Control |
AssemblyIV-ParamLocal.pdf ProcessControlI.pdf |
P3 Due (Tue/Oct 29) Q4 (Wed/Oct 30) P4 Out (Thu/Oct 31) |
|
| Week #10 (Nov 4) |
Process Control, System I/O |
ProcessControlII.pdf System-IO-I.pdf |
||
| Week #11 (Nov 11) |
System I/O, Midterm II (Lecture) |
System-IO-II.pdf |
P4 Due (Tue/Nov 12) P5 Out (Tue/Nov 12) Midterm II (Thu/Nov 14) |
|
| Week #12 (Nov 18) |
Time Functions, Concurrency |
ConcurrencyI.pdf ConcurrencyII.pdf Time.pdf |
Q5 (Wed/Nov 20) | |
| Week #13 (Nov 25) |
Concurrency, Optimization, Thanksgiving Recess |
Optimization.pdf |
P5 Due (Tue/Nov 26) P6 Out (Tue/Nov 26) Thanksgiving (Thu/Fri, Nov 28/29) |
|
| Week #14 (Dec 2) |
Signals, Data Representation, Midterm III (Lecture) |
Signals.pdf Data-Rep.pdf |
Midterm III (Thu/Dec 5) |
|
| Week #15 (Dec 9) |
Libraries, Preprocessor, Heap Management, Miscellaneous, Course Evaluations |
Libraries.pdf PreprocessorII.pdf Heap-Management.pdf |
P6 Due (Tue/Dec 10) Last Day of Classes (Fri/Dec 13) Final Exam (Mon/Dec 16 4pm-6pm) |
|