计算机组成原理开山篇——计算机系统概论

计算机系统概论

文章目录

  • 计算机系统概论
    • 开始之前两个问题?
      • 什么是计算机?
      • 计算机里有什么?
        • 主板
      • CPU
      • RAM
      • 硬盘
      • 电源盒
      • 拓展卡
        • 显卡
        • 声卡
        • 网卡
        • 蓝牙适配器
    • 计算机的分类
    • 计算机的发展
        • **ENIAC机**
        • **Turing机**
        • **冯诺依曼机的体系结构存(储程序型计算机)**
        • 现代微机结构
        • 现代计算机发展方向
        • 摩尔定律
      • 半导体存储器的发展
      • 微处理器的发展
    • 计算机的性能指标
        • 吞吐量
        • 响应时间
        • 利用率
        • 处理机字长(机器字长)
        • 总线宽度
        • 主存储器容量
        • 主存储器带宽
        • 主频/时钟周期
        • CPU执行时间
        • CPI(Cycle Per Instruction)(重)
        • MIPS(Million Instructions executed Per Second)
        • FLOPS(Floating-point Operations Per Second)
        • 其他的性能指标
    • 计算机的硬件
      • 硬件的组成要素
      • 计算机硬件(Hardware)
      • 运算器
      • 存储器
        • 特点:
        • 相关的概念
        • 存储器的分类:
      • 控制器
        • 功能
        • 主要任务:
        • 控制器工作的周期
      • 适配器与输入输出设备
        • 输入设备
        • 输出设备
        • 适配器
        • 系统总线
    • 计算机软件
      • 系统程序
        • 作用
        • 分类
      • 应用程序
      • 计算机软件的演变
    • 计算机系统的层次结构
      • 从不同角度看到的计算机的构成
      • 硬件与软件之间逻辑的等价性
        • 硬件
        • 软件
        • 固件

计算机组成原理开山篇——计算机系统概论_第1张图片

开始之前两个问题?

什么是计算机?

计算机组成原理开山篇——计算机系统概论_第2张图片

Computer is an electronic device that is designed to work with Information。

计算机是一种高速运行的电子设备,它是为信息工作的。

它用于进行数据的计算,可接受输入信息,然后根据用户要求对信息进行加工,最后输出结果。

计算机里有什么?

主板

主板是计算机的主电路板。这是一块薄板,用于容纳CPU内存硬盘驱动器和光盘驱动器的连接器,用于控制视频和音频的扩展卡(声卡,显卡等)以及某些插口(例如USB接口,内存条插槽)的连接。主板直接或间接连接到计算机的每个部分。

CPU

计算机组成原理开山篇——计算机系统概论_第3张图片

CPU( central processing unit,中央处理器),也叫处理器,位于主板上。CPU封装后通常是一个边长五厘米左右的陶瓷方块,内部装有硅芯片。CPU装在主板的CPU插槽中,该插槽由散热器覆盖,因为CPU工作会散发大量热,所以散热器可以从CPU吸收热量,避免CPU过热。

处理器的速度以兆赫兹(MHz)或每秒数百万条指令为单位和千兆赫(GHz)或每秒数十亿条指令。处理器运行速度越快,执行指令越快。CPU是决定计算机的实际速度的组件之一。

RAM

计算机组成原理开山篇——计算机系统概论_第4张图片

RAM(random access memory,随机存储器),电脑中的RAM我们常常称作内存条。它是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度非常快。

RAM是系统的短期内存。每当您的计算机执行计算时,它都会将数据临时存储在RAM中,然后进行计算。关闭计算机后,该短期记忆消失。如果您正在处理文档,电子表格等文件是,记得将其保存以避免丢失。当保存文件时,数据将写入硬盘驱动器,作为长期存储。

RAM以**兆字节(MB)千兆字节(GB)**为单位。拥有的RAM越多,计算机可以同时执行的功能越多。如果没有足够的RAM,在打开多个程序后,计算机会运行的很缓慢。

