第一章计算机系统概论

1.1 计算机系统简介

软硬件
  • 硬件:计算机的实体部分
  • 软件:有人们事先编制的具有各类特殊功能程序的组成,通常有系统软件和应用软件两大类
    • 系统程序:主要用来管理整个计算机系统,监事服务,使系统资源得到合理调度,高效运行。
    • 应用软件:根据用户需求编写的各种程序。
层次结构
  • 三级层次结构的计算机系统

    • 第三级:虚拟机器M3(高级语言程序):将高级语言程序先翻译成汇编语言程序,再在M2,M1(或直接在M1)上执行
    • 第二级:虚拟机器M2(汇编语言机器):将汇编语言程序先翻译成机器语言程序,再在M1上执行
    • 第一级:实际机器M1(机器语言机器):机器语言程序直接在M1上执行
  • 四级层次结构计算机系统

    • 第三级虚拟机器M3(高级语言机器):用编译程序翻译成汇编语言程序或其他中间语言程序
    • 第二级虚拟机器M2(汇编语言机器):用汇编程序翻译成机器语言程序
    • 第一级传统机器M1(机器语言机器):永威程序解释机器指令
    • 第零级微程序机器M0(微指令系统):由硬件直接执行微指令
计算机组成和计算机体系结构
  • 计算机体系结构:那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性
  • 计算组成:如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的硬件环节

1.2计算机基本组成

冯诺依曼计算机特点
  • 六大特点:
    • 计算机有运算器、存储器、控制器、输入设备、输出设备
    • 指令和和数据以同等地位存放于存储器内,按照地址寻访
    • 指令和数据均采用二进制数表示
    • 指令有操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置
    • 指令在存储器中按顺序存放。通常,指令顺序执行,在特定条件下按照设定条件和运算结果发生顺序改变
    • 机器以运算器为中心、输入输出设备与存储器间的数据传送通过运算器完成
  • 图解

第一章计算机系统概论_第1张图片

  • 五大部件的功能如下

    • 运算器:用以进行算术运算和逻辑运算,并将运算结果保存在运算器中。

    • 控制器:用以控制、指挥程序和数据的输入、运算和处理结果。

    • 存储器:用以存放程序和数据。

    • 输入设备:将用户能识别的信息转化成机器能识别的信息。

    • 输出设备:将机器信息转化成用户能识别的信息并输出。

  • 以存储器为中心的计算机结构原因:由于输入输出设备和存储器之间的数据传送都需要通过运算器来完成,每次数据经过运算器,都使运算器停止运算,降低了系统工作效率,后来出现了以存储器为中心的计算机结构。

第一章计算机系统概论_第2张图片

  • 而由于运算器和控制器的电路结构关联紧密,人们后来将这两个部件集成在同一芯片中,该芯片被称作中央处理器(CPU),因此,现代计算机系统硬件结构主要分为三大部分:CPU、主存、I/O设备(输入输出设备)。其中CPU和主存合起来被称为主机。

第一章计算机系统概论_第3张图片

  • 细化的计算机组成框图

第一章计算机系统概论_第4张图片

主存储器:
  • 第一章计算机系统概论_第5张图片

  • 主存储器又称主存,由存储器,各种逻辑部件和控制电路组成

  • 存储器内有多个存储单元,每个存储单元有多个存储元(元件、基元)组成,一个存储元可以包含以为二进制数

  • 一个存储单元包括一个存储字,一个存储字由遗传二进制代码组成,存储字长就是二进制代码的位数

  • 1个存储体 = 多个存储单元;1个存储单元 = 1个存储字 = N个存储基元 = N个二进制代码,其存储字长为N位

  • 访存:存储体中的每个存储单元都配有相应的地址号,主存的工作方式是 根据这些地址号对相应存储单元的二进制位进行写入或读出,从而实现存取操作,这种根据地址来访问存储数据的方式称为按地址访问存储器,简称为访存。

  • 两个寄存器,分别是MAR和MDR

  • MAR(Memory Address Register,存储地址寄存器)用以寄存将要访问的存储单元的地址号,系统进行访存时,会根据MAR内寄存的地址号来找到存储体中对应地址的存储单元。MAR位数是对应存储体内的存储单元个数

  • MDR(Memory Data Register,存储数据寄存器)用以取出对应地址的存储单元内的数据,或存放要保存在相应地址的存储单元内的数据。MDR位数是存储单元的存储字长

