An overview of basic computer organization and design. Introduction to C programming. Topics covered include data representation, boolean algebra, machine language, instruction sets, processor architecture, multi-processors, system-level I/O, pipelining, and the memory hierarchy. Includes lab.