硬盘

计算机组成原理开山篇——计算机系统概论_第5张图片

硬盘驱动器是存储软件,文档和其他文件的位置。硬盘是长期存储设备,这意味着即使关闭计算机电源或拔掉电源,数据仍会保存。

当运行程序或打开文件时,计算机会将某些数据从硬盘驱动器复制到RAM。保存文件时,数据将复制回硬盘驱动器。硬盘驱动器越快,计算机启动和加载程序的速度就越快。

电源盒

计算机中的电源设备将电源插座的电源转换为计算机所需的电源类型。它通过电缆向主板和其他组件供电。

拓展卡

大多数计算机在主板上都有扩展槽,可让添加各种类型的扩展卡。也叫PCI (peripheral component interconnect,外围组件互联) 卡。不过大多数的主板已经预装好了这些卡。

显卡

显卡负责处理在显示器上显示的图像信息。大多数计算机在主板上内置了GPU(graphics processing unit,图形处理单元),而不是具有单独的显卡。但是如果需要更好的体验,还是装上独显,性能更好。

声卡

计算机组成原理开山篇——计算机系统概论_第6张图片

声卡负责扬声器或耳机中的声音。大多数主板都集成了声卡,也以升级到专用声卡以获得更高质量的声音。

网卡

网卡用来使你的计算机连接互联网,如果你的设备想要上网,必须要配备网卡。现在网卡主要有两种类型,有线网卡和无线网卡。

蓝牙适配器

蓝牙是一种用于短距离无线通信的技术。我们通常用于与无线键盘,鼠标和打印机等有蓝牙功能的设备连接。它通常内置在主板中或包含在无线网卡中。

计算机的分类

电子计算机从整体上可以分为两大类:数字计算机模拟计算机

  • 模拟计算机主要是指计算尺,时钟,电表这种模拟计算装置。它的特点是运算数值是连续的量,运算过程也是连续的。它主要处理的是模拟量信息
  • 数字计算机主要用数字来表示数量的大小。主要特点是按位运算和不连续的跳动计算。它主要处理的是数字量信息。

由于模拟计算机的精度和解题能力有限,所以应用范围很小。所以现在通常所说的计算机一般是指电子数字计算机。

数字计算机可进一步分为专用计算机通用计算机

  • 专用计算机是针对某一任务设计的最有效、最经济和最快速的计算机,但适应性很差。
  • 通用计算机虽然适应性很大,但是牺牲了效率、速度和经济性。

通用计算机又可分为单片机、微型机、小型机、中型机、大型机、超级计算机。

具体的分类可看下图:

计算机组成原理开山篇——计算机系统概论_第7张图片

计算机的发展

  • 第一代计算机(1946—1959年):电子管
  • 第二代计算机(1959—1964年):晶体管
  • 第三代计算机(1964—1975年):中小规模集成电路
  • 第四代计算机(1975—1990年):大规模、超大规模集成电路
  • 第五代计算机(1990—至今 ):甚大规模集成电路
  • 第六代计算机 (未来) :极大规模集成电路

ENIAC机

世界上第一台计算机ENIAC由1941年美国宾夕法尼亚大学开始研制,虽然耗费巨大且不完善,但是它奠定了电子计算机的基础。

ENIAC的特点

  • 十进制表示,
  • 程序用插线开关实现。

Turing机

1937年,Alan Turing提出一种通用计算机的概念,它可以执行任何一个描述好的程序(算法),实现需要的功能,形成了可计算性概念的基础。

图灵机的特点:

  • 并不是保存所有问题的结果;
  • 问题的求解由程序或过程给出,程序和过程可以通过语言描述
  • 计算机执行程序的时间是有限的。

冯诺依曼机的体系结构存(储程序型计算机)

为了改进程序的输入方式, 美国数学家冯.诺依曼,提出二进制表达方式和存储程序控制计算机构想。提出并描述一个计算机模型EDVAC(Electronic Discrete Variable Automatic Computer)。

