Part 1 From software to hardware: computation - systems, automata, processes; software engineering - projects, modular systems design, structured programming, standard programming languages; machine language - nature, simple architectures, instruction set complexity. Part 2 From switches to processors: data representation and notation - notation, primitive data types, structured data types; element levels - combinational systems, sequential systems; component level - combinational system design, sequential system design, components; control units - function of the control unit, implementation. Part 3 Computer organization: processor organization - requirements, accumulator machine, stack machine, register window + instruction cache machine, queue + channel machine; system organization - internal communication, memory organization, external communication; survey of contemporary processor architecture - Motorola 68000, National Semiconductor 32000, Inmos transputer.