Skip to content Skip to navigation

Computer Architecture


This course covers the fundamental issues in the design of modern computer systems, including the design and implementation of key hardware components such as the processor, memory, and I/O devices, and the software/hardware interface.

01:198:112 or 14:332:351. Credit not given for this course and 14:332:331.
- A grade below a "C" in a prerequisite course will not satisfy that prerequisite requirement.
Fall, Spring, and Summer
C programming
Data representation and computer arithmetic
Assembly language programming
Boolean algebra
Basic digital logic design
Processor design
Cache design
Main memory design
Expected Work: 

3-4 programming assignments, homework assignments, and class participation.

1-2 midterm exams and a final exam.
Learning Goals: 
Computer Science majors ...
  • will be prepared to contribute to a rapidly changing field by acquiring a thorough grounding in the core principles and foundations of computer science (e.g., techniques of program design, creation, and testing; key aspects of computer hardware; algorithmic principles).
  • will acquire a deeper understanding on (elective) topics of more specialized interest, and be able to critically review, assess, and communicate current developments in the field.
  • will be prepared for the next step in their careers, for example, by having done a research project (for those headed to graduate school), a programming project (for those going into the software industry), or some sort of business plan (for those going into startups).