Principles of Computer Architecture
An interactive explanation of a computer's architecture and microarchitecture, using HTML image maps to delve deeper on each click. This site starts explaining from the compiler's and programmer's point of view and on each step brings you closer to the Arithmetic Logic Unit, the register file and the hardware wires.