这本书是偶然从一位前辈的博客中得知的,当时在找关于硬盘的相关资料,然后从链接的链接中获悉有这样一本书,接着查看了这本书的相关介绍,便毅然决然的买了。
也许大多数人都知道,现在的电脑采用的都是经典的冯*诺伊曼体系结构,即计算机必须有一个存储器,一个控制器,一个运算器,输入设备和输出设备(以方便人机交互)。但不一定都清楚为什么要有这五部分以及它们之间是如何协作的,编码在其中到底起了什么作用。如果你有此疑问,那么通过阅读这本书你就可以对这个问题的答案有一个简明的了解。
计算机在我们如今的社会中是必不可少的,几乎人手一台(手机也算上)。在信息传递上可以说是革命性的。在古代,我们的信息传递方式有烽烟、鸿雁传书、驿站快马等等,需要耗费较大的人力物力,而且效率还很慢;而到了近代,则有了摩尔斯代码(电报),传呼机,电话等等,效率逆天,从中国到大洋彼岸的美国通话也是分分钟的事。信息传递近在咫尺,触手可得。而信息的快速传递又是怎样开始的?它又是如何促进计算机的发展的?从莫尔斯代码到布莱叶盲文,从布莱叶盲文到二进制,你可以了解到编码其实就是信息的一种表现形式,只是不同类型的信息编码形式不同而已。这些信息最终都可以被二进制数据表示,从而引出了计算机的“0”“1”机制,如何用“0”“1”来传递信息呢?请继续往下看~
从“0”“1”可以很容易联想到我们电路中的开关,比如,一节电池,一个灯泡,一个开关,通过导线将它们串联起来,就能组成一个回路。打开开关,灯灭,我们可以将灯灭这个结果标为“0”,闭合开关,灯亮,可以将灯亮这个结果标为“1”。通过电路的串并联转换,我们可以得到很多的逻辑门电路,比如:与门,或门,非门,与或门,与非门等等,如果我们想要一个加法器,就可以先列出它的真值表,获取它的布尔表达式,再通过化简它的布尔表达式,得到加法器的电路,从而实现加法的功能。(这部分大学数电课本有详细讲,如有兴趣,可以参考~)
当我们得到了加法器,那我们也就可以通过转换电路得到减法器,触发器等等,触发器是有记忆功能的,是不是可以联想到存储器呢?是的,我们已经来到存储器这里了,它是冯*诺伊曼体系结构中不可缺少的一部分,在这本书里作者通过译码器、锁存器和选择器构建了一个简单的 64K*8 RAM 阵列,它可以存储 65536 个 8 位数据并且读取其中的任意一个。与此同时,还给其他部件提供了接入系统的机会,这些部件可以轻易地读取并利用存储器中存放的数据,还可以把数据写入存储器。
控制器和运算器我们可以把它们组合起来,起个新名字,叫做处理器(CPU),可以把它想象成计算机的大脑。1970 年,第一块“计算机芯片”,或者叫做“微处理器”诞生了,它就是 Intel 4004。4004 芯片有 3 个重要的特征:
1、4004 是一个 4 位的微处理器,这意味着处理器中数据通路宽度只有 4 位;
2、4004 每秒最大时钟频率为 108000 周期,即 108 KHz。(时钟频率是指连接到微处理器并驱动它运行的振荡器的最大频率,超过此时钟频率,微处理器将不能正常工作)
3、4004 的可寻址的存储器只有 640 字节。
如今在比较处理器性能时,常采用这三个作为衡量标准。在讲到处理器时,作者详细的对比了两款经典的微处理器,8080 处理器和 6800 处理器。这两个处理器都诞生于 1974 年,8080 比 6800 早4 个月,都是 8 位,8080 是英特尔公司的产品,6800 是摩托罗拉公司的产品。(这俩公司就是不兼容的鼻祖啊….不同的微处理器当然编码特点也就不同了,你们挣钱了....苦了猿猿们….工作时好希望大一统啊==)说到这,就不得不提我们的乔帮主了,那么一个富有创新意识、特立独行的人,1977 年,斯蒂芬*乔布斯(Steven Jobs)和史蒂芬*沃兹内卡(Stephen Wozniak)创立的苹果计算机推出了 AppleII。AppleII 没有使用 8080,也没有使用 6800,而是使用了基于 MOS 技术(笔者注:制造集成电路组件的技术分两大流派, TTL 和 COMS ,详细内容可以参考可以大学模电)的更加便宜的 6502 芯片,这就是 6800 的改进版。1984 年苹果首次发布 Macintosh,它采用摩托罗拉的 68000 微处理器,68000 是 6800 的下一代产品,16位。不过,乔布斯的苹果,当然,得由自己参与核心部件开发, 从 1994 年开始,Macintosh 开始使用 PowerPC 微处理器,该处理器是由摩托罗拉,IBM 以及苹果公司联合开发的。不过不过,不晓得是不是自己开发的处理器不给力,如今苹果又开始用 Intel 处理器了==
不知不觉就写了这么多,到这里我们已经了解了存储器和处理器,接下来就是输入输出了,有了输入输出,这台电脑基本也就成了。我们常用的输入设备有:键盘,鼠标等等;输出最显而易见的就是我们的显示器啦。其实一开始显示器都是不存在的,运算结果全在纸条上…开始时候科学家们真不容易….我们应用程序输出的通常都是字符,很少有图形输出。在计算机发展史上,从字符显示到图形显示是一次伟大的变革,可以想想乔帮主对图形化界面发展的贡献。这些东西这本书里都有拓展学习==大家可以看看....(书上讲这些讲得琐碎细致,都是软知识,,我就不重述了)
上面差不多都是关于硬件的一些总结,不过认识了二进制后,已经可以往编码方面靠拢了,如果说硬件是身体的话,编码就是灵魂,思想就是具体的代码,因为思想的驱动,硬件可以产生各种反应。从 0、1 到最原始的机器语言,再到汇编,FORTRAN,ALGOL,COBOL,BASIC,C ....等等等等,程序语言越来越丰富,我们的程序也越来越精彩,实现的功能也越来越多。原书写得非常好。
写这么多,一是我毕竟读完一本书,希望给它做个小总结;二是希望能给大家大概介绍下这本书,如果有需要可以找来读读,很科普。书真的写的超精彩,结尾我再安利一下_