Nand2Tetris

This course gradually builds a computer, using a custom architecture called Hack, which can run a functioning version of Tetris from first principles starting with NAND gates. The general flow is

  1. Create all logic gates out of NAND.
  2. Build an ALU (major part of CPU).
  3. Build registers and memory.
  4. Write some Hack programs in machine code.
  5. Use all previous chips to build an implementation of the Hack architecture.
  6. Create an assembler for Hack.