计算机基础(一)
计算机发展简介
-
第一个阶段 电子管计算机
- 第二次世界大战是电子管计算机产生的催化剂
- 埃尼阿克
- 战争使用了飞机和火箭
- 打的准则需要计算射击参数
- 射击参数需要几千次运算才能计算出来
- 18000多个电子管
- 运行耗电量159千瓦
- 重量达30吨,占地1500平方英尺
- 集成度小,空间占用大
- 功耗大,运算速度慢
- 操作复杂,更换程序需要接线
-
第二个阶段:晶体管计算机
- 贝尔实验室的三个科学家发明了晶体管
- 全世界第一台晶体管计算机tx-0
- PDP-1,4k内存,每秒200,000指令,配备512*512的显示器
- 集成度相对较高,空间占用相对小
- 功耗相对较低,运行速度较快
- 操作相对简单,交互更加方便
-
第三个阶段:集成电路计算机
- 计算机变得更小
- 功耗变得更低
- 计算速度变得更快
- IBM有两款计算机(7094,1401)
- 主打功能不同
- 相互无法兼容
- 不愿意投入两组人力
- 因此推出兼容产品System/360 --> 操作系统的雏形
-
超大规模集成电路计算机
- 一个芯片集成上百万晶体管
- 速度更快,体积更小,价格更低,更能被大众接受
- 用途丰富:文本处理,表格处理,高交互的游戏与应用
-
未来的计算机
-
生物计算机
- 体积小,效率高
- 不易损坏,生物级别的自我修复
- 不受信号干扰,无热损耗
-
量子计算机
- 13年5月,谷歌和NASA发布D-Wave Two
- 17年5月,中国科学院宣布制造出光量子计算机
- 19年1月,IBM展示了世界首款商业化量子计算机
- 腾讯在2017年组建了量子实验室
- 阿里巴巴在2017年成立了达摩院
-
-
微型计算机的发展历史
-
单核CPU
- 1971-1973 500kHz频率的微型计算机(字长8位)
- 1973-1978 高于1MHz频率的微型计算机(字长8位)
- 1978-1985 500MHz频率的微型计算机(字长16位)
- 1985-2000 高于1GHz频率的微型计算机(字长32位)
- 2000-今 高于2GHz频率的微型计算机(字长为64位)
摩尔定律:集成电路的性能,每18-24个月就会提升一倍
-
多核CPU
- 2005 Intel奔腾系列双核CPU AMD速龙系列
- 2006 Intel酷睿四核CPU
- Intel 酷睿系列十六核CPU
- Intel 至强系列五十六核CPU
-
计算机的分类
-
超级计算机
- 功能最强 运算速度最快 存储容量最大的计算机
- 多用于国家高科技领域和尖端技术研究
- 标记他们运算速度的单位是TFlop/s
1TFlop/s=每秒一万亿万次浮点计算
Intel(R) Core(TM) i7-6700k CPU @4.00GHz: 44.87GFlop/s
44.87GFlop/s=0.04487TFlop/s
-
大型计算机
- 大型主机
- 高性能 处理大量数据与复杂运算
- 在大型机市场领域,IBM占据着很大的份额
cobol编程语言
- 去"IOE"行动 I(IBM) O(Oracle) E(EMC),代表了高维护费用的存储系统
- 不够灵活,伸缩性弱
- 2009年成立阿里云
-
迷你计算机(服务器)
- 也称为小型机,普通服务器
- 不需要特殊的空调场所
- 具备不错的算例,可以完成较复杂的运算
-
工作站
- 高端的通用微型计算机,提供比个人计算机更强大的性能
- 类似于普通台式电脑,体积较大,但性能强劲
-
微型计算机
- 又称为个人计算机,是最普通的一类计算机(台式计算机 笔记本 一体机)
计算机的体系与结构
冯诺依曼体系
将程序指令和数据一起存储的计算机设计概念结构
早期计算机仅含固定用途程序
改变程序得更改结构 重新设计电路
把程序存储起来并设计通用电路
- 必须有一个存储器
- 必须有一个控制器
- 必须有一个运算器
- 必须有输入设备
- 必须有输出设备
现代计算机都是冯诺依曼机
- 能够把需要的程序和数据送到计算机中
- 能够长期记忆程序、数据、中间结果以及最终运算结果的能力
- 能够具备算术、逻辑运算和数据传送等数据加工处理的能力
- 能够按照要求将处理结果输出给用户
冯诺依曼瓶颈:CPU和存储器速率之间的问题无法调和
CPU经常空转等待数据传输
现代计算机的结构
- 现在计算机在冯诺依曼体系结构基础上进行修改
- 解决CPU与存储设备之间的性能差异问题
CPU以存储器为核心
计算机的层次与编程语言
- 程序翻译与程序解释
- 计算机的层次与编程语言
程序翻译与程序解释
人类语言 与 计算机语言 并不互通
需要进行语言之间的转换
较为高级的计算机语言L1
较为低级的计算机语言L0
高级语言----编译器---->低级语言(程序翻译)
高级语言----解释器---->低级语言(程序解释)
计算机执行的指令都是低级语言
翻译过程生成新的L0程序,解释过程不生成新的L0程序
解释过程由L0编写的解释器去解释L1程序
程序翻译:C/C++ Object-C Golang
程序解释:Python Php JavaScript
翻译+解释:Java C#
计算机的层次与编程语言
应用层 `
高级语言层 |
汇编语言层 | 虚拟机器
操作系统层 ,
传统机器层 |
微程序机器层 | 实际机器层
硬件逻辑层 ,
- 硬件逻辑层
- 门,触发器等逻辑电路组成
- 属于电子工程的领域
- 微程序机器层
- 编程语言是微指令器