simple and elegant
其实在看这本书之前,我一直不明白为什么在键盘上敲的东西,会转化成计算机中电路板中的电流,从而处理如此复杂的操作。计算机能华图、能计算、能看视频、能打游戏,如此多的功能,计算机电路中到底要集成多少东西啊。 但是看完这本书之后却发现,原来一切都是归根于0、1代码的计算。如此简单的底层,居然构建出如此复杂的东西。 看完这本书,你万万想不到最开始的计算机居然不是用二进制,而是用十进制计数的,只因为人的惯性思维;你万万想不到当年布尔代数和继电器都已存在,但是却没有人提出过将其两者结合起来来设计开关电路,直到香农的论文《A Symbolic Analysis of Relay and Switching Circuits》出现,才带来了以后计算机出现的可能;你万万想不到人类使用十进制可能是由于其有十个手指所致。 看过《影响力》一书后,知道人类的进步的一个体现就是很多复杂的东西可以不经思考就可以做出来,但是也正因为这样,所以我们很少会对习以为常的东西问为什么。我们很少问我们为什么使用十进制而不是其他进制;我们很少问为什么计算十进制乘法会如此轻松,而计算二进制乘法时又有多少人是把它转化为十进制来算的,然后再转回来(其实只要把二进制乘法表列出来,就可以直接计算就可以,就像我们会背十进制乘法表一样);我们很少问为什么计算机中一个字节要是8位,而不是7位、6位(书中给出的答案是8位方便BCD码编码,适合表示黑白图像中的灰度值——肉眼能区分的灰度约为256种,很好分成对等的两半等等);我们很少问为什么补码会出现,为什么补码是先反再加一(补码的出现是为了把减法变成加法);我们很少会问为什么内存可以存东西(里面其实就是反馈器,所以掉电就什么都没了)......但是作者却想到了(我也不知道如此牛逼的作者为什么会去找这些陈年往事来说)。 这本书从编码和电学基础知识讲起,一步一步地构建出计算机的历史,确实还原地很漂亮。其中我个人觉得最重要的一章就是第17章自动操作。这一章就是从前面编码和电学过渡到真正的计算机。这个过程就是由于人类的懒惰(看来懒也不是全是坏的,哈哈)。一开始人们制造出了累加器,但是不想在一边等着结果出来后再输入,于是加了计数器,造出了自动累加器;然后又想这些数输入后不会只能用一次,稍加改动就要全部重新输入,所以加上了与数据对应的指令;后来又发现指令与数据对应的话只能顺序执行一次,这样改动也很麻烦,所以就把指令和数据融合在一起,一个指令后面跟着数据地址,这就成了后来的操作码和操作数的概念。所以这一切都是有迹可循的,只是我们习惯了,没多问而已,问了也没几个人能告诉我们。 此外,这本书还透露出一个信息,就是思维定式的可怕。书中提到盲文的发明时说霍伊先生发明的盲文其实就是对应字母的凸起而已,因为他“视力健全,因此他被现有的模式所禁锢”。可以看出思维的定式既是人类的进步(不用时时去想很多东西),也是人类的禁锢。 还有就是其实计算机里所有东西归根到底就是逻辑运算,无论是加减乘除运算还是画图什么等高级功能,因为计算机就是由门电路构成的,其支撑理论就是布尔代数,所以最后都转化成0、1代码的逻辑运算了。