前言
起因是在复习计算机网络的时候,遇到了一个曼彻斯特编码的问题,这个是计算机网络物理层的时候会遇到的的问题。关于曼彻斯特编码的应用请看这段摘自Wiki百科的:
曼彻斯特编码被物理层用来编码一个同步位流的时钟和数据。因此,曼彻斯特编码被用在以太网媒介系统中。曼彻斯特编码提供一个简单的方式给编码简单的二进制序列而没有长的周期及转换级别,因而防止时钟同步的丢失,或来自低频率位移在贫乏补偿的模拟链接位错误。在这个技术下,实际上的二进制数据被传输通过这个电缆,不是作为一个序列的逻辑1或0来发送的(NRZ)。与NRZ相反,这些位被转换为一个稍微不同的格式,它通过使用直接的二进制编码。[1]
曼彻斯特编码还被用于局域网传输。[1]
其实啊,主要是考试题目要出信号图的编码题,就像下面这样的
于是就有个想法想找本书系统的学一下编码什么什么的,然后就买了一本带“编码”两个字的这本书
意料之外的编码
从回到家后开始看看了八天,大体上是看完了。的确是编码,但是没有曼彻斯特编码有关的内容。作者是Charles Petzold,这人可以百度或者谷歌的到。他写的这本书的流程是一个演进式的,前一个章节式下一个或者后续章节的基础。说是讲编码,确实是讲了编码,二进制的代数系统,一开始用的摩尔斯电码、布莱叶盲文。不过出乎预料的是他用短短的篇幅构建了一台计算机,是计算机而不是计算器。仔细看看标题,“隐匿在计算机软硬件背后的语言”,情理之中,意料之外。
这是一本奇书
没错在这里我就要开始吹这本书了!
这是一本奇书,我在这里再说一次!
第一个“奇”在于,这本书涉及的领域。这本书要说出生的话,是具有纯种的理工科血统的。其中涉及了数学、物理、化学、计算机结构体系、数字电路、关系代数、汇编语言。
第二个“奇”在于,将上述的各个学个给串联了以来,成为构成计算机不可缺少的,理论技术上的一环。这里特别想引用乔帮主的一句名言:
“你不能在展望未来的时候把点点滴滴串连起来;你只能在回顾的时候把它们联系起来。所以你必须相信,这些点会在你的未来以某种方式连接起来。你必须相信某些东西——你的勇气、命运、生命、因缘。因为相信这些点滴会在人生的路上连接起来,会给你跟随自己内心的信心,即使它会引导你离开陈腐的道路,这将使一切变得不同。” ——————Steven Paul Jobs
一个接着一个的惊喜
从电灯炮的简单电路开始,到电磁体、电报技术的发展、继电器(Relays)的出现!由继电器组成的逻辑门电路,构成了更为有作用的功能单元:加法器、计数器、选择器、触发器、译码器。数据可以被存储在特定的功能单元之中,能被其他功能单元所使用,用来计算和传递!
相应的作者坐观历史的演进,从继电器(Relays)到真空管(Vacuum Tube),再到现在集成电路(IC)的基础——晶体管(Transistor)。尽管材料的进步,导致变化的发生,数字电路中的逻辑门永远都能为这些东西里注入灵魂!
存储的出现,编码指令能被存储,这个简易的计算装置能够进行自动化操作。Jump指令的出现,真正的让这个计算装置从计算器变成了计算器!指令和数据在RAM中存储,被顺序的执行,Jump让其能够在地址中让执行流跳转,变得不在只能执行一个“计算过程”。编码真的做到了让一堆通了电的器件化腐朽为神奇!
总结
看这本书是一场有浓厚回味的旅程。作者的文笔将复杂变得能让常人理解,我想这也是作者被成为大师的原因之一。大学期间,学过了之前提到的几门课程,总觉得不得要领,不知道学了能干什么,正是这本书展示了所学的知识所用的地方。让我心中的“点”,逐渐的能够连成“线”,期待能够形成怎样的图形。