Twenty Three Hundred Learn Computer Systems by Hacking Hardware

Welcome to Twenty-Three Hundred, a creative introductory course in computer systems!

This is the course where you learn how your computer actually works: you’ll learn how a CPU is constructed, how the parts of your computer work together, and how the high-level programming languages that you have learned in other courses can be translated into assembly language and CPU instructions.

You’ll learn by writing programs for your very own micro:bit, a tiny computer that fits in your pocket. In the labs and assessments you’ll experiment with your micro:bit to learn about how the CPU in your laptop or desktop computers work, and create expressive programs that interact with the real world through the micro:bits sensors and it’s light and sound outputs.

Twenty-Three Hundred is a course that challenges your assumptions about how computers work, and what happens in our computer when we run a program, and our focus on expressive and creative assessment tasks could make this an exciting turning point in your computer science journey.

Getting started

If you’re new, have a look at the course start checklist.

Course Content

This site contains:

About the course

Here’s a fairly long talk about the course:

Acknowledgements

These learning materials were taught by Charles Martin from 2019–2022 at the Australian National University from materials adapted from Ben Swift, who taught the course in 2017–2018, and Uwe Zimmer who taught it a million times and continues to teach us all a lot! Apologies Uwe for presenting some of your amazing diagrams in a weird format!

Many tutors and staff contributed text and ideas to the learning activities and assessments along the way including Brent Schuetze, Harrison Shoebridge, Benjamin Gray, Ashleigh Johannes, and others I have forgotten to mention. Teaching this course was an incredible journey (and a lot of work) and I thank the students who sent a lot of positive energy and ideas back.