ICS 232

Computer Organization and Architecture

4 Undergraduate credits
Effective August 17, 2014 – Present

Graduation requirements this course fulfills

Introduces machine language, digital logic and circuit design, data representation, conventional von Neumann architecture, instruction sets and formats, addressing, the fetch/execute cycle, memory architectures, I/O architectures, as well as hardware components, such as gates and integrated chips.

Special information

Note: Students are responsible to both be aware of and abide by prerequisites for ICS courses for which they enroll, and will be administratively dropped from a course if they have not met prerequisites.

Learning outcomes


  • Analyze error correction algorithms (such as Hamming code) in the design of computer components.
  • Apply Boolean logic and minimizing techniques to design logic circuits.
  • Apply computer architecture concepts to the design of parts of computer systems.
  • Apply knowledge of memory model, instruction sets, addressing modes, and input/output features to develop assembly language programs.
  • Know computer history, types and generations of computers and their application areas, major categories of instruction sets, and the difference between computer organization and computer architecture.
  • Know multiprocessing and alternative architectures.
  • Understand the von Neumann model and explain the communication pathways in a computer system, including data flow through the CPU (interfacing to I/O, bus control logic, and internal communications).
  • Utilize electronic equipment and components to implement and test logic circuits.