The organization of computer systems is introduced using assembly language. Topics include basic concepts of computer architecture and organization, memory hierarchy, data types, computer arithmetic, control structures, interrupt handling, instruction sets, performance metrics, and the mechanics of testing and debugging computer systems. Embedded systems and device interfacing are introduced.

This course is included in the Computer Science Field of Study Curriculum.

Upon completion, students will be able to:

  • Explain contemporary computer system organization
  • Describe data representation in digital computers
  • Explain the concepts of memory hierarchy, interrupt processing, and input/output mechanisms
  • Measure the performance of a computer system
  • Design and develop assembly language applications
  • Explain the interfaces between software and hardware components
  • Explain the design of instruction set architectures
  • Develop a single-cycle processor
  • Explain the concept of virtual memory and how it is realized in hardware and software
  • Explain the concepts of operating system virtualization

Grade Basis: L
Credit Hours: 4
Lecture hours: 48.0
Lab hours: 32.0