Overview
"From Nand to Tetris" is a deep technical project exploring how modern computers are built — starting from basic NAND logic gates to designing a CPU, assembler, virtual machine, and high-level language compiler.It involved building each layer of computing architecture by hand to fully understand how hardware and software interact at the most fundamental level.
Key Features
- Designed basic logic gates (NAND, AND, OR, XOR, etc.)
- Built a full Arithmetic Logic Unit (ALU)
- Designed 16-bit CPU architecture (control unit, registers, memory)
- Implemented a Virtual Machine (VM translator)
- Built a Compiler from scratch for a high-level language (Jack)
- Ran real programs on the custom hardware emulator
Tech Stack
- Hardware Design Language (HDL)
- Jack Programming Language
- VM Translator (custom Python/C++)
- Assembler (machine code generation)
- Hack CPU Emulator
- Nand2Tetris Course Tools