School of Computing · ANU College of Engineering Computing & Cybernetics
In 2023, this course is on campus with remote adjustments only for participants with unavoidable travel restrictions/visa delays. 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. The course is focussed on the connection between software and hardware; you will create programs in assembly language and link the program running on a CPU to its input/output interactions with the real world. You will learn how high-level programming constructs such as control structures, functions, variables, and data structures are represented at the assembly language level. You will explore topics that form a foundation of computer systems knowledge: CPU architectures, networks, operating systems, and concurrency. This course will challenge your understanding of how computers work, and what happens in our computer when we run a program. At the end of this course, you will be able to navigate between layers of abstraction in a computer system from individual digital circuits to high-level software and understand how low-level structures enable and enhance the abilities of computer systems.
Labs and Quizzes
Learning outcomes 1, 2, 3
Assignments
Learning outcomes 2, 3
Exams and/or Final Project
Learning outcomes 3, 4
12 2-hour lectures and 12 3-hour laboratory sessions
None