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)
Еврейский университет в ИерусалимеОб этом курсе
Будет ли вашей компании выгодно обучить сотрудников востребованным навыкам?
Попробуйте Coursera для бизнесаПриобретаемые навыки
- Computer Architecture
- Compiler Construction
- Compiler
- Operating System
Будет ли вашей компании выгодно обучить сотрудников востребованным навыкам?
Попробуйте Coursera для бизнесаот партнера
Программа курса: что вы изучите
Getting Started
Machine Language
Virtual Machine I: Stack Arithmetic
Virtual Machine II: Program Control
High-Level Language
Compiler I: Syntax Analysis
Рецензии
- 5 stars94,46 %
- 4 stars4,46 %
- 3 stars0,42 %
- 2 stars0,21 %
- 1 star0,42 %
Лучшие отзывы о курсе BUILD A MODERN COMPUTER FROM FIRST PRINCIPLES: NAND TO TETRIS PART II (PROJECT-CENTERED COURSE)
This is by far one of the best online-courses I have completed. Thumbs up, it was well worth my time and it will definitely help me on my never-ending journey of becoming a better software developer.
Amazing course. Learnt a lot, and goes in depth, in a very elegant manner, making concepts seem simple, and at the same time, difficult.
It really deepened my understanding of computers and helped me to be a better programmer. It is more challenging than the first part.
It was a fun course, yet it's super involved! Please be sure to have a solid understanding of computer programming and computer science before you take this course!
Часто задаваемые вопросы
Когда я получу доступ к лекциям и заданиям?
Что я получу, оплатив сертификацию?
Можно ли получить финансовую помощь?
Do I have to take Nand to Tetris Part I before taking Nand to Tetris Part II?
How much computer science do I have to know before taking this course?
Which programming language do I have to use in order to complete the assignments in this course?
How many assignments do I have to submit in order to pass the course?
Остались вопросы? Посетите Центр поддержки учащихся.