计算机组成原理开山篇——计算机系统概论_第8张图片

冯诺依曼机器的主要特点:

  1. 计算机由运算器、存储器、控制器、输入设备和输出设备五大部分组成;
  2. 指令和数据存储在存储器中,并可以按地址访问;
  3. 指令和数据均以二进制表示
  4. 指令由操作码和地址码构成,操作码指明操作的性质,地址码表示操作数在存储器中的位置;
  5. 指令在存储器内按顺序存放,通常按自动的顺序取出执行;
  6. 机器以运算器为中心,I/O设备与存储器交换数据也要通过运算器。(后来有以存储器为中心的计算机结构)

现代微机结构

计算机组成原理开山篇——计算机系统概论_第9张图片
  1. 运算器、控制器和片内高速缓存,统称为CPU;而将CPU、主存储器、输入/输出接口和系统总线统称为主机;其余的设备均为外设。主机内仅包含主存储器,即内存;硬盘、光盘等辅助存储器属于I/O设备;
  2. 以存储器为中心。减轻CPU的数据传送负担,提高系统的整体性能;

现代计算机发展方向

巨型化,微型化,网络化,智能化,多媒体化

摩尔定律

1964年,英特尔公司创始人戈登.摩尔(Gordon Moore)在一篇很短的论文里断言:每18个月,集成电路的性能将提高一倍,而其价格将降低一半。这就是著名的摩尔定律

摩尔定律有另外一种表述方法,即每过10年计算机系统性能将会增加100倍,通讯带宽也会提高100倍,而花费的资金不会增加。

半导体存储器的发展

  • 20世纪50~60年代,磁芯存储器
    • 价格昂贵,体积大,破坏性读出
  • 1970年,半导体存储器
    • 价格更加昂贵,体积小,非破坏性读写
  • 1974年之后,半导体存储器
    • 价格不断降低,体积不断减少,读写速度更快。

微处理器的发展

  • 20世纪70年代的处理器
    • 4004 → \rightarrow 8008 → \rightarrow 8080 → \rightarrow 8086 → \rightarrow 8088
  • 20世纪80年代的处理器
    • 80286 → \rightarrow 386TM DX → \rightarrow 386TM SX → \rightarrow 486TM DX
  • 20世纪90年代的处理器
    • 486TM SX → \rightarrow Pentium → \rightarrow Pentium Pro → \rightarrow Pentium II → \rightarrow Pentium Ⅲ 最
  • 近10年的处理器
    • Pentium 4 → \rightarrow Itanium → \rightarrow Itanium 2 → \rightarrow ……

计算机的性能指标

吞吐量

表征一台计算机在某一时间间隔内能够处理的信息量

响应时间

输入有效到系统产生响应之间的时间度量,用时间单位来表示。

利用率

给定的时间间隔内,系统被实际使用的时间所占的比率,用百分比表示。

处理机字长(机器字长)

  • 处理机运算器中一次能够完成二进制运算的位数,如32、64位;
  • 机器字长与系统数据总线宽度具有一定的相关性。

总线宽度

一般指运算器与存储器之间的数据总线宽度。

主存储器容量

主存储器所能存储二进制数据的位数。或者说“主存储器中所有存储元的总数目。”,而非“存储单元”!

通常用KB、MB、GB、TB来表示。其中 K = 2 10 , M = 2 20 , G = 2 30 , T = 2 40 , B = 8 位 ( 1 个 字 节 ) K=2^{10},M=2^{20},G=2^{30},T=2^{40},B=8位(1个字节) K=210M=220G=230T=240B=81

1KB=1024B,1MB=1024KB, 1GB=1024MB,1TB=1024GB

存储器容量越大,记忆的二进制数越多。存储容量越大,能存储的信息就越多

主存储器带宽

单位时间内从主存储器读出的二进制信息量,一般用字节数/秒表示。

主频/时钟周期

