Main concepts of computer architecture; hardware components of a computer; instruction set: instruction formats, encoding of instructions, types; Execution unit: registers design, combinational shifters, ALU, division and multiplication algorithms; control unit: register transfer language, hardwired and microprogrammed control unit; memory unit: RAM, cache memory, associative memory, virtual memory; Input/output processors; introduction to multiprocessor systems and parallel processing