《穿越计算机的迷雾》读书笔记

穿越计算机的迷雾

李忠

1.4 电流是怎样形成的
2017-04-06
电压的存在是导致电流产生的原因
2017-04-06
通常,衡量一个电源的重要指标是它的电压,也就是它产生电的能力。不同的电源,所提供的电压也不相同。

2.3 二进制数就是比特串
2017-04-10
对于单个的二进制数位,它们都只有一个称呼“比特”,每个比特具有两个可能的值:0或者1。

3.3 使用全加器来构造加法机
2017-04-11
为了表明这个电路的用途,我们在图的中间加了一个符号“∑”。在数学中,这个符号用来表示“加”,它的读音是“西格马”。

4.5 爱迪生大战交流电
2017-04-13
与直流电不同,交流电的方向和大小都是不断变化的。要想了解直流电和交流电之间有哪些不同,使用图形可能是最直观的方法,也是工程上常用的方法。

7.2 反馈和振荡器
2017-04-27
把一个非门的输出取出一部分来,同时又作为它的输入,这样就形成了一个反馈。
2017-04-27
一个非门,再加上反馈之后,就能产生一连串交替变化的输出,使得与之相连的灯泡一亮一灭,很像一把振动的直尺或一个来回游荡的秋千,在两个端点之间来回运动。作为一种类比,像这种东西,在电子技术领域里叫做振荡器。
2017-04-27
如果每秒出现5个脉冲,那么频率就是5Hz,周期为0.2秒。

7.3 电子管时代
2017-04-27
发明振荡器,最早的目的是为了向天空中扬撒电磁波。在20世纪之前人们就知道,要想产生电磁波,必须使电流以极高的速度不断变化,而要产生高速变化的电流,振荡器可以做到这一点。
2017-04-28
电子三极管的放大效果不是无端地凭空产生的,这个放大后的能量来自于电源,它只是一个转换器。

7.4 记忆力非凡的触发器
2017-05-02
我做了一件事,写了一些东西,加上了读者的反馈之后,触发了一连串的事情,产生了完全不同的结果。也正是因为这样,我们刚刚讲的这个电路,称为触发器。

8.1 能保存一个比特的触发器
2017-05-02
普通的电路,以及常规的逻辑门都有一个共性,那就是输出直接依赖于输入,当输入消失的时候,输出也跟着不存在了。触发器不同,当它触发的时候,输出会发生变化。但是,当输入撤销之后,输出依然能够维持。

8.3 揭开走马灯之谜
2017-05-04
不把振荡器和灯泡算在内,一个走马灯电路通常称为循环移位寄存器。所谓“寄存”的意思是临时存放,就像火车站旁边的物品寄存处。俗话说“铁打的营盘流水的兵”,触发器随时会根据需要而保存新的比特(如果你希望得到一个不变的0和1,干吗还要使用触发器),仿佛这些比特都是临时寄存在触发器里。当若干个触发器组合在一起,可以同时保存许多比特时,就称为寄存器。

9.2 晶体管时代
2017-05-06
因为硅和锗是晶体,所以这个具有单向导电性的装置就叫晶体二极管。
2017-05-06
在发明晶体二极管没多久,人们就发现如果在半导体中掺入砷、镓等原子,制作出来的晶体二极管就会发光,称为发光二极管(LED)
2017-05-06
也就是说,这个新的半导体材料像电子三极管一样,具有放大作用。相应的,它被称为晶体三极管。

10.1 把一大堆数加起来
2017-05-11
在逻辑电路里,大家共用的公共线路称为总线。

11.1 咸鸭蛋坛子和存储器
2017-05-23
我们这个存储器,你可以随机地、任意地决定访问哪个存储单元,不管访问哪个存储单元,所花的时间都一样,和地址没有关系。正是因为这样,我们通常称之为“随机访问存储器”,或者“自由存取存储器”,用英文来说就是Random Access Memory,简称RAM。由于组成它的细胞是触发器,而这种东西就怕断电,不管它记下的是什么,只要一断电就全完蛋了,因此属于易失性存储器。

