CS 2810: Computer Organization and Architecture
Spring 2024 | Topics |
Jan 8–12 | binary, 2s complement, binary logic (ch1), linux, cli, ssh |
Jan 15–19 (MLK Day) | ch6: instructions, operands, memory, constants, logical/shift, mul/div, branch & jumps, conditionals & loops |
Jan 22–26 | gdb basics, floats intro, ch6: arrays, function calls, stack |
Jan 29–Feb 2 | gdb memory, endianness, float conversions both ways |
Feb 5–9 | functions, stack frames, memory map |
Feb 12–16 | more debugger: ch7: microarchitecture, single-cycle processor |
Feb 19–23 (President’s Day) | ch7: multi-cycle processor, pipelining |
Feb 26–Mar 1 | ch7: advanced microarchitecture |
Mar 4–8 | |
Mar 11–15 (Spring Break) | - |
Mar 18–22 | appx C: C overview, compilation |
Mar 25–29 | appx C: variables, operators |
Apr 1–5 | appx C: function calls, control flow |
Apr 8–12 | appx C: pointers, arrays, characters, strings, structs, typedef |
Apr 15–19 | appx C: dynamic memory allocation, linked lists, standard library |
Apr 22–26 (Thursday last day) | 8-bit computers |
Changes to the schedule will be announced in class.
Resources
- Syllabus
- Examples from class
- Adventure by Warren Robinett
Getting started with Linux, CodeGrinder, GDB
- Installing Linux on Windows
- Installing Linux on Mac OS
- Setting up Linux for CodeGrinder assignments
- Intro to gdb for assembly language
- Command-line tutorial
- The missing semester of your CS education
Assembly, C, and architecture resources
Number conversions
- Binary and hexadecimal number systems (Khan Academy)
- Two’s complement review (11:44)
- Float review (13:47)
- Converting numbers to floats (10:23)
- Python script to convert 9-bit floats into decimal fractions
Midterm exam practice
Last Updated 02/05/2024