Date |
Topic |
Reading (From the Main
textbook)
|
Notes |
September 3 |
Course Overview | ||
September 5 |
Introduction to Computer Organization and Software Hierarchy |
Ch. 1 |
Intro slides |
September 10 |
Data Representation:
Conversion between Number Systems, Character Codes |
Ch. 2 |
PA0 |
September 12 |
Boolean Algebra, Bit-level & Logical Operations in C |
|
PS1 |
September 17 |
Boolean logic continued, Integer & Floating Point Numbers | Slides on data representation |
|
September 19 |
Computer Arithmetic: Addition
& Subtraction in C |
|
Slides on logic |
September 24 |
Computer Arithmetic continued, various C operations |
Slides on floating
point Notes on floating point Example code PA0 and PS1 due (11:59pm via gsubmit) |
|
September 26 |
Instructions: Intel
Instruction Set Architecture (ISA) |
Ch. 3 |
PA1 writeup and tarball |
October 1 |
Instructions continued: arithmetic, data transfer,
addressing modes, etc |
Slides on x86 ISA basics |
|
October 3 |
Review for Exam 1 |
Practice exam guide PS1 solution |
|
October 8 |
Exam 1 |
PA1 due (gsubmit 11:59pm) |
|
October 10 |
Control Flow & Data Structures:
control instructions |
Ch. 3 | PS2 |
October 15 |
No Class |
Monday Schedule | |
October 17 |
Procedures |
|
Slides on control flow
instructions; Slides on assembly representation of procedures |
October 22 |
Arrays |
PA2 early release |
|
October 24 |
Data Structures continued |
PS2 Due |
|
October 29 |
Assembly versus Machine Language |
PS2 solution |
|
October 31 |
Program Translation |
Slides on assembly representation of data structures
(multi-dimensional arrays, structs, etc) |
|
November 5 |
Review for Exam 2 |
Slides on miscellaneous
assembly instruction topics Sample exam Assembly handout for exam |
|
November 7 |
Exam 2 |
||
November 12 |
Program Optimization, Linking &
Loading: Linking & Loading |
Ch. 5 & 7 |
PA2 due Notes on optimization |
November 14 |
Program Optimization Programming Assignment discussion (dynamic memory allocation) |
PA3 |
|
November 19 |
Memory: Memory Hierarchy, Locality | Ch. 6 |
Notes on dynamic
memory allocation |
November 21 |
Caches: Direct Mapped and Performance, Multi-level Caches | Notes on memory |
|
November 26 |
Operating Systems, Virtual Memory: Pages and Page Tables | PS3 |
|
November 28 |
No Class | Ch. 8 & 9 |
Thanksgiving |
December 3 |
Exceptions |
Notes on virtual memory |
|
December 5 |
Input/Output: Memory-mapped
vs Port-based I/O, Direct Memory Access (DMA), Interrupts,
... |
Ch. 6 |
Notes on I/O |
December 10 |
Wrapup/Review |
Solution to PS3 Last Day of Classes PA3 due (11:59 pm via gsubmit) Practice final exam information |