Nand2Tetris翻译站点

1天前发布 10 0 0

用十二个项目从逻辑门搭到操作系统,理解计算机硬件与软件如何协同工作的免费课程。

语言:
英文
收录时间:
2026-09-16

Nand2Tetris 把一台计算机拆成十二个可以亲手完成的项目。学习者从 NAND 逻辑门出发,逐步做出算术逻辑单元、CPU、汇编器、虚拟机、编译器和一个小型操作系统,最后让自己写的程序在这套计算机上运行。

这套课程适合学过一点编程,想弄清计算机底层工作方式的大学生、自学者和计算机教师。前六个项目偏硬件,后六个项目转向软件。官方材料和工具主要使用英文,学习者需要能读懂短篇技术说明与代码注释。

核心信息

资源类型计算机系统课程与项目制学习工具
适合阶段大学生、计算机专业入门者、教师与具备基础编程能力的自学者
学习内容数字逻辑计算机组成、汇编、虚拟机、编译器与操作系统
项目数量十二个,前六个构建硬件,后六个构建软件
使用方式官网读取项目说明,在线 IDE 直接练习,也可下载桌面工具
语言情况官网、说明文档与工具界面主要为英文
免费边界官网课程材料和软件免费用于非营利学习,Coursera 证书等服务可能收费
数据与隐私在线 IDE 无需账号,工作文件保存在浏览器本地,重要文件应主动下载备份

从逻辑门搭出处理器

官方课程页把硬件部分排成六个项目。学习者先用硬件描述语言组合基本逻辑门,再做寄存器、内存和 CPU。每个项目都配有骨架文件、测试脚本与比较文件,可以反复修改,再用模拟器核对输出。

官方推荐的新工具是浏览器里的 Web IDE。下面的真实界面展示了 And16 芯片的硬件描述语言代码、输入输出引脚和测试脚本。写完一段实现后,学习者可以立即检查语法与引脚状态。

Nand2Tetris 在线硬件模拟器中的 And16 芯片代码与引脚界面
硬件模拟器把代码、测试脚本和芯片引脚放在同一页。图片来自 Nand2Tetris 官方 Web IDE 仓库,仓库采用 MIT 许可

运行测试以后,IDE 会把实际输出与官方比较文件逐行核对。测试通过时,页面底部会显示成功信息。这个反馈适合处理逐步搭建时的小错误,也能帮助学习者理解某个引脚为什么得到当前结果。

Nand2Tetris 在线硬件模拟器显示 And16 芯片测试通过
输出文件与比较文件一致后,模拟器会显示测试成功。图片来自 Nand2Tetris 官方 Web IDE 仓库,仓库采用 MIT 许可

怎样开始

  1. 先读官方课程页的 Project 1 说明,认识 NAND、NOT、AND、OR 和多路选择器,只完成当前项目要求的芯片。
  2. 打开官方在线 IDE,选择 Project 1,读取骨架文件与测试脚本。先做最简单的 Not 芯片,再继续组合更复杂的门。
  3. 每完成一个芯片就运行测试。测试失败时先看最早出现差异的输入组合,再回到代码检查引脚连接,避免一次改动很多行。
  4. 通过测试后下载自己的文件,并写几句话记录芯片功能与错误原因。浏览器数据被清理后,本地保存的工作可能丢失,下载备份更稳妥。

学习时怎样安排

第一次学习可以先完成前六个硬件项目,再决定是否进入软件部分。每次动手前先画出输入、输出和中间部件,随后再写硬件描述语言。测试报错时保留一份失败记录,写清哪组输入出了问题,下次会更容易定位。

教师可以把一个项目拆成阅读说明、画结构图、实现、测试和复盘几次课。自学者则适合给每个项目留出数天,不必追求一口气做完。官方明确请求学习者不要公开发布项目答案,讨论时可以讲思路和错误现象,把完整解答留在私有空间。

免费与版权边界

官方许可页说明,网站上的课程材料与工具采用知识共享署名、非商业性使用、相同方式共享 3.0 许可,可以免费用于非营利教学和自学。转载或改编材料时应保留作者与来源,继续使用相同许可,并遵守非商业限制。

官网可直接取得项目材料与工具。Coursera 等平台提供的辅导、评分或证书可能收费,购买课程配套教材也需要另付费用。Nand2Tetris 官方 Web IDE 仓库单独采用 MIT 许可,本文使用的图标与两张界面图都来自该仓库的固定版本。

使用前要知道的限制

  • 课程和工具以英文为主,数字逻辑、汇编与编译器部分会出现较多专业词汇。
  • 在线 IDE 仍在持续更新,官方用户指南中的个别界面可能与当前版本略有差异。
  • 在线 IDE 把文件保存在浏览器本地。换设备、清理站点数据或使用无痕窗口时,应先下载文件。
  • 课程使用为教学设计的 Hack 平台,能讲清计算机系统各层怎样衔接,但不会覆盖现代处理器的全部工程细节。

Project 1 是合适的起点。先完成 Not 与 And 两个芯片,跑通测试,再把它们画成一张结构图。代码、测试结果和图能互相对上时,后面的 CPU 就有了可继续搭建的基础。

数据统计

暂无评论

none
暂无评论...