Module and Programme Catalogue

Search site

Find information on

2022/23 Undergraduate Module Catalogue

COMP1212 Computer Processors

10 creditsClass Size: 500

Module manager: Professor Andy Bulpitt

Taught: Semester 2 (Jan to Jun) View Timetable

Year running 2022/23

This module is not approved as a discovery module

Module summary

Effective programming depends on understanding not only how to communicate instructions to a machine but also how the machine executes those instructions. This module introduces the internal implementation of a computer at a logic gate level, building on formal logic taught in earlier mathematics modules. This module bridges the gap between high level programming constructs, such as 'if' statements and 'for' loops, and how they are actually implemented by the machine and provides an opportunity to illustrate that abstraction is a powerful transferable tool for problem solving which can be applied across other disciplines. In this module students will build a simulated architecture from logic gates and learn how to program it in machine code, assembly and a high level language.


This module provides the full picture view of computer programming and computer implementation which is vital for future developments in compilers and computer architecture. This module will contribute to the student becoming an expert in the field of programming.

Learning outcomes
On successful completion of this module a student will have demonstrated the ability to:

- describe the basic building blocks of a computer in detail and explain how they are composed to construct computing machinery.
- apply appropriate tools to develop, simulate and test logic circuits (CAD).
- explain how high level programming constructs, such as 'if' statements and 'for' loops, are implemented at a machine level and to explain how developments in computer architecture affect computation speed and processor design.


This module covers the following 4 topic areas:

- Hardware implementations : logic gates, logic simplification, combinatorial logic, clocks, sequential logic, memory and architecture.

- Program Instructions : fetch-execute cycle, machine code, assembly instructions, assembler, translating high level programming constructs into machine level instructions.

- Virtual Machines : implementation of virtual machines (such as the Java Virtual Machine or the .Net CLR), the purpose of virtual machines, and the advantages/disadvantages of virtual machines.

- Recent developments : pipelining, caching, multi-core architectures, effects of clock speed, memory hierarchies and coprocessors.

Teaching methods

Delivery typeNumberLength hoursStudent hours
Private study hours53.00
Total Contact hours47.00
Total hours (100hr per 10 credits)100.00

Opportunities for Formative Feedback

Coursework and labs.

Methods of assessment

Assessment typeNotes% of formal assessment
In-course AssessmentAssessment 140.00
In-course AssessmentAssessment 260.00
Total percentage (Assessment Coursework)100.00

Resits will be assessed by coursework.

Reading list

There is no reading list for this module

Last updated: 01/06/2022 16:59:02


Browse Other Catalogues

Errors, omissions, failed links etc should be notified to the Catalogue Team.PROD

© Copyright Leeds 2019