计算机概论背景篇

计算机发展简史

四个阶段

第一阶段:电子管计算机

在这里插入图片描述

第二次世界大战是电子管计算机产生的催化剂。

第一台电子计算机:埃尼阿克(ENIAC)(1946),计算射击参数需要几千次计算才能计算出来。

埃尼阿克特点:

  1. 18000多个电子管
  2. 运行耗电量150千瓦
  3. 重量达30吨,占地1500平方英尺

电子管计算机特点:

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

第二个阶段:晶体管计算机

在这里插入图片描述
晶体管计算机特点:

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

第三个阶段:集成电路(IC)计算机

在这里插入图片描述

此时的计算机**(特点)**变得更小、功耗变得更低、计算速度变得更快,具备了进入千家万户的条件。

第四个阶段:超大规模集成电路计算机

特点:

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

计算机元件的更新换代

  1. 摩尔定律(集成电路的性能,相同价位下,每18-24个月就会提升一倍)
  2. 半导体存储器的发展
  3. 微处理器的发展

计算机的分类

超级计算机

功能最强、运算速度最快、存储容量最大的计算机;功能最强、运算速度最快、存储容量最大的计算机。

标记他们运算速度的单位是TFlop/s。1TFlop/s=每秒一万亿次浮点计算。

举例:
Intel® Core™ i7-6700K CPU @ 4.00GHz: 44.87 GFlop/s
44.87 GFlop/s = 0.04487TFlop/s

大型计算机

又称大型机、大型主机、主机等;具有高性能,可处理大量数据与复杂的运算;在大型机市场领域,IBM占据着很大的份额。

迷你计算机(服务器)

也称为小型机,普通服务器;不需要特殊的空调场所;具备不错的算力,可以完成较复杂的运算。

普通服务器已经代替了传统的大型机,成为大规模企业计算的中枢。

工作站

高端的通用微型计算机,提供比个人计算机更强大的性能;类似于普通台式电脑,体积较大,但性能强劲。

微型计算机

又称为个人计算机,是最普通的一类计算机。

从构成的本质上来讲,个人计算机与前面的分类无异。

计算机的体系与结构

冯诺依曼体系

将程序指令和数据一起存储的计算机设计概念结构。

早期电脑仅含固定用途程序,改变程序得更改结构、重新设计电路。

冯诺依曼体系实现了存储程序指令设计通用电路。

冯诺依曼体系组成

在这里插入图片描述
CPU = 运算器 + 控制器

  1. 存储器
  2. 控制器
  3. 运算器
  4. 输入设备
  5. 输出设备

冯诺依曼体系功能

  1. 能够把需要的程序和数据送至计算机中
  2. 能够长期记忆程序、数据、中间结果及最终运算结果的能力
  3. 能够具备算术、逻辑运算和数据传送等数据加工处理的能力
  4. 能够按照要求将处理结果输出给用户

冯诺依曼体系瓶颈

CPU处理速度快而存储设备传输速度慢,导致CPU经常空转等待数据传输。

现代计算机体系

现代计算机在冯诺依曼体系结构基础上进行修改;解决CPU与存储设备之间的性能差异问题。

在现代计算机体系中CPU = 运算器 + 控制器 + 存储器

产生了更高速的设备:内存、CPU寄存器等。

现代计算机体系可以理解是以存储器为核心。

计算机的层次与编程语言

程序翻译与程序解释

程序翻译(C/C++、Object-C、Golang):较为高级的计算机语言L1(L1进行程序逻辑描述)被编译器编译成较为低级的计算机语言L0(较为低级的计算机语言L0)。

程序解释(Python、Php、Javascript):较为高级的计算机语言L1使用L0语言实现另一个程序(解释器)解释为较为低级的计算机语言L0。