CPU的工作节拍受主时钟控制,主时钟不断产生固定频率的时钟,主时钟的频率(f)叫CPU的主频。度量单位是MHz、GHz。

主频的倒数称为CPU时钟周期(T),即 T = 1 f , 度 量 单 位 是 微 秒 μ s 、 纳 秒 n s 。 T=\frac{1}{f},度量单位是微秒\mu s 、纳秒ns。 T=f1μsns

CPU执行时间

CPU执行一般程序所占用的CPU时间;

CPU执行时间 = 程序的总时钟周期数 × CPU时钟周期.

CPI(Cycle Per Instruction)(重)

执行一条指令所需的平均时钟周期数

平 均 C P I = 某 程 序 总 的 C P U 时 钟 周 期 数 该 程 序 包 含 的 指 令 条 数 平均CPI=\frac{某程序总的CPU时钟周期数} {该程序包含的指令条数 } CPI=CPU

MIPS(Million Instructions executed Per Second)

每秒百万指令数,即单位时间内执行的指令数;

M I P S = 指 令 数 程 序 执 行 时 间 MIPS = \frac{指令数 }{ 程序执行时间} MIPS=

FLOPS(Floating-point Operations Per Second)

每秒百万次浮点操作数,衡量机器浮点操作的性能

其他的性能指标

  • 主存储器的读写速度
  • IO的数据传送率
  • 带宽的均衡性
  • ……

I n I_n In:某程序中的指令总数;

N c N_c Nc:该程序所包含的总的时钟周期数;

t c p u t_{cpu} tcpu:该程序所需的CPU时间;

T T T:时钟周期;

f f f: 时钟频率;

T = 1 f T=\frac{1}{f} T=f1

下面是上面几个量的相互推导
t c p u = N c × T = N c × 1 f = C P I × I n × T = ∑ i = 1 n C P I i × I i I n × T C P I = N c I n = ∑ i = 1 n C P I i × I i I n M I P S = I n t c p u × 1 0 6 = 1 C P I × T × 1 0 6 = f C P I × 1 0 6 N c = ∑ i = 1 n C P I i × I i t_{cpu}=N_c\times T =N_c \times \frac1f = CPI \times I_n \times T =\sum_{i=1}^nCPI_i \times\frac {I_i}{I_n} \times T \\ CPI=\frac{N_c}{I_n}=\sum_{i=1}^{n}CPI_i \times \frac{I_i}{I_n}\\ MIPS=\frac{I_n}{t_{cpu}\times10^6}=\frac 1{CPI\times T \times10^6}=\frac f{CPI\times 10^6}\\ N_c=\sum_{i=1}^{n}CPI_i\times I_i tcpu=Nc×T=Nc×f1=CPI×In×T=i=1nCPIi×InIi×TCPI=InNc=i=1nCPIi×InIiMIPS=tcpu×106In=CPI×T×1061=CPI×106fNc=i=1nCPIi×Ii

实例

用一台50MHz处理机执行标准测试程序,它包含的混合指令数和相应所需的平均时钟周期数如下表所示:

指令类型 指令数目 平均时钟周期数
整数运算 45000 1
数据传送 32000 2
浮点运算 15000 2
控制传送 8000 2

求有效 C P I CPI CPI M I P S MIPS MIPS、处理机程序执行时间 t C P U t_{CPU} tCPU

