The basics of computer organization, architecture and assembly language. Instructions sets, address modes, and the run/time stack are explored by programming on a RISC machine. CPU and ALU design, performance analysis, pipelining, cache, virtual memory is examined. Trade-offs between RISC, CISC and advanced architectures is discussed. Assumes basic knowledge of digital logic.