[TOC] 1.至亲密友1.1 编码是什么?
1.2 生活中的编码方式:
1.3 为什么需要各种不同的编码?我们使用各种不同的编码来为我们自己的交流服务,因为有些编码有时比其他编码更便捷. 1.4 那么人类如何与计算机沟通?不同类型的信息需要它们各自的编码. 1.5 如何增加沟通效率?缩减编码的数字为2. 为了使编码发送的速度最快,你可以把
事实上,两个不同的事物,只要经过适当的组合,就可以表示所有类型的信息. 2.编码与组合2.1 发展史:莫尔斯编码其实是伴随着电报机的问世而被发明的。 2.2 莫尔斯码可以表示的字数:点和划的组合可以表示任何你想要的任意数目的码字。 ![]() 2.3 二进制码:莫尔斯码也被称作二进制码(Binary Code),因为这种编码的组成元素只有两个————“点”和“划”。 2.4 组合分析关于二进制编码的分析工作,其实是数学的一个分支,称作“组合学”或“组合分析”。 3.布莱叶盲文与二进制码3.1 布莱叶盲文是什么?![]() 3.2 布莱叶盲文特点?数字标示符和取消“数字标示状态”的字母标示符,改变了后面编码的意义(字母->数字,数字->字母)。 这些编码通常被称为“优先码”(precedence codes)或者”换挡码“(shift codes)。它们改变作用域内编码的含义,直到作用域结束
逃逸码(escape codes) :让你“逃离”对编码串单调的,一成不变的解析,而转入一种新的解析方式中。 3.3 盲文与Binary Code有啥联系?盲文中的点码都是二进制的。一个单独的点不是平的就是凸起的。 4.手电筒的剖析4.1 一些原理:
4.2 手电筒与二进制的联系?
5.绕过拐角的通信5.1 与邻居的微型发报系统:![]() 使用导线,我们不仅可以构建出一个可以绕过拐角的、能够在视角之外的发报系统,而且无需受距离的限制。我们可以跨越成千上百英里来进行通信,只需铺足够长的线路即可。 5.2 现实难题:如何做出很长的导线?在150年前,人们在铺设第一个跨越美洲和欧洲的电报系统时,这些都是面临的问题。如果忽视了线路直径和高电压的因素,电报线路将完全无法持续工作。
这个难题的解决方案——不是给手电筒,而是给“滴滴答答”的近代电报系统的————尽管它只不过是个很简陋的装置,但是正是基于这个装置,整个计算机系统才被构建出来。 6.电报器与继电器6.1 通讯的历史背景:19世纪早期,人们可以进行即时通讯或远距离通信,但是不能同时做到这两点。即时通讯受声音传播距离的限制,或者受视野的限制。使用信件可以进行更远距离的通信,但是寄信耗费的时间太多,并且需要马匹、火车或轮船。 6.2 怎么提高远距离通讯的速度?使用电报(telegraph,远距离书写) 6.2.1 电报机的原理:在线路的这一端采取一些措施,使线路的另一端发送某种变化。 理论基础:
6.2.2 传统电报机中发送信息的电键:![]() 6.2.3 传统电报机中的接收器:![]() 6.2.4 电报机模型:![]() 电报机的发明标志着现代通信的开始。 6.3 怎么解决长导线带来的大电阻的问题?设置一个中继系统。 6.3.1 中继系统原始模型:![]() 6.3.2 继电器:![]() 继电器是一个意义非凡的设备。 6.3.3 中继系统最终模型:![]() 在使用继电器之前还要学会如何计数。 7.我们的十个数字语言只不过是一种编码。 十进制系统:![]() 大多数文明都是建立在以10为基数的数字系统上的(有时候是以5为基数) 在这个意义上,以10为基数或使用十进制数字系统完全是随意的。 如今我们所用的数字系统通常被称为阿拉伯数字,也可以称为印度-阿拉伯数字系统。 阿拉伯数字系统的特点
十进制计数系统易于计数,但是不适用于每种情况,比如对卡通人物没有任何意义。 8.十的替代品8.1 八进制系统:![]() 8.2 四进制系统:![]() 8.3 二进制系统:![]() 特点:
通过将数字系统减少至只有0和1两个数字的二进制数字系统,已经是最简单的数字系统了。 二进制数字系统在算术与电子技术之间搭起了一座桥梁。
二进制数与计算机之间有着紧密的联系。 9.二进制数:你可以选择很多方法来表示“是”或者“不是”。 就如前面提到的,十进制与其他数字系统相比并没有什么不同,只是我们通过使用它来计数。 但是,二进制系统有特殊性:
9.1 bit的意义:本义:
一般的意义:
在计算机时代里的意义:
9.2 为什么要用二进制数来传达信息?二进制数不是传达信息的唯一方法。字母、单词、莫尔斯码、布莱叶盲文和十进制数均可以。 关键:
信息是指多个可能性中的一种。 利用二进制表示信息的一个额外的好处:
9.3 bit在日常的体现:通用产品代码(UPC,Universal Product Code): ![]() 整个UPC只不过是一串95位二进制数。 ![]() 9.4 bit的总结:bit可以表示文字、图片、声音、音乐、电影,产品编码、胶片速度、影评结果、英国军队的入侵,以及心爱之人的意图。 在用Bit表示其他信息的时候,我们所要做的就是计算有多少种可能性。 bit在逻辑学中也很重要。 10.逻辑与开关10.1 布尔代数:对于古希腊人而言,逻辑是追求真理的过程中使用的一种分析方法,是一种哲学形式. 而布尔认为可以找到一种数学形式来描述逻辑,因此发明了布尔代数. 布尔把代数从数的概念中抽离出来使其更加抽象 10.1.1 布尔代数的符号:+: 表示两个集合的并集 10.1.2 布尔代数与传统代数的最大区别:F x F = F
10.2 布尔代数与电路的联系:布尔代数可以用开关,导线和灯泡组成的电路来实现. 10.2.1.AND运算---串联电路![]() ![]() 10.2.2.OR运算---并联电路:![]() ![]() 10.3 历史背景:在19世纪,没有人将布尔代数中的AND和OR同线路中的开关串联及并联关联到一起. 11.门继电器像开关一样,可以串联或并联在电路中执行简单的逻辑任务. 逻辑门:逻辑门的工作方式是什么?让电流通过或者阻止电流通过. 布尔代数与电路的关系:香农清晰阐述了: 电子工程师可以运用布尔代数的所有工具去设计开关电路.如果你简化了一个描述电路的布尔表达式,那么你也可以简化相应的电路. 每个开关都是一个二进制数. 继电器:
连接继电器是建立逻辑门的关键. 四种基本逻辑门1.与门 AND:两个继电器的串联被称为一个'与门'.
![]() 三输入端与门:3个继电器的串联---三输入端与门
![]()
![]() 2.或门 OR :2个继电器的并联---或门
3. 或非门 NOR:结果与或门相反
![]() 全0为1,其余为0 4. 与非门 NAND:和与门相反
![]()
![]() 反向器(inverter):开关闭合,灯泡就熄灭.
![]()
![]()
![]() 2-4译码器:由4个与门和2个反向器连接成的电路叫做2-4译码器
![]() 缓冲器(buffer) :将4个逻辑门和1个反向器组合在一起,就是原始的继电器.
![]()
![]()
摩根定律:1. 摩根定律是什么?关于命题逻辑规律的一对法则 2. 摩根定律的表达式?![]() 3. 两组等价关系:这两组等价关系就是摩根定律在电路中的实现 ![]() ![]() 4. 摩根定律与布尔代数的关系:摩根定律是**简化布尔表达式的一种重要手段,因此也可以用来简化电路 12. 二进制加法器加法是算术运算中最基本的运算,如果想搭建一台计算机,首先就要造出可以计算两个数的和的器件. 12.1 二进制的加法法则:![]() 带有前导零的形式.每个结果都是2位的值.
12.2. 8位加法器真实模型:![]() ![]() 范围:0000-0000到1111-1111 即十进制的0到255 12.3 加法器中的电路设计:12.3.1 半加器(half adder):
12.3.2 全加器(Full Adder):
![]()
![]() 12.3.3 8位加法器:
![]() 每个Full Adder的进位输出都作为下一个全加器的进位输入. ![]() ![]() 12.3.4 16位加法器:模型: ![]() 12.3.5 优化:
13. 如何实现减法14. 反馈与触发器15. 字节与十六进制16. 存储器组织17. 自动操作18. 从算盘到芯片19. 两种典型的微处理器20. ASCII码和字符转换21. 总线22. 操作系统23. 定点数和浮点数24. 高级语言与低级语言25. 图形化革命 |
|
来自: 东耳果果 > 《电脑 机器人 太空》