注:所有笔记均为自己的理解总结,可能并非书本原文,对错不予负责。
第一章
摘要:介绍了编码的含义,以及通过介绍“手电筒交流法”引出了二进制码的概念。
编码其实就是用“一套规则化的表达方式”来表达“现实中的事物”。
比如文字就可以说是一类编码,因为“猪”这个文字可以是现实中的狗,可以是现实中的猫,它之所以是猪,是因为我们把它规定为它表达的就是现实中的猪。
再比如二进制码,不同的二进制位的组合可以表示不同的字母,再将这些不同的字母组合,就可以表达单词,再将单词组合就可以表达句子,从而能够表达出自己想说的东西。
“手电筒交流法”中有意思的思维方式:
1、我们可以用手电筒在墙上把文字通过笔画来画出来,但是有一个更棒的方式,那就是通过手电筒短闪和长闪的组合来表达不同的字母。 (中间还有一种方式,就是没有短闪和长闪的区别,闪一下表示a,闪两下表示b,…,闪26下表示z。但这样也是很愚蠢的)
2、举个例子说明:假如短闪是1s,长闪是3s。那么在表达一个“码字”(例如字母‘a’)时,每次闪烁之间要停顿1s。一个单词内的不同码字之间要停顿3s。不同的单词之间要停顿6s。
3、简单而短促的编码,被分配给字母表中使用频率较高的字母;而不太常用的字母,则被分配以较长的编码。
打字机:原理类似,只不过其不是短闪和长闪,而是dot(点)和dash(划)。
第二章
摘要:通过介绍由Samuel Finley Breese Morse(塞缪尔,莫尔斯)发明的Morse Code(莫尔斯码),引入“位数和其所能表达的码字数目的关系”。
Morse Code:也被称作Binary Code(二进制码),因为这种编码的组成元素只有两个 ——— “点”和“划”。
位数和其所能表达的码字数目的关系:
比如如果有6位,那么总共的码字就达到了2+4+8+12+32+64=126种
第三章
摘要:通过介绍braille(布莱叶盲文),引出一些braille中有意思的思维方式。
小故事:
Samuel Morse并不是第一个将书面语言的字母成功编码的人。实际上,在因自己的名字被用来命名某种编码方式而名声大噪的人中,Morse也不是第一人,而应该是法国盲人Louis Braille(路易斯.布莱叶)。
10岁时,他被送进“巴黎皇家盲人学校”学习,当时他阅读的方式是其学校校长瓦伦丁.霍伊发明的一种“在纸面上印下凸起文字的系统”(相当于用手电筒画字)。
12岁时,他就很熟悉一种叫“夜间书写”的文字系统,是由法国的一名军官Charles Barbier发明。他在厚纸上使用凸起的点和划得组合表示文字。不过该系统并非使用与字母表相对应的点划编码串表示字母,而是用与读音相对应的编码串表示。(相当于用手电筒的短闪和长闪,只不过不是表示字母,而是表示读音)。
15岁时,通过对”夜间书写”系统的改进,创建了自己的系统。
braille:在布莱叶盲文中,每个在书写文字中用到的符号 ——— 具体来说就是字母、数字和标点符号 ——— 都被编码成为2*3的点码单元中的一个或者多个凸起的点。这个点码单元包含的点通常使用1到6的数字来编号。(了解即可)
braille中有意思的思维方式:
1、每个表示单个字母的点码单元如果单独出现,他们就表示一个普通的单词(可以理解为‘a’就表示‘and’,‘b’就表示‘but’)。
2、一些多余的点码单元用来表示单词中字母串的缩写,比如可以用某个点码单元表示字母串’ing’、‘com’。
3、‘ble’的码字很重要,因为当它不是用来作为单词的一部分时,它的出现就意味着之后的码字应该被译为数字。表示数字的码字和表示字母a到j的码字是相同的。
‘ble’码字改变了后面编码的意义 ——— 从表示字母到表示数字,又从表示数字回到表示字母。像这样的编码通常被称作precedence codes(优先码)或者shift codes(换挡码)。它们改变着作用域内编码的含义,直到作用域结束。
4、6号凸点 ——— 大写标识符。这个符号表示它之后的字母都将被译为大写。类似这样的编码被称为escape codes(逃逸码)。逃逸码让你逃离对编码串单调的、一成不变的解析,而转入一种新的解析方式中。