In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform. In particular, you will implement a virtual machine and a compiler for a simple, Java-like programming language, and you will develop a basic operating system that closes gaps between the high-level language and the underlying hardware platform. In the process, you will gain a deep, hands-on understanding of numerous topics in applied computer science, e.g. stack processing, parsing, code generation, and classical algorithms and data structures for memory management, vector graphics, input-output handling, and various other topics that lie at the very core of every modern computer system.

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)
Ends in 5 days! Save 40% on your access to 10,000+ programs and make a real impact in your career. Save now.

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course)
Instructor: Shimon Schocken
Top Instructor
73,223 already enrolled
Included with Learn more
535 reviews
Skills you'll gain
Tools you'll learn
Details to know

Add to your LinkedIn profile
See how employees at top companies are mastering in-demand skills

There are 9 modules in this course
Instructor
Offered by
Why people choose Coursera for their career

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
Learner reviews
- 5 stars
94.57%
- 4 stars
4.48%
- 3 stars
0.37%
- 2 stars
0.18%
- 1 star
0.37%
Showing 3 of 535
Reviewed on Mar 5, 2023
Takes time to complete. This is a gem of a course!Highly recommended if you have a CS background but haven't taken a similar computer architecture course in college.
Reviewed on Oct 3, 2024
A great course. It is not easy, assignments are hard and take time. But in the end -- learn so much. Thank you, professors Schoken and Nisan!
Reviewed on Apr 7, 2022
Great course in every way. I can't imagine how much efforts Noam, Shimon and their team have taken. Everyone who's trying to understand computer in a more comprehensive way should take this course.




