本书作者:美,Charles Petzold
阅读版本:2012年出版,左飞、薛佟佟译
阅读次数:第1次阅读
阅读日期:2021/10/10
阅读用时:20小时
整体阅读感受
1.文章使用电路这种方式,来解释编码的基础组成部分,使之通俗易懂。
2.拂开编码神秘的面纱,现在对于编码的态度也更亲近,少了些许恐惧。
摩尔斯电码
是什么?用长闪、短闪来表现26个字母以及一些符号
为什么?使用摩尔斯电码来表达“how are you?”只需要闪32下,而使用手电筒开关来表示却需要闪131下。
SOS:三点 三横 三点 摩尔斯电码也叫做二进制码。摩尔斯电码树状排列规律推演出以2为基数的幂函数。
布莱叶盲文
是什么?简单好用的盲文
为什么?盲文的起源并非布莱叶设计的这一套,但是布莱叶作为盲人所设计的盲文,相对其他势力健全的人设计的盲文更简单易用。
“you and me”的表示方式:左侧布莱叶盲文,右侧改进后的二级布莱叶盲文
二进制数
是什么?比特(bit)是最小信息量单位。1bit是最小的信息量。
为什么?比特可以表示各种信息,并进行信息的转化,适合计算机使用。
1.当莫尔斯码用比特来表示时,看起来就像是条形码的一个截面。
”hi there“的表示方式:摩尔斯电码(上)、比特(下)
2.布莱叶盲文用比特表示更简单。凸起的点表示1,平坦的点表示0。
code的表示方式:布莱叶盲文(上)、比特(下)
3.除此之外,比特还可以表示文字、图片、声音、音乐、电影
也可以表示产品编码、胶片速度、影评结果、英国军队的入侵,以及心爱之人的意图。
布尔代数
是什么?传统代数是数的运算,布尔代数是集合的运算。
为什么?布尔代数颠覆了传统代数的运算概念,是一种新的数学逻辑。
1.传统代数的+✖️表示数的相加和相乘,布尔代数的+✖️(U和倒U)表示集合的并集和交集
2.在布尔代数中,1和0这两个符号有特别的含义,它们看起来像数字但不是真正意义上的数字。
1表示全集,0表示空集。
3.OR、AND、NOT可表示集合
交集(+)可以用OR表示 并集(✖️)可以用AND表示 从全集中去除某些元素(-)可以用NOT表示
门
一、缓冲器
是什么?输入和输出相同。
为什么?输入信号很微弱时放大信号;延迟一个信号。
二、反相器
是什么?输入和输出相反。
为什么?创造更多的选项。
概念: 应用: 等价:
三、逻辑门
1.与门(AND)
概念:
2.或门(OR)
概念:
3.或非门(NOR)
概念:
4.与非门(NAND)
概念:
字节
存储量:字节
数据位:比特(二进制位数)
1EB = 1024PB 1PB = 1024TB 1TB = 1024GB 1GB = 1024MB 1MB = 1024KB 1KB = 1024B 1B = 8bit(b)
易失性存储器(临时存储):电流断开时,数据消失,为了保证存储数据不丢失,易失性存储器需要恒定的电流。
自动操作
一台计算机由处理器(CPU)、存储器、输入与输出四部分构成。
计算机程序设计也被叫做编写代码,简称「编码」。
能被处理器响应的操作码叫做机器码,也叫做「机器语言」。
操作码:
从算盘到芯片
「第一个被发现的有生命的bug」,是一只「飞蛾」,出现在IBM发明的Mark II计算机中。
逻辑门可以被装配组成加法器、选择器、触发器、解码器、计数器。
图灵机:用来分析哪些事情计算机可以做到,哪些做不到。
图灵测试法:测试机器智能的方法。
算盘-真空管产品-晶体管产品-集成电路(芯片/IC)产品
处理器的速度决定了计算机的最终用途,那些表现比人脑还慢的计算机是毫无用处的。
两种典型的微处理器
「call指令」能纪录“从何处跳转”,即保存了跳转之前的相关信息。这可以使处理器返回到原来的位置,只需要使用「Return指令」。
这两个指令可以帮助,在程序中使用子程序。
微处理器是如何与外围设备(除存储器之外的设备)「互相通信」的呢?
外围设备配备了与存储器相似的接口,微处理器通过与外围设备的接口(特定地址)对其进行读写操作。
NOP指令代表不操作指令。使用这个指令,可以保证不会引起任何错误事件的发生。
ASCII码和字符
数字计算机中,存储器唯一可以存储的是比特,因此如果想要在计算机上处理信息,就必须把它们按位存储。
总线
总线可以简单概括为所有数字信号的集合,而这些信号被提供给计算机上的每一块电路板,信号类型:
- 地址信号
- 数据输入信号
- 数据输出信号
- 控制信号
带宽:传输媒介能够传输的信息量都是受带宽限制的。
光标:是一个下划线,用来显示键盘上输入的下一个字符会在屏幕什么位置显示出来。
键盘:是一个简单的开关。
软盘:插入软盘驱动器,与计算机进行连接,完成读取磁盘内容。
硬盘:永久固定在驱动器内部,不能移动。相对于软盘,存储速度更快、内存更大。
内存:表示随机访问存储器。一旦掉电,存储内容会全部消失,即内存全部释放。
存储器:表示任何存储设备,包括软盘、硬盘、磁带。属于磁介质存储器,可以永久性存储信息,除非主动删除或覆盖。
操作系统
如果没有软件,一台计算机无法完成任何有意义的工作。
操作系统是许多软件构成的庞大程序集合。
操作系统能够让程序方便的访问计算机的硬件。这种访问操作称为API,即应用程序接口。
标准化API是一个与计算机硬件无关的接口,即屏蔽了硬件的差异。因此即便计算机硬件差别很大,但都可以运行。也减少对制造商生产硬件的要求,硬件可以存在差别,但软件照样可以运行起来,提高软件的流行能力。
一个操作系统上运行多个程序,则此系统被称为多任务操作系统。目前的操作系统都是多任务,所以也就不用加前缀修饰了。
在多个程序运行时,就需要进行内存分配。如果内存不够用,就需要虚拟内存技术,让程序把暂时用不到的内存快放在临时文件里,待需要时再把它掉入内存。
著名系统的出现:UNIX系统、Linus系统、Mac系统和Windows系统
高级语言与低级语言
机器语言。
汇编语言:「低级语言」,依赖硬件,不可“移植”。
程序设计语言:「高级语言」,不依赖特定处理器,具有良好的“可移植性”。
图形化革命
可视化编程:
语音识别:
TCP/IP协议
HTTP协议
服务器端与客户端