计算机发展简史
计算机发展的四个阶段
1946-1957 电子管计算机(埃尼阿克ENIAC)
- 集成度小,空间占用大
- 功耗高,运行速度慢
- 操作复杂,更换程序需要接线
1957-1964 晶体管计算机
- 集成度相对较高,空间占用相对小
- 功耗相对较低,运行速度较快
- 操作相对简单,交互更加方便
1964-1980 集成电路计算机
- 计算机变得更小
- 功耗变得更低
- 计算速度变得更快
1980至现在 超大规模集成电路计算机
- 一个芯片集成了上百万的晶体管
- 速度更快,体积更小,价格更低,更能被大众接受
- 用途丰富:文本处理、表格处理、高交互的游戏与应用
未来:生物计算机、量子计算机
计算机的分类
- 超级计算机 —标记他们运算速度的单位是TFlop/s—神威 太湖之光(中国)
- 大型计算机
- 迷你计算机(服务器)–普通服务器已经代替了传统的大型机,成为大规模企业计算的中枢
- 工作站
- 微型计算机(个人PC)
计算机的体系与结构
- 冯诺依曼体系–将程序指令和数据一起存储的计算机设计概念结构
- 之前的计算机,硬件与功能对应,冯诺曼考虑将代码翻译成硬件通用的指令,以达到通用的效果
- 冯诺曼计算机结构:储存器、控制器、运算器、输入设备、输出设备
- cpu=运算器+控制器(冯诺曼瓶颈:CPU与存储器之间无法协调,CPU经常空转等待数据传输)
- 现代计算机结构—-CPU=运算器+控制器+存储器(以存储器为核心)
计算机的层次与编程语言

程序翻译与程序解释:
程序翻译:
较为高级的计算机语言L1生成较为低级的计算机语言L0,交给计算机执行
程序解释:
较为高级的计算机语言L1交给低级语言执行L0,不生成新的低级语言代码计算机的层次与编程语言
计算机的层次与编程语言
硬件逻辑层:逻辑电路
微程序机器层:编程语言是微指令集,微指令所组成的微程序直接交由硬件执行
传统机器层:编程语言是CPU指令集(机器指令),编程语言和硬件是直接相关,一条机器指令对应一个微程序, 一个微程序对应一组微指令
操作系统层:简易的操作界面,向下对接了指令系统,管理硬件资源,操作系统层是在软件和硬件之间的适配层
汇编语言层:编程语言是汇编语言(人类可理解),汇编语言可以翻译成可直接执行的机器语言
高级语言层:广大程序员所接受的高级语言
应用层:软件
计算机的计算单位
1、容量单位
0/1称为bit(比特位) 8bit=1Byte 2^10=1024KB千字节、MB兆字节、GB吉字节、TB太字节、PB拍字节、EB艾字节
2、速度单位
网络速度(Mbps)
100M/s = 100Mbps = 100Mbit/s=(100/8)MB/s=12.5MB/s
CPU速度(Hz)
Hz其实就是秒分之一,它是每秒中的周期性变动重复次数的计量
2GHz = 2*1000^3Hz = 每秒20亿次
计算机的字符与编码集
1、字符编码集的历史
ASCII码 使用7个bits表示 包含95个可打印字符和33个不可打印字符(包括控制字符)
Extended ASCII码 第一次对ASCII码进行扩充,7bits => 8bits,常见数学运算符、带音标的欧洲字符、其他常用符、表格符等
2、中文编码集
GB2312《信息交换用汉字编码字符集——基本集》:一共收录了 7445 个字符(包括 6763 个汉字和 682 个其它符号)
GBK《汉字内码扩展规范》:向下兼容GB2312,向上支持国际ISO标准,收录了21003个汉字,支持全部中日韩汉字
Unicode:统一码、万国码、单一码
UTF-*实现了编码,UTF-8以字节为单位对Unicode进行编码
Windows系统默认使用GBK编码、编程推荐使用UTF-8编码