Dec 04, 2024  
2024-2025 Catalog 
    
2024-2025 Catalog

CTP 255 - Computer Organization

4 credit hours - Three hours of lecture and two hours of laboratory weekly; one term.
Formerly CSI 255 - Computer Organization

Learn the fundamentals of computer organization and architecture. Learn about basic hardware and software structure, computer arithmetic, assembly language, digital logic, parallelism, input and output processes, memory organization and RISC vs. CISC architectures. Lab fee $40.

Prerequisite(s): CSI 161 or CTP 150  or permission of CTP department chair.

Course Outcomes:
 

  • Understand and use computer instructions.
    • Define and use computer hardware operations and operands
    • Write Assembly language code
    • Use correctly signed and unsigned numbers
    • Describe how instructions are represented
    • Evaluate logical expressions using logical operations and decisions
    • Understand and describe arrays and pointers
    • Discuss parallelism and instruction synchronization
    • Translate instructions
    • Discuss RISC vs.CISC architectures
  • Correctly evaluate expressions using computer arithmetic.
    • Perform the arithmetic operations of addition, subtraction, multiplication and division
    • Perform floating point arithmetic
    • Understand and describe parallelism and associativity
  • Understand, define and describe the computer processor.
    • Define and give examples of digital logic
    • Build a data path
    • Understand and describe pipelining
    • Understand and describe hazards and exceptions
    • Understand and describe processor parallelism
  • Understand and describe memory organization
    • Understand and describe cache memory
    • Understand and describe virtual memory
    • Understand and describe virtual machine
    • Understand and describe parallelism and memory
  • Understand and describe storage and I/O.
    • Understand and describe disk and flash storage
    • Understand and describe the process of connecting processors, memory, and I/O devices
    • Understand and describe the process of interfacing with the operating system
    • Understand and describe parallelism with storage and I/O
  • Understand and describe parallel processing
    • Create parallel processing programs
    • Understand and describe multiprocessors and multithreading