11.5 全自动计算
2017-05-26
计算机要想可靠地工作,指令的正确性至关重要。在存储器里,指令和普通的二进制数没有区别,但它们却有着独特的含义和用途。指令的数量是有限的,所以并非任意一个二进制比特串都代表一条指令。比如,1000100100可能是某台计算机的一条指令,但1000011110则可能不是。如果计算机执行了并非指令的“指令”,指令译码器将不能输出正确的信号给控制器,整个计算机也就瘫痪了。

12.1 更多的计算机指令
2017-05-31
从程序员的角度来看,这台机器的内部构造是次要的。在他们眼里,这台机器只有三样东西有价值。第一样,是存储器,因为他们需要在这里编程;第二样,是加法器,因为它是数学计算实际进行的地方,是扑克牌里的皇后。最后一样对程序员来说尤其重要,它就是寄存器RA。原因很简单,他们可以不知道指令是怎么执行的,但绝对要知道机器把执行的结果放到哪里了。

12.3 现代计算机的大体特征
2017-06-02
字长表示一台计算机在一次操作中可以处理的二进制比特数。换句话说,就是每个寄存器可以保存的二进制数是几个比特,或者加法器每次计算的二进制数是几个比特。原则上,对计算机的字长没有任何规定和限制,4比特、6比特、20比特,等等,都是可以的。
2017-06-02
任意两个寄存器之间,或者寄存器和存储单元之间,都可以互相装载数据。
2017-06-02
现代计算机还会根据一条指令的执行情况产生各种标志,比如我们已经熟悉的进位标志。其他的标志还包括计算结果为0、结果中1的个数为奇数/偶数,等等。这些标志可以用于跳转指令,或者其他想要参考这些标志的指令。
2017-06-02
对于任何一种类型的计算机来说,它的指令在种类和数量上都是有限的,但是不管有多少,它所能执行的所有指令,称为这种计算机的指令集。

13.3 流水线和高速缓存技术
2017-06-06
为了加以区分,和中央处理器最近的存储器通常称为主存储器,或者内存储器,简称内存。
2017-06-06
除了流水线,另一个被用来平衡处理器和内存速度的手段是使用高速缓存技术,字面上的意思是速度很快的缓冲存储器。类似于蓄水池,这种技术基于计算机运行的一个特点——局部性。通俗地说,局部性的意思是,程序在被执行的过程中常常会访问最近刚刚访问过的数据,或者该位置附近的数据。

13.4 掌上游戏机和手机就是计算机
2017-06-06
不管任何东西,只要稍微有一点智能的——从录音笔、微波炉调温装置、电冰箱,再到电子表、手机和游戏机,都需要用到微处理器和一小块内存储器,也需要一些编排精巧的指令。你能说,那些大家伙叫计算机,而这些东西就不叫计算机吗?

14.1 计算机同外部的接口
2017-06-08
为了在外部设备和计算机核心之间传送数据,需要在这两者之间连线,并构造逻辑电路。在逻辑电路里,有一些寄存器,通常称之为I/O端口,或直接称为端口。当中央处理器有话要对外部设备说时,就把它放在端口上,由后者取走;当外部设备也有话要跟中央处理器说时,也照此办理。从形式上看,端口类似于企事业单位门口的传达室。

15.1 打开电源并启动计算机
2017-06-14
除了加电自检指令,ROM中还包含一些访问外部设备的指令,我们可以用这些指令来访问设备而不必亲自编写,因为我们可能不熟悉如何与这些设备打交道。传统上,这就是设备驱动程序。
2017-06-14
同时,这些设备驱动程序仅仅提供最基本的功能,以保守的方式使用对应的外部设备。正因为如此,该ROM更多地被称为基本输入/输出系统BIOS(Basic Input/Output System)。

15.4 操作系统的功能
2017-06-16
多用户和多任务是依靠处理器和操作系统共同完成的,前者提供像中断这样的硬件支持;后者则在软件上予以配合和扩展。

16.3 图像、音乐和视频
2017-06-17
经过MPEG压缩后,组成视频的帧不再是传统意义上的静止图像那么简单。事实上,这些帧分为三种。第一种是参考帧,它是独立的,理论上包含完整的画面信息;后面两种类型的帧是不完整的,不能独立存在,要依赖于前面的帧、后面的帧,或者参考帧。最后,MPEG的压缩比可以达到150:1。一般来说,能达到90:1已经算是不错。