Students who undertake this unit should normally have at least 3 A-level passes, (or equivalent) at grades A,B,B or above.
Aims: To introduce students to the structure, basic design, operation and programming of conventional, von Neumann and non-von Neumann computers at the machine level. To explore the correspondence between high level programming language control and data structures and what happens at the machine level.
Learning Outcomes: 1) To demonstrate an understanding of how the forms and conventions of high level languages are related to the machine level;
2) To experience how structured programming can be applied in low as well as high level languages.;
3) To be able to assess the potential advantages and disadvantages of different architectures and how these may affect system software such as operating systems;
4) To demonstrate an understanding the basic functions and possible organizations of operating system software.
Skills: IT (T/F, A), Application of Number (T/F, A).
Content: Principles of digital computer operation: use of registers and the instruction cycle; simple addressing concepts; Integers and floating point numbers. Input and output. Introduction to digital logic. Aspects of modern computer architectures: Von Neumann and Non von Neumann architectures and modern approaches to machine design, including, for example, RISC (vs CISC) architectures. Topics in contemporary machine design, such as pipelining; parallel processing and multiprocessors. The interaction between hardware and software, low-level programming concepts. Prototypical operating systems and the history of operating systems. Operating systems (e.g. Windows, NT, Unix).
| |