Assembler for the Hack computer written in Rust.
What is Hack?
Hack is an assembly language included in the online course "Build a Modern Computer from First Principles: From Nand to Tetris" and the book "The Elements of Computing Systems" by Noam Nisan and Shimon Schocken (MIT Press). Hack is also the name of the computer Noam and Shimon designed as the project for the course "From Nand to Tetris".
The Hack assembly language has two types of instructions:
The assembler compiles symbolic Hack code to binary code that the Hack machine understands. This project is structured in four parts:
If you prefer a command line interface, try the original project hack-assembler.
Want to learn more about Hack?
Thanks to Noam Nisan and Shimon Schocken for developing the amazing From Nand to Tetris course and Bodil Stokke for her excellent tutorial on parser combinators in Rust