Giter VIP home page Giter VIP logo

nand2tetris's Introduction

Nand2Tetris

"Welcome to Nand to Tetris part two. Nand to Tetris is the name of a computer science educational adventure, in which we build a complete, modern, general-purpose computer system, hardware and software, from the ground up. Because this is quite a substantial journey of discovery, we decided to split it into two separate and stand-alone courses. In the first course, which in Coursera is simply called Nand to Tetris, we start with the most elementary and sort of primitive logic gate conceivable called Nand, and using a series of 600 construction projects, we build a computer platform which we call Hack. And then in the second course, in Nand to Tetris part two in this course, we start with the Hack platform as a point of departure and then we build on top of it a virtual machine, a compiler, an operating system and all the systems which are necessary so that we'll be able to write high level object-based programs on this barebone hardware. That's what we do in the second part of the Nand to Tetris journey." -Shimon Schocken

Learning Outcomes Part One

In this project-centered course* you will build a modern computer system, from the ground up. We’ll divide this fascinating journey into six hands-on projects that will take you from constructing elementary logic gates all the way through creating a fully functioning general purpose computer. In the process, you will learn - in the most direct and constructive way - how computers work, and how they are designed.

Logic Gate

Computer Architecture

Assembly Languages

Hardware Description Language (HDL)

Learning Outcomes Part Two

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.

Compiler Construction

Operating System

nand2tetris's People

Contributors

isaiahpaget avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.