计算机概论背景篇

计算机发展简史

计算机发展的四个阶段

1946-1957 电子管计算机(埃尼阿克ENIAC)

  • 集成度小,空间占用大
  • 功耗高,运行速度慢
  • 操作复杂,更换程序需要接线

1957-1964 晶体管计算机

  • 集成度相对较高,空间占用相对小
  • 功耗相对较低,运行速度较快
  • 操作相对简单,交互更加方便

1964-1980 集成电路计算机

  • 计算机变得更小
  • 功耗变得更低
  • 计算速度变得更快

1980至现在 超大规模集成电路计算机

  • 一个芯片集成了上百万的晶体管
  • 速度更快,体积更小,价格更低,更能被大众接受
  • 用途丰富:文本处理、表格处理、高交互的游戏与应用

未来:生物计算机、量子计算机

计算机的分类

  • 超级计算机 —标记他们运算速度的单位是TFlop/s—神威 太湖之光(中国)
  • 大型计算机
  • 迷你计算机(服务器)–普通服务器已经代替了传统的大型机,成为大规模企业计算的中枢
  • 工作站
  • 微型计算机(个人PC)

计算机的体系与结构

  1. 冯诺依曼体系–将程序指令和数据一起存储的计算机设计概念结构
  2. 之前的计算机,硬件与功能对应,冯诺曼考虑将代码翻译成硬件通用的指令,以达到通用的效果
  3. 冯诺曼计算机结构:储存器、控制器、运算器、输入设备、输出设备
  4. cpu=运算器+控制器(冯诺曼瓶颈:CPU与存储器之间无法协调,CPU经常空转等待数据传输)
  5. 现代计算机结构—-CPU=运算器+控制器+存储器(以存储器为核心)

计算机的层次与编程语言

01
程序翻译与程序解释:
程序翻译:
较为高级的计算机语言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编码

0%