Introduction to computer technology concepts. Algorithms for computer arithmetic. Instruction set architectures. CPU organization, memory reference modes, instruction formats. MIPS (RISC) architecture. Datapath and control unit design. Pipelining. Memory organization, memory hierarchy, Random Access Memory (RAM), associative memory, cache memory, virtual memory. I/O organization, synchronous-asynchronous communication, interrupts, busses, network interfaces. Secondary storage devices.