Introduction to Computing Systems
Occurrence | Teaching period |
---|---|
A | Spring Term 2022-23 to Summer Term 2022-23 |
Students taking this module will gain foundations in the key architectural components of a computer system, how a high level program is executed upon that system, and how a computer system is constructed in hardware.
Students will be introduced to how a computer system is constructed, and how a program implemented in a high level programming language (for example C) executes on that system. Students will be introduced to the basics of computer architecture, operating systems and program language construction, providing a basis for further study in later years. Students will be introduced to a bottom-up approach, motivated by real examples, taught as both lectures and laboratory practicals.Students will be able to describe and apply their programming skills on real devices and computer systems that are used in many real applications today.
SD101 |
Identify the purpose of key computer hardware components such as processors, memories and busses. |
SD102 |
Describe different data types commonly found in binary systems (e.g. signed vs. unsigned integers) |
SD103 |
Apply different operations to binary to convert and transform binary strings, perform arithmetic, and perform logical operations. |
SD104 |
Express logical expressions as basic gates, transistors and combinatoric logic circuits |
SD105 |
Describe the function and limitations of a variety of logical building blocks in the context of processor architectures |
SD106 |
Describe the von Neumann Model paradigm of computer architecture, including the fetch execute cycle of instruction processing. |
SD107 |
Explain how operations executed in a processor can be used to implement to higher level sequential, conditional and iterative programming language constructs |
SD108 |
Explain the use of assemblers, compilers and linkers to create executable code for a processor. |
SD109 |
Build a simple system comprised of a CPU, memory and input/output. |
SD110 |
Use a toolchain (compiling and linking code) to develop software for a simple system built in the module |
SD111 |
Relate the fundamentals of computer architecture to real world systems through exploration of relevant case studies. |
SD112 |
Identify potential security problems associated with architecture design. |
Task | % of module mark | Group |
---|---|---|
Essay/coursework | 100 | A |
Essay/coursework | 100 | B |
None
Task | % of module mark | Group |
---|---|---|
Essay/coursework | 100 | A |
Essay/coursework | 100 | B |
Feedback is provided through work in practical sessions, and after the final assessment as per normal University guidelines.
*** J.Hennessy, D.Patterson Computer Architecture: A Quantitative Approach (2nd Edition) Morgan Kaufmannn 1990
*** W.Stallings Computer Organization and Architecture: Design For Performance (8th Edition) Pearson 2010