运算器
  • 第一章计算机系统概论_第6张图片
  • 3种寄存器(ACC、MQ、X)和一个算术逻辑单元(ALU)
  • ACC(Accumulator)为累加寄存器,用以存放被加数及和、被减数及差、积高位、被除数及余数。
  • MQ(Multiplier-Quotient Register)为乘商寄存器,用以存放乘数及积低位、商。
  • X为操作数寄存器,用以存放加数、减数、被乘数、除数。
  • ALU(Arithmetic Logic Unit)为算术逻辑单元,用以处理算术逻辑运算,是CPU的核心部件之一。
  • 第一章计算机系统概论_第7张图片
控制器
  • 第一章计算机系统概论_第8张图片
  • 相当于计算机系统的神经中枢,负责控制计算机各部件自动、协调的运作。
  • 控制器的工作方式分三步,分别是取指令、分析指令以及执行指令。
  • CU(Control Unit)即控制单元,用以解释指令,向各部件发送操作命令以执行指令。
  • PC(Program Counter)即程序计数器,存放将要访问的指令地址,与MAR有直接通道,每次指令执行完毕后会自动对本身所存地址值进行+1操作,来达到依次访问指令地址的功能,直至机器停止作业为止。
  • IR(Instruction Register)即指令寄存器,用以接收MDR传送过来的指令(取指令),也用以将指令的操作码交由CU分析(分析指令,记作OP(IR)→CU),以及将指令的地址码交由MAR(记作Ad(IR)→MAR),来取得存储体内对应数据。
I/O
  • I/O子系统包含各种I/O设备(Input-Ouput Equipment,输入输出设备)和接口,I/O设备通过接口与主机相连,接收主机发出的控制命令来完成相应作业。

计算机硬件指标

  • 三要素:机器字长,存储容量,运算速度
  • 机器字长是CPU一次操作能处理的数据的位数,通常跟CPU内的寄存器有关。机器字长的大小,决定了CPU执行指令的效率,假设CPU要做一次取指操作,若机器字长比存储单元字长短,则需要访存两次或以上才能完成。
  • 存储容量包括主存容量和辅存容量。
  • 主存存储容量 = 存储单元 * 存储字长 还有也有可能是字节数为单位
  • 辅存容量以字节为单位
  • 运算速度:吉普森(Gibson)法
T_{M}  = \sum_{i=1}^nf_{i} t_{i} 

式中:n:指令的种类

f:第i种指令出现的频度

t_i为第i种指令的执行周期
  • 平均运算速度 指令平均执行速度
V_m =  \frac {1} { T_m}
  • 常用来衡量运算速度的有三种单位,分别是MIPS、CPI、FLOPS。
  • MIPS(Million Instruction Per Second)即百万条指令每秒,以在一秒内执行的指令条数来衡量。
  • CPI(Cycle Per Instruction)即每条指令所需时钟周期(机器主频的倒数)数。
CPI =\frac  {执行程序所需要的时钟周期数} {所执行的指令条数}

IPC  = \frac {1}{CPI}

  • FLOPS(Floating Point Operation Per Second)即每秒内所作的浮点运算次数。
  • IPC:CPI的倒数

一条指令在计算机中的走向过程

  • 图见PPT
  • 文字步骤:
    • 取指令:根据程序计数器中存放的地址到存储地址寄存器,命令存储器做读操作,再去存储体M中获取的数据地址内容,送到存储数据寄存器,再由MDR送到IR(指令寄存器),
    • 分析指令:经过CU分析后,PC自动完成+1操作。
    • 执行指令:将数据依次再次从IR到MAR到M到MDR,之后要送到CPU的运算器中,用到ACC、MQ等等算术逻辑单元,进行运算。
graph LR
PC-->MAR
MAR--> M
M --> MDR
MDR --> IR
graph LR
IR/OP-->CU
PC+1--> PC
graph LR
ad/IR此时是地址码-->MAR
MAR--> M
M -->MDR
MDR --> ACC/MQ

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