第1章电筒密谈
摩尔斯电码
第2章编码与组合
摩尔斯电码由萨缪尔·摩尔斯(1791—1872)发明,摩尔斯电码是随着电报机的发明而产生的,电报机也提供了理解计算机硬件的良好途径。
摩尔斯电码被称为二元码(binarycode),因为编码中仅含“滴”和“嗒”。这与一个硬币很相似,硬币着地时只可能是正面或反面。二元事物(例如硬币)、二元编码(例如摩尔斯电码)常常用2的乘方来描述。
第3章布莱叶盲文与二元编码
路易斯·布莱叶1809年出生于法国的Coupvray,他的家乡在巴黎以东25英里,父亲以打造马具为生。3岁时,在这个本不该在父亲作坊里玩耍的年龄,小布莱叶意外地被尖头的工具戳中了眼睛。由于伤口发炎,感染了另一只眼,他从此双目失明。布莱叶原本注定在贫困潦倒中度过一生(正如那时大多数盲人一样),但他的聪明才智和求知欲不久即显露了出来。在本地牧师和一位学校老师的帮助下,布莱叶和其他孩子一道上了学,10岁那年又前往巴黎的皇家盲人青年学院学习。
布莱叶编码中,普通书写语言的每个字符—具体而言如数字、字母和标点符号—都被编码成局限在2×3小格中一个或多个凸起的点。这些小格一般被标记为1~6:
第4章手电筒剖析
第5章绕过拐弯的通信
第6章发报机与继电器
电磁铁是电报的基础。一端上开关的闭合引起另一端上的电磁铁产生一些动作。
继电器是一种卓越的设备。它是一个开关,但并不是由人工而是借助于电流进行开关操作的。利用这种设备可以做出令人惊奇的事情。事实上,你可以用继电器装配出一台计算机中的大部分部件。
第7章十进制记数法
我们现在使用的数字系统通常称为阿拉伯数字系统,或称为印度—阿拉伯数字系统。它起源于印度,但由阿拉伯数学家传入欧洲。一位著名的波斯数学家—Muhammedibn-Musaal-Khwarizmi(由它的名字得到单词algorithm(算法))在大约公元825年写了一本代数书,书中用的就是印度的数字系统(阿拉伯数字)来计数。产生于公元1120年的拉丁文译本对整个欧洲用现在的阿拉伯数字代替当时使用的罗马数字的过渡过程产生了很大的影响。
第8章其他进位制记数法
第9章二进制数
通常情况下,UPC是30条不同宽度的垂直黑色条纹的集合,由不同宽度的间隙分割开,其下标有一些数字。
可将条形码形象地看成是细条和黑条,窄间隙和宽间隙的排列形式,事实上,这是观察条形码的一种方式。黑色条有四种不同的宽度,较宽的条的宽度是最细条的宽度的两倍、三倍或者四倍。同样,各条之间的间隙中较宽的间隙是最窄间隙的两倍、三倍或者四倍。
但是,看待UPC的另一种方式是将它看作是一系列的比特。记住,整个条形码与条形码扫描仪在结算台“看”到的并不完全一样。扫描仪不会识别条形码底部的数字,因为识别数字需要一种更复杂的技术—光学字符识别技术,又称作OCR(opticalcharacterrecognition)。
实际上,扫描仪只识别整个条形码的一条窄带,条形码做得很大是为了便于结算台的操作人员用扫描仪对准顾客选购的物品。
第10章逻辑与开关
第11章逻辑门电路
第12章二进制加法机
第13章如何实现减法
第14章反馈与触发器
第15章字节与十六进制
字节这个词大概是在1956年前后由IBM公司最早提出来的。这个词起源于bite,但用y代替了i,以便不会被人误认为它是bit。曾经有一段时期,字节仅仅简单地表示特定数据路径上数据的位数。但是到了20世纪60年代中期,随着IBM的360系统的发展(一种大型复杂的商用计算机),字节这个词专门用来表示8位二进制数。
第16章存储器组织
第17章自动操作
第18章从算盘到芯片
第19章两种典型的微处理器
微处理器—集成计算机中央处理器(CPU)的所有组件在一个硅芯片上—诞生于1971年。它的产生有一个很好的开端:第一个微处理器是Intel4004,其中有2300个晶体管
第20章ASCII码和字符映射
第21章总线连接
第22章操作系统
第23章定点数和浮点数
第24章高级语言和低级语言
第25章图形化革命
最早的交互式计算机使用的是电传打字机。如前一章讲到的Dartmouth分时操作系统(始于20世纪60年代早期)支持多个电传打字机,可以同时使用。在这样的系统里,用户在打字机上敲一行,计算机以回答一行或多行作为响应。打字机和计算机之间的信息交流全部是ASCII码流(或其他字符集),除了像回车换行这样简单的控制码外,差不多全是字符代码。
事务只是按纸卷的方向进行。