Sides 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. Code examples can be found in the grace cluster (public directory).
Week | Topics | Slides | Readings | Work |
---|---|---|---|---|
Wk #1 (Jan 25) |
Course Introduction, C Data Types, Operators, Active Learning |
ActiveLearningWorkshop.pdf
Course-Intro.pdf |
King's book, Chapters 1 → 6 |
|
Wk #2 (Jan 29) |
Input / Output, Control Statements, Functions, sizeof, Input / Output Redirection |
C-Intro.pdf C-Lang-I.pdf |
King's book, 7.1 → 7.4 7.6 9.1 → 9.4 Chapter 10, 18.1→18.2 |
E1 Out (Tue) E1 Due (Fri) E2 Out (Thu) |
Wk #3 (Feb 5) |
C Storage types, Linkage, Pointers, Arrays, Debugging/GDB (lab), Math Library(lab) |
C-Lang-II.pdf Debugging.pdf (Lab) Pointers.pdf Pointers-Arrays.pdf |
King's book, 8.1 Chapter 11, 23.3 |
Q1 (Wed) E2 Due (Wed) P1 Out (Thu) |
Wk #4 (Feb 12) |
Pointer Arithmetic, Strings |
Ptr-Arithmetic.pdf Strings.pdf |
King's book, Chapter 11, 12, 13, 23.5, 23.6 |
Q2 (Wed) E3 Out (Thu) |
Wk #5 (Feb 19) |
Command Line Arguments, 2-Dim Arrays, Structures |
CmdLine-Args-2DArrays.pdf Structures.pdf |
King's book, 8.2, Chapter 16 |
P1 Due (Wed) E3 Due (Thu) P2 Out (Thu) E4 (Ard) Out (Thu) |
Wk #6 (Feb 26) |
Formatted I/O, Data Representation |
IO.pdf Data-Rep.pdf |
King's book Chapter 22, 24.1, 24.2 Bryant's book, Chapter 2 |
E4 (Ard) Due (Thu) E5 (Ard) Out (Thu) P2 Due (Fri) |
Wk #7 (Mar 5) |
Bit Operations, Preprocessor, Make |
BitwiseOperators.pdf PreprocessorI.pdf (Lab) Make.pdf (Lab) |
King's book, Chapter 20, 14, 15.4 |
Midterm I (Tue) (Lecture) P3 Out (Tue) |
Wk #8 (Mar 12) |
Dyamic Memory Allocation, Function Pointers |
DynamicMemAlloc.pdf FunctionPtrs.pdf |
King's book, 17.1 - 17.7 |
E5 (Ard) Due (Tue) P3 Due (Thu) E6 Out (Thu) |
Spring Break 2018 (Mar 18-Mar 25) | ||||
Wk #9 (Mar 26) |
Function Pointers, Dynamic Structures, Encapsulation in C (Lab), Assembly, Optimization |
DynamicMemAllocII.pdf AssemblyI-AVR.pdf |
Mid-Term Grades Due (Mon) P4 Out (Wed) E6 Due (Thu) Q3 (Debugging) (Wed) |
|
Wk #10 (Apr 2) |
Assembly |
AssemblyII-AVR.pdf |
P4 Due (Thu) E7 Out (Thu) |
|
Wk #11 (Apr 9) |
Assembly, Process Control |
AssemblyIII-InstStack.pdf ProcessControlA.pdf |
Bryant's book, 1.7, 8.2, 8.3, 8.4 |
P5 Out (Mon) E7 Due (Tue) |
Wk #12 (Apr 16) |
Process Control |
ProcessControlB.pdf |
Midterm II (Thu) (Lecture) E8 Out (Tue) |
|
Wk #13 (Apr 23) |
System I/O (read, write, file descriptors, dup2, pipes), |
System-IO-I.pdf System-IO-II.pdf |
Bryant's book 10.1 - 10.4, 10.8 - 10.12 |
Q4 (Wed) P5 Due (Tue) E8 Due (Tue) P6 Out (Tue) |
Wk #14 (Apr 30) |
Concurrency, Optimization, Time (Lab) |
Concurrency.pdf Time.pdf Optimization.pdf |
Bryant's book 5.1 - 5.8, 6.1 - 6.3, 12.3 - 12.7 |
E9 Out (Tue) |
Wk #15 (May 7) |
Libraries, Preprocessor, Signals, Course Evaluations, Review |
Signals.pdf Libraries.pdf PreprocessorII.pdf Review.pdf |
Bryant's book 7.1 - 7.12, 8.5 |
P6 Due (Tue) E9 Due (Mon) Last Day of Classes (Thu/May 10) Final Exam (Sat/May 12, 4pm-6pm) |