计算机影响了我们生活的方方面面,在我们这个时代完全渗透了我们的生活。
最早是算盘、星盘、时钟、尺卡等古老的计算工具,后来出现了进步计算机,类似与汽车里程表的一种机械工具,但是他也是手工制品。经过历史的演变与发展,成就了现如今通过各种无比精密零件组成的现代计算机。
1. 电子计算机
最大的机电计算机之一的是 哈佛马克一号,IBM公司在1944年给二战同盟国建造。他非常的巨大,有76w5k个组件,300w个连接点和500英里长的导线。这台机器最早的用途之一就是给“曼哈顿计划”跑模拟。
这台机器的大脑是“继电器”,用电控制的开关。他里面有根“控制”线路,控制电路是开还是关。“控制线路”连着一个线圈,当电流流过线圈,线圈产生电磁场,吸引金属臂,从而闭合。
1947年,贝尔实验室科学发明了晶体管,其原理相等复杂,涉及到了量子力学。晶体管有两个电极,电极之间有一种材料隔开他们,这种材料有时候导电,有时候不导电,被称为半导体,他还是固态的。现如今,计算机的晶体管小于50纳米,而一张纸厚度为10w纳米。
2. 布尔逻辑和逻辑门
只用 开/关 两种状态也可以代表信息,这就是二进制。
电路接通,有电流流过,代表真。电路断开,无电流通过,代表假。
晶体管不只是可以 开/关,还可以让不同大小的电流通过。
一些早期的电子计算机是三进制,有三种状态,甚至五进制,5中状态。
使用二进制的原因:
是简单的信号处理,可以减少周围环境噪音对电信号的干扰。
有一整个数学分支的存在,专门处理‘真’和‘假’,他已经解决了所有的法则和运算,叫做“布尔代数”。
布尔代数中三个基本操作:NOT、AND和OR。晶体端有三根线:2根电极和1根控制线,可以轻松实现着三个操作。控制线通电时,电流可以从一个电极到另一个电极。可以把控制线,当做输入(input),底部的电极当做输出(output)
我们可以将在上面那根电极接成output,下面那个没有任何的意义,所以接通电流后,电流从下面出去,上面又过不去,所以输出的是off。
3. 二进制
二进制中‘0’ 与 ‘1’ 都被称为一位。
计算机中,被称为32位或者64位,意思是一块块处理数据,每块是32位或者64位。
32位能表示的最大数是,43亿左右,也就是32个1。
计算机中大多数都是第一位表示正负,1是负,0是正,剩下31位表示数字。
3.6259 中 .6259叫有效位数,3是指数。在32位中,第1位存是否为正负,前8位存指数,剩下的23位存有效位数。
ASCLL,美国信息交换标准代码,发明与1963年,是7位代码,足够存128个不同的值。
a:97 A:65
Unicode诞生,统一了所有编码的标准。1992年,解决了不同国家不同标准的问题。
最常见的Unicode是16位的,有超过一百万个位置。
4. 算数逻辑单元-ALU
ALU是计算机的数学大脑。
如果第9位有进位置,代表着2个数字的和太大了,超过了8位。这叫溢出
一般来说溢出的意思是,两个数字的和太大了,超过了用来表示的位数。
比如说:吃豆人用8位存当前的关卡数,如果你弯道了256关,ALU就会溢出。
手机电脑有专门来做乘法的算术单元,其他的没这么好运了。
5. 寄存器与内存
存储,这个叫做锁存,因为他锁定了一个值,放入数据的动作叫写入,拿出数据的动作叫读取。
一组这样的锁存器被称为“寄存器”,寄存器能存一个数字,这个数字有多少位,被称为“位宽”。他可以用到矩阵来弄出一堆的寄存器,这一堆寄存器就可以理解成为一个内存块。
内存有一个重要的特征:可以随时访问任何位置。因此也被称为“随机存取存储器”,简称RAM。RAM就是人们的短期记忆,记录当前在做什么事。
6. 中央处理器(CPU)
计算机的心脏----CPU。CPU会让ALU进行数学运算,也可以是内存指令,CPU会和内存通信,然后执行读或写。CPU这部分非常之复杂,大致理解就行。
取指令-->解码-->执行,CPU执行这个流程的速度被称为时钟速度。
1秒1次就是1赫兹。
所谓的超频就是修改时钟速度,加快了CPU的速度。
现代的CPU,比如英特尔i7,有上千个指令和指令变种,CPU是一块可被编程的硬件。