This page is a saved copy of the departmental original. The links from it will no longer be valid.
CS1031 serves to introduce both information representation
(binary arithmetic, logical operations and so forth), and computer
The main body of the module is concerned with the fundamental concepts of computer architecture, that is, the internal structure of the computer as seen by the assembly level programmer. It is at this level that hardware and software meet.
We will focus on understanding the MIPS processor, which is a modern "RISC" architecture used in high performance work stations. The intention is to become familiar with the concepts and issues at the assembler/architecture level, rather than to become MIPS programmers. By the end of the course we should be able to contrast the MIPS architecture with some alternative approaches.
In the laboratories you will get some practical experience of MIPS and the topics discussed, by writing short sequences of assembler that you can run on a simulator.
CS1031 is an essential foundation for all further studies in the single honours computer science degree programme.
Goodman J. and Miller K., A Programmer's View of Computer Architecture. (ISBN 0-030-988-160) Saunders College Publishing 1993
* This is the recommended text. It provides a good introduction to the subject and is based around the MIPS processor as used in the course.
Kane G. and Heinrich J. MIPS Risc Architecture, (ISBN 0-135-904-722) Prentice Hall,1992,
* A detailed reference for the MIPS instruction set. Too detailed for use in the course generally though you should be aware that it exists so that you can pursue particular queries about MIPS instructions should you wish to do so.
Patterson, D.A. & Hennessy, J.L. Computer Organization and Design: The Hardware/Software Interface. 2nd Edition (ISBN 1-558-604-91X) Morgan Kaufmann 1998
Data representation & manipulation. 
Binary for instructions, sign & magnitude, 2s complement, characters, real, octal & hex. binary +-*, overflow & carry. logical operations.
Floating point arithmetic 
The IEEE 488 standard.
Computer fundamentals. 
Memory, registers, the ALU and datapath. Performance issues.
The MIPS processor 
The MIPS architecture, its instructions and addressing of memory.
MAL/TAL assembly language. small examples and case studies.
Procedure and the stack 
Support for precedural decomposition. Call and return mechanism, the stack and the passing of parameters.
Interfacing with peripherals and the outside world 
Instruction sets support for devices, polling and interrupts.
Operating System support 
User and supervisor modes, traps - protecting processes from interference.
Architecture & instruction format alternatives 
0/1/2/3-address code, RISC/CISC + relative efficiency
|Contents page||List of course units offered|