计算机系统要素

在实现mux4way的时候

sel out
00 a
01 b
10 c
11 d

可以用sel[0]来表示(书中数组的下标从左到右是递减的)对a/c或b/d选择,

用sel[1]来表示对a/b或c/d的选择,总的来说就可以确定一个输入端来进行输出。

mux(a=a,b=b,sel=sel[0],out=amuxb);

mux(a=c,b=d,sel=sel[1],out=cmuxd);

mux(a=amuxb,b=cmuxd,out=out);

时间: 2024-09-29 20:12:52

计算机系统要素的相关文章

《计算机系统要素》全面初步了解计算机体系

这本书的中文译名是<计算机系统要素-从零开始构建现代计算机> 适合对计算机体系知识不熟悉的人 它对计算机体系有一个全面的介绍 当然 都是停留在入门阶段 但是 读完这本书并做完所有的项目 你对计算机的了解至少能超越50%的程度员 先来看一看这本书的简介 内容简介 本书通过展现简单但功能强大的计算机系统之构建过程,为读者呈现了一幅完整.严格的计算机应用科学大图景.本书作者认为,理解计算机工作原理的最好方法就是亲自动手,从零开始构建计算机系统.通过12个章节和项目来引领读者从头开始,本书逐步地构建一

计算机系统要素-第三章 时序逻辑

1 本章介绍时钟和触发器,构建记忆单元.触发器是具有记忆功能的最小记忆单元,能够存储一个bit位. 2 设计计算机时钟时,时钟周期的长度要比1个比特在计算机两个物理距离最长的芯片之间的传输时间稍长. 3 D触发器 4 寄存器 1) 1比特位寄存器 /** * 1-bit register: * If load[t] == 1 then out[t+1] = in[t] * else out does not change (out[t+1] = out[t]) */ CHIP Bit { IN

计算机系统要素-第二章 布尔运算

1 本章构建完整的算术逻辑单元ALU.2 有符号的二进制数    1) 补码:x的补码=2的n次方-x,即反码+1    2) 减法可以看成x-y=x+(-y)3 加法器    1) HalfAdder 半加器        /**         * Computes the sum of two bits.         */                CHIP HalfAdder {            IN a, b;    // 1-bit inputs           

计算机系统要素-第一章 布尔逻辑

1 前言    1) What I hear, I forget; What I see,I remember; What I do, I underStand.    2) 理解硬件.软件.编译器.操作系统之间如何交互,透彻理解计算机的内部工作原理.    3) 本书需要的工具和资源下载地址:http://www.nand2tetris.org/software.php    4) 本书涵盖内容        2 基本逻辑门实现    1) Not         /**         *

计算机系统要素:第十一章 编译器:代码生成

一,项目介绍 终于来到了编译器部分的最后一个章节--代码生成阶段.本章的目标就是将Jack语言转化为VM语言,完成Jack编译器的构建. 刚刚接触这章的内容时,会比较难上手,最主要的问题就在于,这章的内容看起来和第十章没有什么关系.刚开始做这个项目时,我就很疑惑,第十章输出的不是一个结构化的xml文件吗?这个文件在第十一章根本不需要输出,那么这章的内容从何开始呢? 的确,这个xml文件是不需要输出的,但是第十章的目的并不单纯是输出这个xml文件,它更重要的目的是为了让我们了解如何对jack程序文

计算机系统要素:第十二章 操作系统

终于来到了Hack计算机架构的最后一部分--操作系统的构建了!这一章的内容涉及了大量的逻辑架构.算法问题与细节处理,需要花很多精力才能够完成.我曾经与nand2tetris团队的一位工作人员有过联系,他就指出,这本书最后几个较难的章节介绍性的内容太少了,最后的OS章节如果作为正常的上课来学习的话,两周时间是绝对不够的(只要想想,计算机专业的学生得花一个学期学OS),其中涉及了太多问题.因此,在这篇文章中,我会将语言规范.溢出处理.特殊情况处理等几个重要的问题单独列出加以讨论. Math 溢出(o

《计算机系统》加分项目

目录 <计算机系统>加分项目 <CSAPP:深入理解计算机系统> 数据实验 二进制炸弹实验 缓冲区溢出实验 体系结构实验 性能实验 cache实验 shell实验 malloc实验 代理实验 <计算机系统>加分项目 过去,凡是计算机专业人员都对计算机的工作原理和工作方式了如指掌.计算机体系中的硬件.软件.编译器以及操作系统之间的交互既简单又透明,因此要把握计算机系统大局观并非难事.然而随着现代计算机技术的日趋复杂,这种明晰性不复存在:计算机科学领域里面大多数基本思想和技

很棒的计算机入门课程:公开课从与非门到俄罗斯方块(第二部分)

博客中的文章均为meelo原创,请务必以链接形式注明本文地址 Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) by: Noam Nisan & Shimon Schocken from: Hebrew University of Jerusalem 课程链接:https://www.coursera.org/learn/nand2tetris2/home

2016/2/16 新学期的学习目标

眨眼间就过了一个学期,而且,下一个学期没多久就会开学了. 感觉学习会让人很充实,上一个学期所干的那些事,虽然在我当时看来非常拖沓,现在看来倒也算是做好了一些事情. 我感觉做的还算凑合,而且明确的目标激励的确帮我节省了很多时间. 上个学期主要干成了这样几件事情: 学会了Python的使用,并且把它在武器库里已经成为和C差不多相同熟练度的武器.而对C的进步,我几乎花了一年半时间. 初步掌握了基本的数据结构和排序算法,参加了PAT考试,给了自己一定的信心. 通过Pygame库实现了一些游戏制作,通过P