Computer Organisation and Architecture

ICT1003

This is a foundation module whose main focus is on the characteristics and development of relatively high level ‘building’ blocks of a computer system. The highest level learning objective is to make clear how a computer program written in text is actually ‘executed’ by a computer, regardless of it being a mainframe, desktop or embedded system. A myriad of basic lower-level topics include explaining how a central processor operates, the characteristics of different memory subsystems, data representations and measurements of system performance will be covered. To ensure in-depth coverage of the topics, students will be exposed to assembly language programming and may be given the opportunity to experiment with a micro-controller based system during the course of the module. This module will also introduce some higher-level languages (such as C) that serve as a precursor for the "Embedded Systems Programming" module.