Structure and interpretation of computer programs is a better nand2tertis. The issue is that it contains about 10x the information, assumes what an undergrad science student in 1980 would have known, has problems that are entire chapters of nand2tertis and uses scheme.
And it's not until the end of the last chapter that you build a stack machine in about 40 pages from memory.
I can't see how SICP is better than Nand2Tetris. To be clear: none of them are better than the other simply because these are two completely different books, both in their approach style how explain things and their contents. You are basically comparing apples to oranges. If you know nothing about computers Nand2Tetris and Code by Charles Petzold are two books that will make you clearly understand how a computer works in a constructively way. SICP starts with an already running Scheme, so the computer and the language are already there.
I would really recommend Digital Design and Computer Architecture, I’ve got the ARM edition. I believe it covers everything OP mentioned, and I know it covers FSMs. It’s a great read if you want the tools to design your own architectures.
llm_trw|1 year ago
And it's not until the end of the last chapter that you build a stack machine in about 40 pages from memory.
liendolucas|1 year ago
barrenko|1 year ago
codesuki|1 year ago
It teaches the basics and then how to build a MIPS processor.
I know that's only part of what nand 2 tetris aims for. But still good.
superb_dev|1 year ago
jamalaramala|1 year ago
How Transistors Run Code?
https://www.youtube.com/watch?v=HjneAhCy2N4
signa11|1 year ago