解:
主 频 f = 50 M H z 总 指 令 数 I n = I 1 + I 2 + I 3 + I 4 = 45000 + 32000 + 15000 + 8000 = 100000 C P I = N c I n = ∑ i = 1 n C P I i × I i I n = 45000 × 1 + 32000 × 2 + 15000 × 2 + 8000 × 2 100000 = 1.55 ( 时 钟 周 期 / 指 令 ) M I P S = f C P I × 1 0 6 = 50 1.55 ≈ 32.258 t c p u = C P I × I n × 1 f = 1.55 × 1 × 1 0 6 ÷ ( 50 × 1 0 6 ) = 3.1 × 1 0 − 3 s 主频f=50MHz \\ 总指令数I_n=I_1+I_2+I_3+I_4=45000+32000+15000+8000=100000 \\ CPI=\frac{N_c}{I_n}=\sum_{i=1}^{n}CPI_i \times \frac{I_i}{I_n}=\frac {45000\times1+32000\times2+15000\times2+8000\times2}{100000}=1.55(时钟周期/指令) \\ MIPS=\frac{f}{CPI\times10^6}=\frac{50}{1.55}\approx32.258\\ t_{cpu}=CPI\times I_n \times\frac1f=1.55\times1\times10^6\div(50\times10^6)=3.1\times10^{-3}s f=50MHzIn=I1+I2+I3+I4=45000+32000+15000+8000=100000CPI=InNc=i=1nCPIi×InIi=10000045000×1+32000×2+15000×2+8000×2=1.55(/)MIPS=CPI×106f=1.555032.258tcpu=CPI×In×f1=1.55×1×106÷(50×106)=3.1×103s

计算机的硬件

硬件的组成要素

已知a=1、b=2、c=3、x=4假设我们要用计算器计算 y = a x + b − c y=ax+b-c y=ax+bc,该怎么做呢?

  1. 获取数据a和数据x;
  2. 输入计算器,得出结果;
  3. 继续获取数据b,送入计算器;
  4. 得到结果,继续获取数据c;
  5. 送入计算器,获得结果;
  6. 在纸上记录结果;

在此过程中:

纸相当于存储器,保存源数据和目的数据;

计算器相当于运算器,运算和暂存中间结果;

笔和手:输入和输出设备,将数据输入和输出。

我们自己:相当于控制器,协调整个过程。

计算机组成原理开山篇——计算机系统概论_第10张图片

计算机硬件(Hardware)

是指构成计算机的所有实体部件的集合,通常这些部件由电路(电子元件)、机械等物理部件组成

计算机硬件指可触摸得到的物理设备实体

运算器

计算机组成原理开山篇——计算机系统概论_第11张图片

运算器就好比由一个电子线路组成的算盘。既可以进行加减乘除等算数运算,也可以进行逻辑运算。因此运算器被称为ALU(算术逻辑单元)

特点:

  1. 采用二进制数据进行运算
  2. 运算器一次可以处理的数据位数称为机器字长
  3. 机器字长一般为8、16、32、64位,机器字长直接决定着运算的精度和能力

运算器的结构

计算机组成原理开山篇——计算机系统概论_第12张图片

存储器

保存所有的程序和数据。

特点:

  • 二进制形式保存程序和数据;
  • 存储器是按存储单元组织的,读写存储单元必须给出单元地址

相关的概念

存储元:用于保存一位0/1二进制数据的物理器件;

存储单元:能够保存一个字数据的器件,由若干个存储元构成;

单元地址:能区分每一个存储单元的编号,一般从0开始编号;

存储容量:一个存储器所能保存的二进制信息的总量

注意:不同系统中的存储器组织方式并不一定相同;

计算机组成原理开山篇——计算机系统概论_第13张图片

存储器的分类:

  • 外存(辅助存储器)
    • 磁盘存储器、光盘存储器;
    • CPU不可直接访问;
  • 内存(主存储器)
    • 半导体存储器;
    • CPU直接访问,存放当前系统运行所需的所有的程序和数据

两个与主存相关的寄存器

  • MAR(存储器地址寄存器):接收由CPU送来的地址信息;
  • MDR(存储器数据寄存器):作为外界与存储器之间的数据通路。
计算机组成原理开山篇——计算机系统概论_第14张图片

控制器

控制器是计算机中发号施令的部件,它控制计算机的其他各部件有条不紊的运行。

功能

根据所要执行指令的功能,按顺序发出各种控制命令,协调计算机各个部件的工作。

主要任务:

  • 解释并执行指令;
  • 控制指令的执行顺序;
  • 负责指令执行过程中,操作数的寻址;
  • 根据指令的执行,协调相关部件的工作
  • 如运算类指令执行时对标志寄存器的影响设置。

