From Nand to Tetris I
Week 1: Introduction
Week 2: Boolean Arithmetic and the ALU
Week 3: Memory
Week 4: Machine Language
Week 5: Computer Architecture
Week 6: Assembler
Official website