没有合适的资源?快使用搜索试试~ 我知道了~
首页《计算机科学速成课》笔记
《计算机科学速成课》笔记
5星 · 超过95%的资源 需积分: 50 23 下载量 163 浏览量
更新于2023-03-16
评论 2
收藏 2.21MB PDF 举报
我是为了复习计算机组成原理而看得视频,所以看了和组成原理相关的小结。笔记主要是直接复制字幕的,然后自己改动了些,使其更有逻辑。图片也都是从视频中截取。 感谢字幕组的翻译
资源详情
资源评论
资源推荐
最大的机电计算机之一是 哈佛马克一号(Harvard Mark I)。IBM 在 1944 完成建造.
1.
马克一号的大脑是"继电器"。
2.
继电器是:用电控制的机械开关。继电器里,有根"控制线路",控制电路是开还是关,"控制线路" 连着一个线圈,当电流流过
线圈,线圈产生电磁场,吸引金属臂,从而闭合电路。
3.
术语 "bug" 的来源:1947年9月,哈佛马克2型的操作员从故障继电器中,拔出一只死虫,Grace Hopper曾说"从那时起,每当电
脑出了问题,我们就说它出了bug(虫子)"
4.
在 1904 年,英国物理学家 "约翰·安布罗斯·弗莱明"开发了一种新的电子组件,叫"热电子管"。
5.
1906 年,美国发明家 "李·德富雷斯特"在"弗莱明"设计的两个电极之间,加入了第三个 "控制" 电极。向"控制"电极施加正电荷,
它会允许电子流动,但如果施加负电荷,它会阻止电子流动,因此通过控制线路来断开或闭合电路,实现了继电器的功能,但
重要的是,真空管内没有会动的组件,这意味着更少的磨损。
6.
1947 年,贝尔实验室科学家 John Bardeen,Walter Brattain,William Shockley发明了晶体管。晶体管有两个电极, 电极之间有
一种材料隔开它们,这种材料有时候导电,有时候不导电(半导体),控制线连到一个 "门" 电极,通过改变 "门" 的电荷,我们可
以控制半导体材料的导电性,来允许或不允许 电流流动。
7.
计算机的大脑基础单元的发展路径:
继电器
->
电子管
->
晶体管
。
8.
生产半导体最常见的材料是 "硅"。
9.
一.电子计算机
计算机用二进制的另一个原因是有一整个数学分支存在,专门处理"真"和"假",它已经解决了所有法则和运算,叫"布尔代数"!
1.
NOT
:把 输出 放到上面,如果打开 输入,电流可以流过然后 "接地",输出就没有电流,所以输出是 off。当输入是 off,电
流没法接地,就流过了输出,所以输出是 on
a.
AND
:为了实现 "AND 门",我们需要 2 个晶体管连在一起,这样有 2 个输入和 1 个输出,如果只打开 A,不打开 B , 电流
无法流到 output,所以输出是 false,如果只打开 B,不打开 A ,也一样,电流无法流到 output,只有 A 和 B 都打开了,
output 才有电流。
b.
布尔代数中有三个基本操作:NOT, AND 和 OR。
2.
二.布尔运算和逻辑门
晶体管(三极管)
晶体管只是电控制的开关,有 3 根线:2 根电极和 1 根控
制线,控制线通电时,电流就可以从一个电极流到另一个
电极。
控制线
计算机科学速成课笔记
2018年12月17日
0:42
分区 计算机组成原理 的第
1
页
OR
:如下图,将两个晶体管并联起来,即可得到OR门。图中用"小拱门"代表 2 条线没连在一起,只是跨过而已
c.
XOR(异或)
:我们有 2 个输入,A 和 B ,还有 1 个输出.先放一个 OR 门。因为 OR 和 XOR 的逻辑表很像。只有 1 个问题 -
当 A 和 B 都是 true 时 , OR 的输出和想要的 XOR 输出不一样,我们想要 false,通过增加其他门可以达到这一效果。
d.
对应的逻辑门如下。
3.
1字节(bytes)=8位(bits)
1.
1KB = 2
10
bytes = 1024 bytes
大部分计算机用第一位表示正负:1 是负,0 是正,用剩下 31 位来表示数字。
2.
表示浮点数最常见的是 IEEE 754 标准。它用类似科学计数法的方法,来存十进制值,例如,625.9 可以写成 0.6259×10 ^ 3,这里
有两个重要数字:.6259 叫 "有效位数" , 3 是指数。
3.
在 32 位浮点数中,第 1 位表示数字的正负,接下来 8 位存指数,剩下 23 位存有效位数。
ASCII-美国信息交换标准代码,发明于1963 年。ASCII 是 7 位代码,足够存 128 个不同值。幸运的是,一个字节有8位,而不是7
位,128 到 255 的字符渐渐变得常用,这些字符以前是空的,是给各个国家自己 "保留使用的"。
4.
三.二进制
分区 计算机组成原理 的第
2
页
位,128 到 255 的字符渐渐变得常用,这些字符以前是空的,是给各个国家自己 "保留使用的"。
像中文和日文这样的语言有数千个字符,根本没办法用 8 位来表示所有字符!为了解决这个问题,每个国家都发明了多字节编
码方案,但不相互兼容。所以 Unicode 诞生了 - 统一所有编码的标准,设计于 1992 年,解决了不同国家不同标准的问题。最常
见的 Unicode 是 16 位的,有超过一百万个位置。
5.
ALU(Arithmetic and Logic Unit )由算术单元和逻辑单元组成。
1.
加法电路:有 2 个输入:A 和 B,1 个输出:就是两个数字的和。输入只有四种可能,前三个是0 + 0 = 0 ,1 + 0 = 1 ,0 +
1 = 1。二进制里,1 与 true 相同,0 与 false 相同,这组输入和输出和 XOR 门的逻辑完全一样,所以我们可以把 XOR 用作
1 位加法器(adder)。但第四个输入组合,1+1,是个特例 1+1=2,但二进制里没有 2。二进制 1+1 的结果是0,1进到下
一位,和是 10 。XOR 门的输出,只对了一部分, 1+1 输出 0,但我们需要一根额外的线代表 "进位"。AND门正好可以判断
两者是否都为TRUE,所以我们就得到了最简单的逻辑单元-半加器。
2.
让我们抽象化,把 "半加器" 封装成一个单独组件。两个输入 A 和 B 都是 1 位 ,两个输出为 "总和" 与 "进位"。
半加器输出了进
位
,意味着,我们算下一列的时候,还有之后的每一列,我们得加 3 个位在一起,而不是 2 个。有 3 个输入:A, B, C (都是 1
个 bit),所以最大的可能是 1 + 1 + 1,"总和"1 "进位"1 , 所以要两条输出线: "总和"和"进位"。这就是
全加器
。
3.
现在有了新组件,我们可以相加两个8 位数字,叫两个数字叫A 和 B 好了。我们从 A 和 B 的第一位开始,叫 A0 和 B0 好了,现
在不用处理任何进位,因为是第一次加法,所以我们可以用半加器来加这2个数字,输出叫 sum0。然后加 A1 和 B1,因为 A0 和
B0 的结果有可能进位,所以这次要用全加器,除了 A1 和 B1,还要连上进位,输出叫 sum1。然后,把这个全加器的进位连到下
个全加器的输入,处理 A2 和 B2,以此类推,把 8 个 bit 都搞定。
4.
因为每次进位都要一点时间,如今的量级是每秒几十亿次运算,用这种方法会对运算速度造成限制。所以,现代计算机用的加
法电路有点不同,叫 "超前进位加法器"。它更快,做的事情是一样的 - 把二进制数相加。
5.
简单的 ALU 没有专门的电路来处理乘法和除法,而是把乘法用多次加法来实现。然而笔记本和手机有更好的处理器,有专门做
乘法的算术单元,当然,乘法电路比加法复杂。
6.
ALU 的另一半:逻辑单元。逻辑单元执行逻辑操作,比如之前讨论过的 AND,OR 和 NOT 操作。它也能做简单的数值测试,比如
判断一个数字是不是负数。
7.
工程师不想在用 ALU 时去想那些复杂的逻辑门电路,所以想了一个特殊符号来代表它,看起来像一个大 "V"。
8.
因为需要告诉 ALU 执行什么操作,例如加法或减法,我们使用了 4 位的操作代码。
9.
ALU 还会输出一堆标志(Flag),"标志"是1位的,代表特定状态。比如相减两个数字,结果为 0,零测试电路会将零标志设为
True(1),如果想知道两个数字是否相等,这个非常有用。如果想知道: A是否小于B,可以用 ALU 来算 A 减 B,看负标志是否
为 true,如果是 true,我们就知道 A 小于 B。最后,还有一条线连到加法器的进位,如果有溢出,我们就知道,这叫溢出标
志。高级 ALU 有更多标志,但这 3 个标志是 ALU 普遍用的。
10.
四.算术逻辑单元
分区 计算机组成原理 的第
3
页
志。高级 ALU 有更多标志,但这 3 个标志是 ALU 普遍用的。
内存的一个重要特性是:可以随时访问任何位置,因此叫随机存取存储器(Random Access Memory),简称"RAM"。
1.
我们至今说过的电路都是单向的,总是向前流动,比如上述的 "脉动进位加法器"。但也可以做
回向电路
,把输出连回输入。我们拿
一个 OR 门试试,把输出连回输入,看看会发生什么。首先,两个输入都设为0,"0 OR 0" 是 0,所以电路输出0。如果将 A 变成
1,"1 OR 0" 为 1,所以输出 1,在瞬间输出又回到 B,OR 门看到两个输入都是 1,"1 OR 1" 仍然为1,所以输出不变。如果将 A
变成 0,OR 门依然输出 1,于是电路便能记录 "1"了。
2.
换成 AND 门看看会怎样。开始时,A 和 B 都设 1,"1 AND 1" 永远输出 1。如果之后 A 设为 0,由于是 AND 门,输出会变成 0。
这个电路能记录 0,就像之前,无论 A 设什么值,电路始终输出 0。
3.
现在有了能存 0 和 1 的电路,为了做出有用的存储(memory) ,我们把两个电路结合起来,这叫 "AND-OR
锁存器
"。
4.
它有两个输入:"设置"输入, 把输出变成 1; "复位"输入, 把输出变成 0。如果"设置"和"复位"都是 0,电路会输出最后放入的内
容。也就是说,它存住了 1 位的信息!
提升一层抽象,把 "门锁" 放到盒子里 - 这个盒子能存一个 bit。
用两条线 "设置"和"复位" 来输入, 有点难理解,为了更容易用,我们希望只有一条输入线,将它设为0 或 1 来存储值。还需要一
根线来"启用"内存,启用时允许写入,没启用时就 "锁定"。这条线叫 "允许写入线",加一些额外逻辑门,可以做出这个电路。
5.
如果我们并排放 8 个锁存器,可以存 8 位信息,比如一个 8 bit 数字,一组这样的锁存器叫"
寄存器
"。
6.
五.寄存器&内存
分区 计算机组成原理 的第
4
页
剩余15页未读,继续阅读
li_il
- 粉丝: 102
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 2022年中国足球球迷营销价值报告.pdf
- 房地产培训 -营销总每天在干嘛.pptx
- 黄色简约实用介绍_汇报PPT模板.pptx
- 嵌入式系统原理及应用:第三章 ARM编程简介_3.pdf
- 多媒体应用系统.pptx
- 黄灰配色简约设计精美大气商务汇报PPT模板.pptx
- 用matlab绘制差分方程Z变换-反变换-zplane-residuez-tf2zp-zp2tf-tf2sos-sos2tf-幅相频谱等等.docx
- 网络营销策略-网络营销团队的建立.docx
- 电子商务示范企业申请报告.doc
- 淡雅灰低面风背景完整框架创业商业计划书PPT模板.pptx
- 计算模型与算法技术:10-Iterative Improvement.ppt
- 计算模型与算法技术:9-Greedy Technique.ppt
- 计算模型与算法技术:6-Transform-and-Conquer.ppt
- 云服务安全风险分析研究.pdf
- 软件工程笔记(完整版).doc
- 电子商务网项目实例规划书.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5