相关概念:

指令:解决复杂问题时,把问题简化为一些基本的操作,而每一个基本的操作就叫做指令

计算程序:解决该问题的一串指令序列,叫做该问题的计算程序,简称程序。

指令的组成:操作码和地址码

指令系统是衡量计算机性能的一个重要标准。

控制器工作的周期

  • 取指周期:取指令的一段时间
  • 执行周期:执行指令的一段时间
  • 指令按顺序执行的控制部件:指令计数器
    • 每取出一条指令,指令计数器就加1;
    • 遇到转移类指令,控制器根据所执行指令设置指令计数器的值;

相关概念

  • 数据字:该字代表要处理的数据;
  • 指令字:该字为一条指令;
  • 指令流:取指周期中,从内存读出的信息流;
  • 数据流:执行周期中,从内存读出的信息流。

适配器与输入输出设备

输入设备

将人们熟悉的某种信息形式变换为机器内部所能接收和识别的二进制信息形式的设备。

输出设备

把计算机的处理结果变成人或其他机器设备所能接收和识别的信息形式的设备。

适配器

保证外围设备用计算机系统特性要求的形式发送或接收信息。

系统总线

构成计算机系统的骨架,是多个系统部件之间进行数据传送的公共通路。

计算机软件

没有软件的计算机是没有灵魂的。相当于它只有一个空壳。

用在一台计算机的各种程序,统称为计算机的程序或软件系统。

计算机的软件分为两大类:

  • 系统软件
  • 应用软件

系统程序

作用

  • 简化使用方法;
  • 提升计算机的效率;
  • 发挥和扩大计算机的功能和用途。

分类

  1. 服务类程序
    • 诊断程序、排错程序、联系程序等
  2. 语言程序
    • 汇编程序、编译程序、解释程序、连接程序等
  3. 操作系统
  4. 数据库管理系统

应用程序

应用程序是用户为了解决某些问题而编制的程序。

如工程控制程序、数据处理程序、企业管理程序等。

计算机软件的演变

早期的手编程序,直接用机器语言来编写。机器语言是指机器指令的二进制代码。

汇编语言,人们把一些文字、符号、数字按照规定的格式来表示不同的指令,然后用这些指令来编写程序。它是一种能够转化为二进制文件的符号语言。

人们编写汇编语言,但计算机只认识机器语言。

于是,人们创造了一种程序,汇编器。它来当作翻译官,把人们能看懂的汇编语言翻译成机器能看懂的机器语言。这里汇编器充当着翻译官的作用。

但是像汇编语言这种符号语言,和数学语言还是有些差别。使用计算机的人需要花费大量的时间来学习计算机的指令系统。所以人们有开发出来接近数学语言的算法语言

与算法语言配套的有编译程序。编译程需要一定的运行系统,所以把编译程序和运行系统一起称做编译器。

操作系统的出现。

数据库与数据库管理软件。

计算机系统的层次结构

从不同角度看到的计算机的构成

  • 高级语言级
    • 软件级,使用高级语言;
  • 汇编语言级
    • 软件级,使用汇编语言;
  • 操作系统级
    • 混合级,使用机器指令和广义指令;
  • 一般机器级
    • 硬件级,使用微程序解释机器语言;
  • 微程序设计级
    • 硬件级,硬件信号作用于计算机;
计算机组成原理开山篇——计算机系统概论_第15张图片

硬件与软件之间逻辑的等价性

硬件

指计算机系统中使用的电子线路和物理装置;

软件

指挥整个计算机硬件系统工作的程序集合;由人们事先编制成具有各类特殊功能的信息组成;

固件

具有某软件功能的硬件,一般用ROM类存储器实现。如计算机主板上的BIOS,路由器、数码相机、PDA、GPS、电视机顶盒等电子类产品也都包含有固件;功能上是软件,形态上是硬件。

你可能感兴趣的:(计算机组成原理)