Brandon Myers - Architecture and Organization
Brandon Myers (brandon-d-myers@uiowa.edu) is Lecturer in Computer Science at the University of Iowa. These activities were developed for Architecture and Organization, with support from an ACM Special Projects Award.
For full versions, click here.
| Stage | Activity Name |
|---|---|
| 2: Piloted | Bits & Numbers |
| 2: Piloted | Memory Organization of Programs |
| 2: Piloted | Stored Programs |
| 2: Piloted | Procedure Calls |
| 2: Piloted | Combinational Logic |
| 2: Piloted | Adders & Delay |
| 2: Piloted | Adders, Shifters, Multipliers |
| 2: Piloted | Sequential Logic |
| 2: Piloted | Addressable Memory & the Add Instruction |
| 2: Piloted | Engineering Digital Systems |
Clif Kussmaul - Architecture and Organization
These activities were developed by Clif Kussmaul for Architecture and Organization using Computer Systems: A Programmer’s Perspective (3E) by Bryant and O’Hallaron. As such, some of them (e.g. Code Reps) focus on the x86-64 architecture.
For sample versions, click here. For full access, contact Clif Kussmaul.
| Stage | Activity Name | Notes |
|---|---|---|
| 2: Piloted | Intro to C I: Basic Syntax | preprocessor, text I/O |
| 2: Piloted | Intro to C II: Pointers | addresses, pointers, arrays, strings, |
| 2: Piloted | Intro to C III: Structures | malloc, structures |
| - - - - - - - - - - | ||
| 2: Piloted | Data Reps I: Bits | bits & bytes, number systems, C types & operators, text, instructions |
| 2: Piloted | Data Reps II: Integers | signed & unsigned, C types, casting, operations |
| 2: Piloted | Data Reps III: Floats | |
| - - - - - - - - - - | ||
| 2: Piloted | Code Reps I: Architecture | abstraction, hardware, storage hierarchy, etc |
| 2: Piloted | Code Reps II: Steps & Files | preprocess, compile, assemble, link |
| 2: Piloted | Code Reps III: Addressing | registers, direct, indirect, scaled index, etc |
| 2: Piloted | Code Reps IV: Assembly | format, suffixes, moves, arith & logic, etc |
| 2: Piloted | Code Reps V: Control Flow | condition codes, jumps, conditional momves |
| 2: Piloted | Code Reps VI: Control Structures | not (yet) POGIL - shows control structures in C, assembly, and “assembly equivalent C” |
| 2: Piloted | Code Reps VII: Function Calls | calls, activation records, register mgmt |
| 2: Piloted | Code Reps VIII: Machine Code | short activity |
Mark Gondree - Architecture and Organization
These activities were developed by Mark Gondree for Architecture and Organization. They focus on the 32-bit ARM architecture, and are based on activities by Clif Kussmaul.
For full access, click here.
| Stage | Activity Name | Notes |
|---|---|---|
| 2: Piloted | Data Reps I: Bits | bits & bytes, number systems, C types & operators, text, instructions |
| 2: Piloted | Data Reps II: Integers | signed & unsigned, C types, casting, operations |
| 2: Piloted | Combinatorial Logic - Adders | ripple-carry adders |
| - - - - - - - - - - | ||
| 2: Piloted | Code Reps I: Architecture | abstraction, hardware, storage hierarchy, etc |
| 2: Piloted | Code Reps II: Steps & Files (ARM) | preprocess, compile, assemble, link |
| 2: Piloted | Code Reps III: Addressing (ARM) | registers, direct, indirect, scaled index, etc |
| 2: Piloted | Code Reps V: Control Flow (ARM) | condition codes, jumps, conditional momves |
Matt Lang - Architecture and Organization
These activities were developed by Matt Lang for Architecture and Organization.
For full versions, click here. For details, contact Clif Kussmaul.
| Stage | Activity Name |
|---|---|
| 2: Piloted | ORG_02_TWOS: Twos Complement Representations |
| 2: Piloted | ORG_03_BIT: Bitwise Operations |
| 2: Piloted | ORG_04_MOVE: Data Movement |
| 2: Piloted | ORG_05_ARITH: Arithmetic Operations |
| 2: Piloted | ORG_06_LOOP: Loops |
| 2: Piloted | ORG_07A_PROC: Procedures |
| 2: Piloted | ORG_07B_PROC: Procedures |
| 2: Piloted | OS_LO: Loop Optimization |
Piotr Debiec - Digital Systems
These activities were developed by Piotr Debiec at Lodz University of Technology (Poland) and Clif Kussmaul for Digital Systems. For full versions, contact Piotr Debiec via email.
| Stage | Activity Name |
|---|---|
| 2: Piloted | Gates and Truth Tables |
| 2: Piloted | Plexers (Decoder, Mux, DeMux) |
| 2: Piloted | Mux-Based Realizations |
| 2: Piloted | Minterms, Maxterms, and Canonical Forms |
| 2: Piloted | Minimization with Don’t Care States |
| 2: Piloted | Integer Representations |
| 2: Piloted | Adding, Subtracting, and Flags |
| 2: Piloted | Comparators |
Other Activities
Some Architecture and Organization courses might use these CS Principles activities:
Brent Gray - CS Principles
Tammy Pirmann - CS Principles
These activities were developed by Tammy Pirmann for CS Principles.
For sample versions, click here. For full access, contact Clif Kussmaul.
| Stage | Activity Name |
|---|---|
| 3: Refined | Hardware Abstraction 1: What is a Computer? |
| 3: Refined | Hardware Abstraction 2: Logic Gates |
| 3: Refined | Number Systems 1: Decimal and Hex |
| 3: Refined | Number Systems 2: Binary |
