Experiential Learning "Active" learning opportunities

This page collects together all of the “experiences” associated with individual modules.

In this site, experiences represent “active” learning opportunities, as opposed to readings, which represent “passive” learning opportunities. In many courses, readings and experiences together constitute the “assignments”.

Module: Getting Started

Homework Assignment #0

Making sure that you’re set up with the software needed for this course

Module: Integers & Computers

Homework Assignment #1

Bases, additions, conversions between bases, 2’s complement

Module: X86 & NASM

Homework Assignment #2

NASM data segments, assembly program tracing

Module: First NASM Program

Homework Assignment #3

A warmup for assembly programming

Module: Data Size & Arithmetic

Homework Assignment #4

Overflow for signed and unsigned numbers

Module: Control Structures

Homework Assignment #5

Implementing Wordle

Module: Bit Operations

Homework Assignment #6

Using bitwise operations

Module: Subprograms

Homework Assignment #7

Tracing stack use of C programs, reverse-engineering of assembly code

Homework Assignment #8

Implementing functions