DATE TOPIC(S)/READING DUE TODAY
     
Aug 26 Course introduction
Von Neumann architecture
Control unit/fetch-decode-execute(Instruction) cycle
x86 processor architecture
READ: (1) AoA 1.6−1.8, (2) Von Neumann architecture , (3) Control unit, (4) Instruction cycle, (5) x86
Book Learning Challenge #1
Aug 28 Instruction sets and instruction formats
High Level Assembly (HLA)
Common instructions, data storage, Input/Output (I/O)
READ: (1) AoA 1.1−1.3
Programming Challenge #1
Sep 2 LABOR DAY
Sep 4 HLA control structures
HLA data types
HLA stdin.getX routines
READ: (1) AoA 1.9−1.10
Programming Challenge #2
Sep 9 Data representation: decimal
Data representation: binary
Data representation: hexadecimal
READ: (1) AoA 2.1−2.2
Book Learning Challenge #2
Sep 11 Data representation (continued)
Register overlay
READ: (1) AoA 1.6−1.7,1.10,2.1−2.3
Programming Challenge #3
Sep 16 Data type vs. data storage
Register overlay
READ: (1) AoA 1.6−1.7,1.10,2.1−2.3
Book Learning Challenge #3
Sep 18 Exceptions/interrupts and robust user input handling
Subroutines/HLA procedures
READ: (1) AoA 1.10-1.11, 5.1
Programming Challenge #4
Sep 23 x86 arithmetic instructions: add, sub, mul
READ: (1) AoA 1.6, 1.8, 6.1
Book Learning Challenge #4
Sep 25 x86 arithmetic expressions
READ: (1) AoA 6.2
Programming Challenge #5
Sep 30 x86 arithmetic instructions: div and mod
READ: (1) AoA Chapter 6.1
Midterm #1 (start of class)
Book Learning Challenge #5
Oct 2 x86 arithmetic expressions: div and mod
READ: (1) AoA 6.2
Programming Challenge #6
Oct 7 x86 stack
READ: (1) AoA 3.8, 3.9
Book Learning Challenge #6
Oct 9 push and pop
READ: (1) AoA 3.8
Programming Challenge #7
Oct 14 OPEN LAB DAY
Oct 16 Bitwise logic
Bitwise logic instructions: and, or, xor, not
READ: (1) AoA 2.6
Programming Challenge #8
Oct 18 Programming Project #1
Oct 21 Binary addition
READ: (1) AoA 2.1
Book Learning Challenge #7
Oct 23 Binary addition
shl, shr, ror, rol
READ: (1) AoA 2.10
Programming Challenge #9
Oct 28 Two's complement
Binary addition
READ: (1) AoA 2.1
Midterm #2 (start of class)
Book Learning Challenge #8
Oct 30 Low-Level Control: decisions
READ: (1) AoA 6.1.3, 7.1−7.7
Programming Challenge #10
Nov 4 x86 addressing modes: direct and indirect addressing
READ: (1) AoA 3.1
Book Learning Challenge #9
Nov 6 x86 addressing modes: direct and indirect addressing
READ: (1) AoA 3.1,3.13
Programming Challenge #11
Nov 11 VETERAN'S DAY
Nov 13 OPEN LAB DAY
Nov 18 Arrays in HLA
x86 addressing modes: indexed addressing
READ: (1) AoA 3.1,4.18
Book Learning Challenge #10
Nov 20 Arrays in HLA
x86 addressing modes: indexed addressing
READ: (1) AoA 3.1,4.18
Programming Challenge #12
Nov 25 x86 addressing modes: scaled indexed addressing
READ: (1) AoA 3.1
Book Learning Challenge #11
Nov 27 x86 addressing modes: scaled indexed addressing
READ: (1) AoA 3.1
Programming Challenge #13
Dec 2 Dynamic memory management and HLA pointers
READ: (1) AoA 3.11,4.5
Book Learning Challenge #12
Dec 4 mem.alloc, mem.free, HLA pointers
READ: (1) AoA 3.11,4.5
Midterm #3 (start of class)
Programming Challenge #14
Dec 9 Low-Level Control: loops
READ: (1) AoA 6.1.3, 7.1−7.7
Book Learning Challenge #13
Dec 11 Low-level decisions, loops, cmp, unconditional and conditional jumps
READ: (1) AoA 7.1−7.7
Programming Challenge #15
Dec 13 Programming Project #2
Wednesday, December 18, 8:00 - 10:00 am, MC 146 Final challenge