(翻译 + 解释语言:Java、C#,Java程序被编译为JVM字节码、字节码在被解释为机器码)

总结

  1. 计算机执行的指令都是L0
  2. 翻译过程生成新的L0程序,解释过程不生成新的L0程序
  3. 解释过程由L0编写的解释器去解释L1程序

计算机的层次与编程语言

在这里插入图片描述
硬件逻辑层:门、触发器等逻辑电路组成,门、触发器等逻辑电路组成。

微程序机器层: 编程语言是微指令集微指令所组成的微程序直接交由硬件执行。
微指令 < 微程序 = 机器指令
一条机器指令对应一个微程序;一个微程序对应一组微指令。

传统机器层:编程语言是CPU指令集(机器指令);编程语言和硬件是直接相关;不同架构的CPU使用不同的CPU指令集。

操作系统层:向上提供了简易的操作界面;向下对接了指令系统,管理硬件资源;操作系统层是在软件和硬件之间的适配层。

汇编语言层:编程语言是汇编语言;汇编语言可以翻译成可直接执行的机器语言;完成翻译的过程的程序就是汇编器。

高级语言层:编程语言为广大程序员所接受的高级语言;高级语言的类别非常多,由几百种;常见的高级语言有:Python、Java、C/C++、Golang等。

应用层:满足计算机针对某种用途而专门设计,如:office办公软件等。

计算机的计算单位

容量单位

在物理层面,高低电平记录信息;理论上只认识0/1两种状态;0/1能够表示的内容太少了,需要更大的容量表示方法;

0/1称为bit(比特位)

在这里插入图片描述
1024 = 2 ^ 10

问题:

  1. 1G内存,可以存储多少字节的数据?可以存储多少比特数据?
    1G = 10243 Bytes = 10243 * 8bits

  2. 为什么网上买的移动硬盘500G,格式化之后就只剩465G了?
    硬盘商一般用10进位标记容量
    𝟓𝟎𝟎 ∗ 𝟏𝟎𝟎𝟎𝟑 / 𝟏𝟎𝟐𝟒𝟑 ≈ 𝟒𝟔5

100M宽带:这里的100M并不是指容量

速度单位

网络速度

100M宽带:100M/s

问题:为什么电信拉的100M光纤,测试峰值速度只有12M每秒?

网络常用单位为(Mbps):100M/s = 100Mbps = 100Mbit/s

100Mbit/s=(100/8)MB/s=12.5MB/s

CPU速度

  1. CPU的速度一般体现为CPU的时钟频率;
  2. CPU的时钟频率的单位一般是赫兹(Hz)
  3. 主流CPU的时钟频率都在2GHz以上

Hz其实就是秒分之一,并不是描述计算机领域所专有的单位,并不是描述计算机领域所专有的单位。

2GHz = 2*1000^3Hz = 每秒20亿次

计算机的字符与编码集

字符编码集的历史

ASCII码

使用7个bits就可以完全表示ASCII码:包含95个可打印字符;33个不可打印字符(包括控制字符)。

𝟑𝟑 + 𝟗𝟓 = 𝟏𝟐𝟖 = 𝟐7

Extended ASCII码

第一次对ASCII码进行扩充,7bits => 8bits

加入了常见数学运算符、带音标的欧洲字符、带音标的欧洲字符。

字符编码集的国际化

  1. 欧洲、中亚、东亚、拉丁美洲国家的语言多样性
  2. 语言体系不一样,不以有限字符组合的语言
  3. 中国、韩国、日本等的语言最为复杂

中文编码集

《信息交换用汉字编码字符集——基本集》(GB2312),一共收录了 7445 个字符, 包括 6763 个汉字和 682 个其它符号。

《汉字内码扩展规范》(GBK):向下兼容GB2312,向上支持国际ISO标准,收录了21003个汉字,支持全部中日韩汉字。

Unicode(统一码、万国码、单一码):定义了世界通用的符号集,是兼容全球的字符集,UTF-*实现了编码;UTF-8以字节为单位对Unicode进行编码。

Windows系统默认使用GBK编码;编程推荐使用UTF-8编码。

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FeatherWaves

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值