CS 2810: Computer Organization and Architecture
Fall 2024 | Topics |
Aug 19–23 | binary, 2s complement, binary logic (ch1), linux, cli, ssh |
Aug 26–30 | ch6: instructions, operands, memory, constants, logical/shift, mul/div, branch & jumps, conditionals & loops |
Sep 2–6 (Labor Day) | gdb basics, floats intro, ch6: arrays, function calls, stack |
Sep 9–13 | gdb memory, endianness, float conversions both ways |
Sep 16–20 | functions, stack frames, memory map |
Sep 23–27 | more debugger: ch7: microarchitecture, single-cycle processor |
Sep 30–Oct 4 | ch7: multi-cycle processor, pipelining |
Oct 7–11 | ch7: advanced microarchitecture |
Oct 14–18 (Fall Break) | |
Oct 21–25 (Fall Break) | - |
Oct 28–Nov 1 | appx C: C overview, compilation |
Nov 4–8 | appx C: variables, operators |
Nov 11–15 | appx C: function calls, control flow |
Nov 18–22 | appx C: pointers, arrays, characters, strings, structs, typedef |
Nov 25–29 (Thanksgiving) | appx C: dynamic memory allocation, linked lists, standard library |
Dec 2–6 (Thursday last day) | cpu history |
Note: Substantial changes to this schedule are likely and will be announced in class.
Resources
- Syllabus
- Adventure by Warren Robinett
- Examples from class
Getting started with Linux, CodeGrinder, GDB
- Installing Linux on Windows
- Installing RISC-V tools on MacOS
- Setting up CodeGrinder
- 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
Number conversion practice problems
Last Updated 09/16/2024