cs-self-learning/体系结构/N2T/index.html

2292 lines
No EOL
57 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="zh" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="CS自学指南">
<meta name="author" content="PKUFlyingPig">
<link rel="canonical" href="https://csdiy.wiki/%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/N2T/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.3.0, mkdocs-material-7.3.6">
<title>Coursera: Nand2Tetris - CS自学指南</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.a57b2b03.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.3f5d1f46.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
<style>:root{--md-text-font-family:"Roboto";--md-code-font-family:"Roboto Mono"}</style>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="light-blue" data-md-color-accent="deep-purple">
<script>function __prefix(e){return new URL("../..",location).pathname+"."+e}function __get(e,t=localStorage){return JSON.parse(t.getItem(__prefix(e)))}</script>
<script>var palette=__get("__palette");if(null!==palette&&"object"==typeof palette.color)for(var key in palette.color)document.body.setAttribute("data-md-color-"+key,palette.color[key])</script>
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#coursera-nand2tetris" class="md-skip">
跳转至
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="CS自学指南" class="md-header__button md-logo" aria-label="CS自学指南" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
CS自学指南
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Coursera: Nand2Tetris
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="light-blue" data-md-color-accent="deep-purple" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 7a5 5 0 0 1 5 5 5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0-7 2.39 3.42C13.65 5.15 12.84 5 12 5c-.84 0-1.65.15-2.39.42L12 2M3.34 7l4.16-.35A7.2 7.2 0 0 0 5.94 8.5c-.44.74-.69 1.5-.83 2.29L3.34 7m.02 10 1.76-3.77a7.131 7.131 0 0 0 2.38 4.14L3.36 17M20.65 7l-1.77 3.79a7.023 7.023 0 0 0-2.38-4.15l4.15.36m-.01 10-4.14.36c.59-.51 1.12-1.14 1.54-1.86.42-.73.69-1.5.83-2.29L20.64 17M12 22l-2.41-3.44c.74.27 1.55.44 2.41.44.82 0 1.63-.17 2.37-.44L12 22z"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="cyan" data-md-color-accent="deep-purple" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_2">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.75 4.09-2.53 1.94.91 3.06-2.63-1.81-2.63 1.81.91-3.06-2.53-1.94L12.44 4l1.06-3 1.06 3 3.19.09m3.5 6.91-1.64 1.25.59 1.98-1.7-1.17-1.7 1.17.59-1.98L15.75 11l2.06-.05L18.5 9l.69 1.95 2.06.05m-2.28 4.95c.83-.08 1.72 1.1 1.19 1.85-.32.45-.66.87-1.08 1.27C15.17 23 8.84 23 4.94 19.07c-3.91-3.9-3.91-10.24 0-14.14.4-.4.82-.76 1.27-1.08.75-.53 1.93.36 1.85 1.19-.27 2.86.69 5.83 2.89 8.02a9.96 9.96 0 0 0 8.02 2.89m-1.64 2.02a12.08 12.08 0 0 1-7.8-3.47c-2.17-2.19-3.33-5-3.49-7.82-2.81 3.14-2.7 7.96.31 10.98 3.02 3.01 7.84 3.12 10.98.31z"/></svg>
</label>
</form>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="搜索" placeholder="搜索" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<a href="javascript:void(0)" class="md-search__icon md-icon" aria-label="Share" data-clipboard data-clipboard-text="" data-md-component="search-share" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7 0-.24-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91 1.61 0 2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08z"/></svg>
</a>
<button type="reset" class="md-search__icon md-icon" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
</button>
</nav>
<div class="md-search__suggest" data-md-component="search-suggest"></div>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
正在初始化搜索引擎
</div>
<ol class="md-search-result__list"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://github.com/pkuflyingpig/cs-self-learning/" title="前往仓库" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
cs-self-learning
</div>
</a>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="CS自学指南" class="md-nav__button md-logo" aria-label="CS自学指南" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
</a>
CS自学指南
</label>
<div class="md-nav__source">
<a href="https://github.com/pkuflyingpig/cs-self-learning/" title="前往仓库" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
cs-self-learning
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
前言
</a>
</li>
<li class="md-nav__item">
<a href="../../CS%E5%AD%A6%E4%B9%A0%E8%A7%84%E5%88%92/" class="md-nav__link">
一个仅供参考的CS学习规划
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_3" type="checkbox" id="__nav_3" >
<label class="md-nav__link" for="__nav_3">
必学工具
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="必学工具" data-md-level="1">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
必学工具
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/%E7%BF%BB%E5%A2%99/" class="md-nav__link">
翻墙
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Vim/" class="md-nav__link">
Vim
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Git/" class="md-nav__link">
Git
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/GitHub/" class="md-nav__link">
GitHub
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/GNU_Make/" class="md-nav__link">
GNU Make
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/CMake/" class="md-nav__link">
CMake
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/LaTeX/" class="md-nav__link">
LaTeX
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/Docker/" class="md-nav__link">
Docker
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%BF%85%E5%AD%A6%E5%B7%A5%E5%85%B7/tools/" class="md-nav__link">
实用工具箱
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../%E5%A5%BD%E4%B9%A6%E6%8E%A8%E8%8D%90/" class="md-nav__link">
好书推荐
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_5" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_5">
数学基础
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="数学基础" data-md-level="1">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
数学基础
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/MITmaths/" class="md-nav__link">
MIT18.01/18.02: Calculus
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/MITLA/" class="md-nav__link">
MIT18.06: Linear Algebra
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/information/" class="md-nav__link">
MIT6.050J: Information theory and Entropy
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_6" type="checkbox" id="__nav_6" >
<label class="md-nav__link" for="__nav_6">
数学进阶
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="数学进阶" data-md-level="1">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
数学进阶
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/CS70/" class="md-nav__link">
UCB CS70: discrete Math and probability theory
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/CS126/" class="md-nav__link">
UCB CS126: probability theory
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/6.042J/" class="md-nav__link">
MIT 6.042J: Mathematics for Computer Science
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/numerical/" class="md-nav__link">
MIT18.330: Introduction to numerical analysis
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/convex/" class="md-nav__link">
Standford EE364A: Convex Optimization
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E5%AD%A6%E8%BF%9B%E9%98%B6/The_Information_Theory_Pattern_Recognition_and_Neural_Networks/" class="md-nav__link">
The Information Theory, Patter Recognition, and Neural Networks
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_7" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7">
编程入门
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="编程入门" data-md-level="1">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
编程入门
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/MIT-Missing-Semester/" class="md-nav__link">
MIT-Missing-Semester
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS50/" class="md-nav__link">
Harvard CS50: This is CS50x
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS61A/" class="md-nav__link">
UCB CS61A: Structure and Interpretation of Computer Programs
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/Duke-Coursera-Intro-C/" class="md-nav__link">
Duke University: Introductory C Programming Specialization
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS106B_CS106X/" class="md-nav__link">
Stanford CS106B/X
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS106L/" class="md-nav__link">
Stanford CS106L: Standard C++ Programming
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E7%A8%8B%E5%85%A5%E9%97%A8/CS110L/" class="md-nav__link">
Stanford CS110L: Safety in Systems Programming
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_8" type="checkbox" id="__nav_8" >
<label class="md-nav__link" for="__nav_8">
电子基础
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="电子基础" data-md-level="1">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
电子基础
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/EE16/" class="md-nav__link">
EE16A&B: Designing Information Devices and Systems I&II
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/signal/" class="md-nav__link">
UCB EE120 : Signal and Systems
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%94%B5%E5%AD%90%E5%9F%BA%E7%A1%80/Signals_and_Systems_AVO/" class="md-nav__link">
MIT 6.007 Signals and Systems
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_9" type="checkbox" id="__nav_9" >
<label class="md-nav__link" for="__nav_9">
数据结构与算法
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="数据结构与算法" data-md-level="1">
<label class="md-nav__title" for="__nav_9">
<span class="md-nav__icon md-icon"></span>
数据结构与算法
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/CS61B/" class="md-nav__link">
UCB CS61B: Data Structures and Algorithms
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/Algo/" class="md-nav__link">
Coursera: Algorithms I & II
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%B8%8E%E7%AE%97%E6%B3%95/CS170/" class="md-nav__link">
UCB CS170: Efficient Algorithms and Intractable Problems
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_10" type="checkbox" id="__nav_10" >
<label class="md-nav__link" for="__nav_10">
软件工程
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="软件工程" data-md-level="1">
<label class="md-nav__title" for="__nav_10">
<span class="md-nav__icon md-icon"></span>
软件工程
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/6031/" class="md-nav__link">
MIT 6.031: Software Construction
</a>
</li>
<li class="md-nav__item">
<a href="../../%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/CS169/" class="md-nav__link">
UCB CS169: software engineering
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_11" type="checkbox" id="__nav_11" checked>
<label class="md-nav__link" for="__nav_11">
体系结构
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="体系结构" data-md-level="1">
<label class="md-nav__title" for="__nav_11">
<span class="md-nav__icon md-icon"></span>
体系结构
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
Coursera: Nand2Tetris
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
Coursera: Nand2Tetris
</a>
<nav class="md-nav md-nav--secondary" aria-label="目录">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
目录
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#_1" class="md-nav__link">
课程简介
</a>
</li>
<li class="md-nav__item">
<a href="#_2" class="md-nav__link">
课程资源
</a>
</li>
<li class="md-nav__item">
<a href="#_3" class="md-nav__link">
资源汇总
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../DDCA/" class="md-nav__link">
Digital Design and Computer Architecture
</a>
</li>
<li class="md-nav__item">
<a href="../CS61C/" class="md-nav__link">
UCB CS61C: Great Ideas in Computer Architecture
</a>
</li>
<li class="md-nav__item">
<a href="../CSAPP/" class="md-nav__link">
CMU 15-213: CSAPP
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_12" type="checkbox" id="__nav_12" >
<label class="md-nav__link" for="__nav_12">
操作系统
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="操作系统" data-md-level="1">
<label class="md-nav__title" for="__nav_12">
<span class="md-nav__icon md-icon"></span>
操作系统
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/MIT6.S081/" class="md-nav__link">
MIT 6.S081: Operating System Engineering
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/CS162/" class="md-nav__link">
UCB CS162: Operating System
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/NJUOS/" class="md-nav__link">
NJU OS: Operating System Design and Implementation
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_13" type="checkbox" id="__nav_13" >
<label class="md-nav__link" for="__nav_13">
并行与分布式系统
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="并行与分布式系统" data-md-level="1">
<label class="md-nav__title" for="__nav_13">
<span class="md-nav__icon md-icon"></span>
并行与分布式系统
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E5%B9%B6%E8%A1%8C%E4%B8%8E%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/CS149/" class="md-nav__link">
CMU 15-418/Stanford CS149: Parallel Computing
</a>
</li>
<li class="md-nav__item">
<a href="../../%E5%B9%B6%E8%A1%8C%E4%B8%8E%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F/MIT6.824/" class="md-nav__link">
MIT 6.824: Distributed System
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_14" type="checkbox" id="__nav_14" >
<label class="md-nav__link" for="__nav_14">
计算机系统安全
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="计算机系统安全" data-md-level="1">
<label class="md-nav__title" for="__nav_14">
<span class="md-nav__icon md-icon"></span>
计算机系统安全
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/CS161/" class="md-nav__link">
UCB CS161: Computer Security
</a>
</li>
<li class="md-nav__item">
<a href="../../%E7%B3%BB%E7%BB%9F%E5%AE%89%E5%85%A8/MIT6.858/" class="md-nav__link">
MIT 6.858: Computer System Security
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_15" type="checkbox" id="__nav_15" >
<label class="md-nav__link" for="__nav_15">
计算机网络
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="计算机网络" data-md-level="1">
<label class="md-nav__title" for="__nav_15">
<span class="md-nav__icon md-icon"></span>
计算机网络
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/topdown/" class="md-nav__link">
Computer Networking: A Top-Down Approach
</a>
</li>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C/CS144/" class="md-nav__link">
Stanford CS144: Computer Network
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_16" type="checkbox" id="__nav_16" >
<label class="md-nav__link" for="__nav_16">
数据库系统
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="数据库系统" data-md-level="1">
<label class="md-nav__title" for="__nav_16">
<span class="md-nav__icon md-icon"></span>
数据库系统
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/CS186/" class="md-nav__link">
UCB CS186: Introduction to Database System
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F/15445/" class="md-nav__link">
CMU 15-445: Database Systems
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_17" type="checkbox" id="__nav_17" >
<label class="md-nav__link" for="__nav_17">
编译原理
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="编译原理" data-md-level="1">
<label class="md-nav__title" for="__nav_17">
<span class="md-nav__icon md-icon"></span>
编译原理
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E7%BC%96%E8%AF%91%E5%8E%9F%E7%90%86/CS143/" class="md-nav__link">
Stanford CS143: Compilers
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_18" type="checkbox" id="__nav_18" >
<label class="md-nav__link" for="__nav_18">
计算机图形学
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="计算机图形学" data-md-level="1">
<label class="md-nav__title" for="__nav_18">
<span class="md-nav__icon md-icon"></span>
计算机图形学
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES101/" class="md-nav__link">
GAMES101
</a>
</li>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES202/" class="md-nav__link">
GAMES202
</a>
</li>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/GAMES103/" class="md-nav__link">
GAMES103
</a>
</li>
<li class="md-nav__item">
<a href="../../%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9B%BE%E5%BD%A2%E5%AD%A6/CS148/" class="md-nav__link">
Stanford CS148
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_19" type="checkbox" id="__nav_19" >
<label class="md-nav__link" for="__nav_19">
Web开发
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="Web开发" data-md-level="1">
<label class="md-nav__title" for="__nav_19">
<span class="md-nav__icon md-icon"></span>
Web开发
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../Web%E5%BC%80%E5%8F%91/mitweb/" class="md-nav__link">
MIT web development course
</a>
</li>
<li class="md-nav__item">
<a href="../../Web%E5%BC%80%E5%8F%91/CS142/" class="md-nav__link">
Stanford CS142: Web Applications
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_20" type="checkbox" id="__nav_20" >
<label class="md-nav__link" for="__nav_20">
数据科学
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="数据科学" data-md-level="1">
<label class="md-nav__title" for="__nav_20">
<span class="md-nav__icon md-icon"></span>
数据科学
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%95%B0%E6%8D%AE%E7%A7%91%E5%AD%A6/Data100/" class="md-nav__link">
UCB Data100: Principles and Techniques of Data Science
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_21" type="checkbox" id="__nav_21" >
<label class="md-nav__link" for="__nav_21">
人工智能
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="人工智能" data-md-level="1">
<label class="md-nav__title" for="__nav_21">
<span class="md-nav__icon md-icon"></span>
人工智能
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/CS50/" class="md-nav__link">
Harvard CS50's Introduction to AI with Python
</a>
</li>
<li class="md-nav__item">
<a href="../../%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/CS188/" class="md-nav__link">
UCB CS188: Introduction to Artificial Intelligence
</a>
</li>
<li class="md-nav__item">
<a href="../../%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/CYJ/" class="md-nav__link">
智能计算系统
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_22" type="checkbox" id="__nav_22" >
<label class="md-nav__link" for="__nav_22">
机器学习
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="机器学习" data-md-level="1">
<label class="md-nav__title" for="__nav_22">
<span class="md-nav__icon md-icon"></span>
机器学习
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/ML/" class="md-nav__link">
Coursera: Machine Learning
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/CS229/" class="md-nav__link">
Stanford CS229: Machine Learning
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/CS189/" class="md-nav__link">
UCB CS189: Introduction to Machine Learning
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_23" type="checkbox" id="__nav_23" >
<label class="md-nav__link" for="__nav_23">
深度学习
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="深度学习" data-md-level="1">
<label class="md-nav__title" for="__nav_23">
<span class="md-nav__icon md-icon"></span>
深度学习
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS230/" class="md-nav__link">
Coursera: Deep Learning
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/LHY/" class="md-nav__link">
国立台湾大学:李宏毅机器学习
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS231/" class="md-nav__link">
Stanford CS231n: CNN for Visual Recognition
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS224n/" class="md-nav__link">
Stanford CS224n: Natural Language Processing
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS224w/" class="md-nav__link">
Stanford CS224w: Machine Learning with Graphs
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/CS285/" class="md-nav__link">
UCB CS285: Deep Reinforcement Learning
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle" data-md-toggle="__nav_24" type="checkbox" id="__nav_24" >
<label class="md-nav__link" for="__nav_24">
机器学习进阶
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" aria-label="机器学习进阶" data-md-level="1">
<label class="md-nav__title" for="__nav_24">
<span class="md-nav__icon md-icon"></span>
机器学习进阶
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/roadmap/" class="md-nav__link">
进阶路线图
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/CMU10-708/" class="md-nav__link">
CMU 10-708: Probabilistic Graphical Models
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/STAT8201/" class="md-nav__link">
Columbia STAT 8201: Deep Generative Models
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/STA4273/" class="md-nav__link">
U Toronto STA 4273 Winter 2021: Minimizing Expectations
</a>
</li>
<li class="md-nav__item">
<a href="../../%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E8%BF%9B%E9%98%B6/CS229M/" class="md-nav__link">
Stanford STATS214 / CS229M: Machine Learning Theory
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../%E5%90%8E%E8%AE%B0/" class="md-nav__link">
后记
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="目录">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
目录
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#_1" class="md-nav__link">
课程简介
</a>
</li>
<li class="md-nav__item">
<a href="#_2" class="md-nav__link">
课程资源
</a>
</li>
<li class="md-nav__item">
<a href="#_3" class="md-nav__link">
资源汇总
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<a href="https://github.com/pkuflyingpig/cs-self-learning/edit/master/docs/体系结构/N2T.md" title="编辑此页" class="md-content__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg>
</a>
<h1 id="coursera-nand2tetris">Coursera: Nand2Tetris</h1>
<h2 id="_1">课程简介</h2>
<ul>
<li>所属大学:希伯来大学</li>
<li>先修要求:无</li>
<li>编程语言:任选一个编程语言</li>
<li>课程难度:🌟🌟🌟</li>
<li>预计学时40 小时</li>
</ul>
<p><a href="https://www.coursera.org">Coursera</a> 上被数万人评为满分,在全球四百多所高校、高中被采用,让一个完全没有计算机基础的人从与非门开始造一台计算机,并在上面运行俄罗斯方块小游戏。</p>
<p>听起来就很酷对不对?实现起来更酷!这门课分为硬件和软件两个部分。在硬件部分,你将进入 01 的世界,用与非门构造出逻辑电路,并逐步搭建出一个 CPU 来运行一套课程作者定义的简易汇编代码。在软件部分你将编写一个编译器将作者开发的一个名为Jack的高级语言编译为可以运行在虚拟机上的字节码然后进一步翻译为汇编代码。你还将开发一个简易的 OS让你的计算机支持输入输出图形界面。至此你可以用 Jack 开发一个俄罗斯方块的小游戏,将它编译为汇编代码,运行在你用与非门搭建出的 CPU 上,通过你开发的 OS 进行交互。学完这门课程,你将对整个计算机的体系结构有一个全局且深刻的理解,对于你后续课程的学习有着莫大的帮助。</p>
<p>你也许会担心课程会不会很难,但这门课面向的人群是完全没有计算机基础的人,课程作者的目标是让高中生都能理解。因此,只要你按部就班跟着课程规划走,一个月内学完应该绰绰有余。麻雀虽小但是五脏俱全,这门课很好地提取出了计算机的本质,而不过多地陷于现代计算机为了性能而设计出的众多复杂细节。让学习者能在轻松愉快的学习体验中感受计算机的优雅与神奇。</p>
<h2 id="_2">课程资源</h2>
<ul>
<li>课程网站:<a href="https://www.coursera.org/learn/build-a-computer/home/week/1">Nand2Tetris I</a>, <a href="https://www.coursera.org/learn/nand2tetris2/home/welcome">Nand2Tetris II</a></li>
<li>课程视频:详见课程网站</li>
<li>课程教材:<a href="book">计算机系统要素:从零开始构建现代计算机</a></li>
<li>课程作业10 个 Project 带你造台计算机,具体要求详见课程网站</li>
</ul>
<h2 id="_3">资源汇总</h2>
<p>我在学习这门课中用到的所有资源和作业实现都汇总在 <a href="https://github.com/PKUFlyingPig/NandToTetris">PKUFlyingPig/NandToTetris - GitHub</a> 中。</p>
<script src="https://giscus.app/client.js"
data-repo="PKUFlyingPig/cs-self-learning"
data-repo-id="R_kgDOGP67ng"
data-category="Announcements"
data-category-id="DIC_kwDOGP67ns4COM9Q"
data-mapping="title"
data-reactions-enabled="1"
data-emit-metadata="0"
data-input-position="top"
data-theme="light"
data-lang="zh-CN"
data-loading="lazy"
crossorigin="anonymous"
async>
</script>
</article>
</div>
</div>
<a href="#" class="md-top md-icon" data-md-component="top" data-md-state="hidden">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12z"/></svg>
Back to top
</a>
</main>
<footer class="md-footer">
<nav class="md-footer__inner md-grid" aria-label="Footer">
<a href="../../%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/CS169/" class="md-footer__link md-footer__link--prev" aria-label="上一页: UCB CS169: software engineering" rel="prev">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
</div>
<div class="md-footer__title">
<div class="md-ellipsis">
<span class="md-footer__direction">
上一页
</span>
UCB CS169: software engineering
</div>
</div>
</a>
<a href="../DDCA/" class="md-footer__link md-footer__link--next" aria-label="下一页: Digital Design and Computer Architecture" rel="next">
<div class="md-footer__title">
<div class="md-ellipsis">
<span class="md-footer__direction">
下一页
</span>
Digital Design and Computer Architecture
</div>
</div>
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
</div>
</a>
</nav>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-footer-copyright">
<div class="md-footer-copyright__highlight">
Copyright &copy; 2021-present <a href="https://github.com/PKUFlyingPig" target="_blank" rel="noopener noreferrer">PKUFlyingPig</a>
</div>
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
<div class="md-footer-social">
<a href="https://github.com/pkuflyingpig/cs-self-learning/" target="_blank" rel="noopener" title="github.com" class="md-footer-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": "../..", "features": ["header.autohide", "navigation.tracking", "navigation.top", "search.highlight", "search.share", "search.suggest", "content.code.annotate"], "search": "../../assets/javascripts/workers/search.fcfe8b6d.min.js", "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.config.lang": "ja", "search.config.pipeline": "trimmer, stemmer", "search.config.separator": "[\\uff0c\\u3002]+", "search.placeholder": "\u641c\u7d22", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "Missing", "select.version.title": "Select version"}, "version": null}</script>
<script src="../../assets/javascripts/bundle.b1047164.min.js"></script>
</body>
</html>