Introduction to Computer Systems

Module aims

In this module you will have the opportunity to develop a fundamental understanding of the organisation and operation of a computer system. The emphasis of the module is on understanding how high-level language programs are represented and executed at an architectural level.

Learning outcomes

Upon successful completion of this module you will be able to:

  • describe the basic organisation of a computer
  • explain different representations used for instructions, numbers and text
  • show how machine code instructions are executed by a computer
  • compare different implementations of a computer's control unit
  • explain program behaviour by reading the binary representation of machine code
  • translate high-level program fragments into assembler code
  • explain the effect that memory hierarchy has on a program's execution time
  • estimate the performance of a program on a given computer

Module syllabus

  •  Basic organisation of a computer
  • Representations for instructions, numbers and text
  • Translation of high-level programs into instructions
  • Instruction execution
  • Implementation choices of the control unit
  • CISC and RISC Instruction Set Architecture
  • Assembler programming
  • Memory organisation and concepts of spatial and temporal locality
  • Performance estimation and Amdahl’s Law

Teaching methods

The material will be taught through traditional lectures, backed up by unassessed formative exercises and assessed courseworks designed to reinforce the material as it is taught.

The Piazza Q&A web service will be used as an open online discussion forum for the module.

Assessments

There will be two assessed courseworks which together contribute 15% of the mark for the module.
There will be a final written exam, which counts for the remaining 85% of the marks.   

There will be written feedback on the assessed coursework exercises and in-class and/ or email feedback explaining common pitfalls and suggestions for improvement.                

Module leaders

Professor Wayne Luk
Dr Maria Valera-Espina