http://kaito-kidd.com/2016/04/20/code-note-01-10/#more

由于最近正在看《编码:隐匿在计算机软硬件背后的语言》,整理并记下读书笔记。

1、至亲密友

2个人远距离交流,可以通过手电筒开和关进行通信,但想表达的文字太复杂,手电筒开关次数太多,难度非常大。

引出莫尔斯电码,使用点和划(短闪和长闪)通信。

结论:

  • 编码是用来在机器和人之间信息传递的方式,编码就是交流。

  • 编码无处不在,手电筒的闪烁,英语词汇,空气中的比划,手语,布莱叶盲文。

  • 计算机里存储和传递数字、声音、音乐、图片和电影,处理后呈现出信息与人类沟通。

2、编码与组合

莫尔斯码发送简单,但是接收后解析困难,解决方案:构建信息与编码的图表。

结论:

  • 码字的数目 = 2^编码位数

  • 编码进行适合的组合,得出完整的信息表示。

3、布莱叶盲文与二进制码

布莱叶觉得最初的盲文编码过于复杂,不利于长文本阅读,随之改造盲文编码,使用23的矩阵,利用凸/平点表示一个字母信息。此标准沿用至今,改造后有了二级布莱叶盲文(使用很多缩写,一个23矩阵表示一个单词)

结论:使用6位二进制码表示出2^6=64种编码表示,并且根据上下文有双重身份。

4、手电筒的剖析

原子构成:中子、质子、电子。

一个原子的中电子数=质子数,如果电子从原子中脱离,就会产生电流。

当质子与电子出现失衡,就会自我修复,从其他物体带走电子,例如地毯带走脚上的电子,自己感觉被静电电到了。

电路中的电子不断从一个原子移动到下一个原子,就形成了电流。

电池内部经过化学反应,能够使多余的自由电子聚集到负极(阴极),正极(阳极)变得急需电子,化学能转为电能。

电池为电路提供电能,反过来,电路为电池内化学反应提供条件,化学反应持续进行,化学物质被消耗完,电池没电。

导体:最外层电子容易逃逸。绝缘体:阻抗性很大(电阻)。

交代出:电流、电压、电阻、功率。

白炽灯发光原理:钨丝电阻非常小,电流经过后钨丝变热达到燃点,由于存在真空中,不会燃烧,所以发亮!

5、绕过拐角的通信

远距离如何通信?通过电源+导线的方式,实现远距离通信。

距离越远,需要的导线越长,成本高并且电阻大,需要强电压。

如果电压足够强,电池足够大,通信2方只需要一端接地,另一端使用一根导线即可,减少成本。

结论:使用导线可以构建出绕过拐角、视线之外的发报系统,不受距离限制,涉及问题:电流、电阻等。

6、电报机与继电器

早期提高远距离通信速度方式:人站在高山上,作为中继系统挥旗发出旗语,或通过机械臂装置代替人工。

电报机原理:在线路一端采取一些措施,使线路另一端发生某种变化。

电池+导线缠绕铁棒,电流通过后,铁棒具有磁性。电磁铁是电报机的基础。

电报机构成:

  • 发送端:一个开关,敲击使其上下移动,产生点、划莫尔斯码
  • 接收端:一块电磁铁拉动一根金属杆构成,发送端电键按下,电磁铁拉动金属杆下降,松开电键,弹回原来位置,接收点、划信息。

中继器由来:距离太远产生的问题:电压有限,距离越长,电阻增大,需中间设备传送信息。

中继器其实就是在接收端再增加一个类似发送端的设备,可以同步发送端的信息,发送给下个接收端,以此循环,放大“信号”。

7、我们的十个数字

人的数字世界:十个数字,因为有十只手指。

罗马数字:I、V、X、L等,缺点乘除复杂。

阿拉伯数字:计算简单,分解计算。

8、十的替代品

手指、卡通人物、龙虾、海豚的数字世界:10、4、2、1。

数字可以有十进制、八进制、二进制表示。

二进制只有0、1,可以代表开关、电流是否通过、灯泡是否发亮。

二进制与计算机有紧密联系。

9、二进制数

二进制每一位,被称为比特位(bit)。

编码数量 = 2^比特位

UPC(商品统一代码,条形码)是95位的二进制码,包含左护线、数字、中护线、数字、右护线。

UPC下一串数字就是二进制码通过一定规则编码转换后的数字(分类,ID,校验码)。

结论:比特可以表示文字、图片、声音、电影,也可以表示产品编码、胶片速度等。用比特表示信息所要做的就是计算有多少种可能性罢了。

10、逻辑与开关

在解决问题时,可以把文字语言转换为数学语言,根据数学公式可推导计算问题结果。

在布尔代数中,操作数不是数字而是类,一个类就是一个事物的的群体(集合)。

布尔代数中,类的计算使用交集、并集计算,1表示全集,0表示空集。

矛盾律:一个事物既不可能是它本身同时又是它的对立面。

交集、并集、全集去掉某些元素:可用OR、AND、NOT表示。

映射到电路中的表示:

  • AND:串联
  • OR:并联

电路中使用开关的原理,可以制造出电报机,从而可以演变制造出计算机。

如果此文章能给您带来小小的工作效率提升,不妨小额赞助我一下,以鼓励我写出更好的文章!