Skip to main content

Digital Systems:  2025-2026

Lecturer

Degrees

Preliminary ExaminationsComputer Science

Terms

Overview

In this course we will discuss the practical design of machines that can perform calculations: computers. At the end of the course, you will know how to design a CPU from the transistor up, and how to program it without using a compiler (i.e. using assembly). You will develop practical programming skills by programming a microcontroller system, and using its built-in peripherals to affect the world outside the CPU. Along the way, we will consider how requirements of computer users imply the need for an operating system. We will analyse a design of a simple OS, and develop practical skills on how to use it.

The course is run over Hilary Term (16 lectures), which focusses on low-level programming and operating systems, and Trinity Term (8 lectures) which focusses on the design of a CPU that can execute simple ARM instructions.

Taking our courses

This form is not to be used by students studying for a degree in the Department of Computer Science, or for Visiting Students who are registered for Computer Science courses

Other matriculated University of Oxford students who are interested in taking this, or other, courses in the Department of Computer Science, must complete this online form by 17.00 on Friday of 0th week of term in which the course is taught. Late requests, and requests sent by email, will not be considered. All requests must be approved by the relevant Computer Science departmental committee and can only be submitted using this form.