ITC222 Computer Organisation (8)

This subject provides a study of the organisation and operation of computers through programming at the assembly language level. It introduces the architecture of microprocessors and relates low-level hardware and software organisation to the structures with which students are familiar from their previous knowledge of programming in a high-level language.

No offerings have been identified for this subject in 2019.

Where differences exist between the Handbook and the SAL, the SAL should be taken as containing the correct subject offering details.

Subject Information

Grading System

HD/FL

Duration

One session

School

School of Computing and Mathematics

Assumed Knowledge
ITC106 or ITC129 or ITC140 or ITC421 or ITC429

Learning Outcomes

Upon successful completion of this subject, students should:
  • be able to describe and analyse the various software and hardware factors that can impact upon the performance of a computer system;
  • be able to discuss the instruction set of a microprocessor and construct small programs in assembly language for that microprocessor;
  • be able to describe the mechanisms by which user programs interact with kernel services and I/O (Input/Output) devices;
  • be able to describe the actions of an optimising compiler and interpret how these influence high-level language coding techniques.

Syllabus

This subject will cover the following topics:
  • The organisation of a computer as a hierarchy of levels, their inter-relations and the low-level view of computer operation.
  • An instruction set, and its design and use.
  • The use of registers and a comparison of memory-memory, register-memory and load-store architectural models.
  • Procedure calls and the data structures used to support them.
  • How a low-level program is constructed.
  • How data structures are implemented at a low level.
  • The assembly process and the characteristics of a program in memory.
  • Compiler optimisation and coding techniques.
  • Number systems and data representation.
  • The basic arithmetic and logical operations used to manipulate data and the algorithms that they use.
  • The interaction of a user program with the operating system and the hardware including programmed I/O, interrupts and direct memory access.
  • Calculating Central Processing Unit (CPU) performance and performance benchmark issues.
  • Performance-related design issues including instruction-set choice, pipelining, branching techniques and memory hierarchy.
  • Complex Instruction Set Computing (CISC) versus Reduced Instruction Set Computing (RISC) issues.

Contact

For further information about courses and subjects outlined in the CSU handbook please contact:

Current students

Future students

The information contained in the CSU Handbook was accurate at the date of publication: May 2019. The University reserves the right to vary the information at any time without notice.

Back