This paper provides an overview of the operation of computer systems, including their hardware and software. The central theme of the paper is the way in which the hardware and software of a computer system co-operate to allow the execution of programs written in a high-level language.
Topics covered include:
- data representation
- assembly language programming
- operating systems
Students who pass this paper will be able to explain the low-level operation of a typical computer, and how high-level languages can be implemented on such computers with the aid of system software.
COMP104 Introduction to Computer Science 2 or
COMP134 Software Engineering 1 or
COMP103 Introduction to Computer Science 1 and ENEL111 Introduction to Electronics
COMP200 Moodle Page
Official Timetable Information
Two informal drop-in tutorials per week, held in various rooms around campus. The places and times for the tutorials are available by clicking here.
The course notes and handouts will be available on-line from the
course web-site. It should be noted that the material is NOT a
substitute for attending lectures.
The recommended textbook is:
Englander, I., "The Architecture of Computer Hardware and Systems
Software: An Information Technology Approach", 4th edition,
John Wiley and Sons, 2009
Students have access to Lab 1 (R.G.06). For most of the exercises
you will be using the Linux machines around the outside of the room,
which have REX boards, attached to them. The software that you will be
using includes emacs, a terminal program to communicate with the REX
boards and a C compiler and assembler, which output code for the WRAMP
(Waikato RISC Architecture MicroProcessor) architecture. The WRAMP
architecture and Instruction set have been designed at the University
of Waikato to support the teaching of Computer Systems. Because most
of the exercises depend on the REX boards it will not be possible to
complete them on machine at home.
Internal assessment/final examination ratio 1:1
An overall mark of 50% is required for a pass, with a minimum of 40% in the final exam. To be allowed to sit the final exam you must have submitted all the exercises and taken the internal test.
The weightings for the various pieces of assessment are as follows:
|Lab 1-4: (6% each) || 24%|
|Lab 5: (8% x 2)|| 16%|
|Internal test: || 10%|
|Exam: || 50% |
Class attendance is expected. The course notes provided are not comprehensive, additional material will be covered in class. You are responsible for all material covered in class.
In addition to the lecture timetable, the course consists of four labs, an assignment, and a written test. Verification of the labs are due on the Monday of weeks 3, 5, 8, and 10. Verification of the assignment is due in study week. Two informal hour long tutorials will be held each week, starting in week 2. You should attend
these tutorial sessions if you are having problems with the
material contained in the course or with any exercises. If the tutors
are unable to solve your problems then you should see the
course lecturer. Only limited help with debugging code will be
available during these times. Specific programming problems should be
directed to the tutor coordinator at the email address firstname.lastname@example.org.
If you have problems or questions about the paper, you should start by contacting the Tutor Co-ordinator through
Follow this link for Academic Integrity information and this link for detailed explanation of How to prevent plagiarism in Computer Science assessment items.
Follow this link for information on Performance Impairment.
Student Concerns and Complaints
Follow this link for Student Concerns and Complaints information.
Application for Extension
Follow this link for information on applying for an Extension.
Review of Grade
Follow this link for information on applying for a Review of Grade.
Your attention is drawn to the following regulations and policies, which are published in the University Calendar: