COMP 2003: Computer Architecture

This course is required for all computer science  MAJ   majors.

This course addresses the how and why of computer organization. Anyone who is interested in an understanding of how computers are constructed should take this course.

Lab In addition to classes, this course has one structured laboratory session per week.
Registration for this course is restricted to CS Majors and Minors only.


Prerequisites:  COMP 1001COMP 1002 or Mathematics 2320, and  COMP 1003

Availability: This course is usually offered in Fall and Winter semesters.

Objectives of the Course

The objective of this course is to explore the architecture of computers and how computers are constructed. The course will examine the classical components of a computer system, such as control, data path, memory, input and output. The course will also examine the common levels of abstraction used to reason about computer organization and architecture. These include: instruction set architectures, hardware components, register transfer level and logic design.

Representative Workload
  • Assignments 30%
  • In-class Exam 20%
  • Final Exam 50%
Representative Course Outline
  • Computer components (CPU, ALU, buses, memory, I/O devices) (5 hours)
  • Integer arithmetic, bitwise operations (3 hours)
  • State machines (4 hours)
  • Instruction set architecture (5 hours)
  • Boolean algebra and logic design (2 hours)
  • Register transfer level (3 hours)
  • Memory management (3 hours)
  • Interruption and IO (1 hour)
  • Multiprocessing and alternative architectures (2 hours)
  • Credit cannot be obtained for both Computer Science 2003 and the former Computer Science 3724.