• 2024-07-28nand2tetris_hack计算机
    终于来到了这一步!!前文里,我们学习了hack编程语言,大概知道需要实现的hack计算机是什么样子,需要实现哪些功能。同时在更早的时候,我们建造了ALU和RAM组件,加上老师内置的ROM和键盘屏幕外设,那么开干!等一下,在开始之前,我想先聊聊当今通用计算机的体系结构,也就是大名鼎鼎的冯诺依曼体系,我
  • 2024-04-05nand2tetris_hack汇编语言
    计算机我接触的第一台电脑是winXP系统,我拥有的第一台电脑是win7,也就说一开始我理解的计算机就有着好看的界面,灵活的操作性方式,拥有许多软件,可以做很多事情。我们可曾想过,大部分机器都有其专属用途,比如榨汁机只能用来榨汁、削皮刀只能用来削皮,而计算机,他可以播放视频、浏览网页等
  • 2024-03-30nand2tetris_ALU
    这一节,我们将尝试构建CPU中的ALU单元。明明上一节才开始学习基本逻辑门,这一节就实现ALU,当时的我是吃惊的,但确实仅用逻辑门就可以完成。在开始逐步实现之前,先补充一些前置知识前置知识HDL上一节构建选择器时,得到了一个较长的函数式,那么如何验证函数表达式呢。课程老师提供了用
  • 2024-03-10nand2tetris_选择器和分配器
    布尔函数基础布尔运算符AndOrNot布尔函数布尔函数类比数学里的方程,可以认为自变量的取值只有0和1两种,也就是说,布尔函数是可以枚举的,即真值表。布尔函数(可能需要化简)可以认为是等价于真值表。更多时候,往往需要从真值表(结果,或者说需求)推导出布尔函数,再化简设计出最优电
  • 2024-02-04Nand2tetris Part1 lab04-lab06
    概述在前三个lab中,我们构建了hack计算机所需要的基础的芯片。后三个lab则是教我们如何使用这些芯片去搭建一个hack计算机并且使用汇编语言。Week04&Week05把这两个lab放在一起是因为他们给我的感觉更像是知识的互补。lab05教会你汇编语言的规范是什么,lab06则是