“ComputerOrganization:Chapter01-计算机系统概论”的版本间的差异

来自Jimmy's Wiki
跳到导航 跳到搜索
(修改格式)
(修改格式)
 
(没有差异)

2021年10月12日 (二) 09:29的最新版本

计算机系统(Computer System)简介

计算机系统的软、硬件

  • 硬件(Hardware):是指计算机的实体部分,它由“看得见、摸得着”的各种电子元器件,各类光、电、机设备的实物组成,如主机、外部设备等。
  • 软件(Software):“看不见摸不着”,由人们事先编制的具有各类特殊功能的程序组成。通常又可以分为两大类:系统软件应用软件
  • 系统软件:又称系统程序,主要用来管理整个计算机系统,监视服务,使系统资源得到合理调度,高效运行。一般包括标准程序库、语言处理程序、操作系统、服务程序、数据库管理系统、网络软件等。
  • 应用软件:又称应用程序,它是用户根据任务需要所编制的各种程序,如科学计算程序、数据处理程序、过程控制程序、事务管理程序等。

计算机系统=硬件+软件=硬件+系统软件+应用软件

在计算机的发展历史上,硬件和软件是互相促进发展的。硬件提供的环境推动软件的发展;软件发展的需求拉动硬件的进步。

  • 摩尔定律(Moore's Law):集成电路上可容纳的晶体管数目,约每隔两年便会增加一倍
  • 安迪比尔定律(Andy and Bill's Law):“Andy gives, Bill takes away.”,即硬件提高的性能,很快被软件消耗掉了

计算机解决问题步骤

  1. 将高级语言程序输入计算机;
  2. 计算机将高级语言翻译为目标程序;
  3. 计算机执行目标程序;
  4. 返回程序输出结果。

计算机系统层次

  1. $M_3$:高级语言程序经由编译生成汇编语言程序;
  2. $M_2$:汇编语言在操作系统虚拟层辅助下生成机器语言;
  3. $M_1$:机器语言在实际机器上被翻译成处理器微指令;
  4. $M_0$:微指令在处理器上直接执行。
  • 实际机器:直接执行机器语言的机器。
  • 虚拟机(Virtual Machine):软件实现的机器。
  • 编译(Compile)程序:先将高级语言程序翻译成机器指令程序,再执行程序。
  • 解释(Interpret)程序:一边将高级语言程序语句翻译成机器指令,一边执行机器指令。

计算机组成和计算机体系结构

  • 计算机体系结构(Computer System Architecture):机器语言程序员所看到的机器的属性。
  • 计算机组成(Computer Organization):如何实现计算机体系结构所体现的属性。
  • 品牌机/系列机:由同一厂家生产的,具有相同的体系结构,不同的计算机组成。
  • 兼容机:由不同厂家生产的,具有相同的体系结构,不同的计算机组成。

计算机的基本组成

冯·诺依曼计算机(Von Neumann Machine)的特点

  1. 计算机由运算器(Processor)、存储器(Memory)、控制器(Controller)、输入设备输出设备(I/O)组成;
  2. 指令和数据以同等地位存放于存储器内,并可按地址寻访;
  3. 指令和数据均用二进制数表示;
  4. 指令由操作码和地址码组成。操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置;
  5. 指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序;
  6. 以运算器为中心,输人输出设备与存储器间的数据传送通过运算器完成。
  • 以运算器为中心:指令和数据统统都要经过运算器,这种结构,注定了运算器会成为一个瓶颈。另外,有时候运算器仅仅起到了输入/输出设备与存储器之间的一个中转作用。因此,现代的计算机,一般是以存储器为中心的结构。

计算机硬件框图

  • 运算器:完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内。
  • 存储器:存放数据和程序。
  • 控制器:控制、指挥程序和数据的输人、运行以及处理运算结果。
  • 输入设备:将人们熟悉的信息形式转换为机器能识别的信息形式,常见的有键盘、鼠标等。
  • 输出设备:将机器运算结果转换为人们熟悉的信息形式,如打印机输出、显示器输出等。

现代计算机可认为由三大部分组成:中央处理器(Central Processing Unit, CPU)I/O设备主存储器

  • 算术逻辑单元(Arithmetic Logic Unit, ALU):用来完成算术逻辑运算。
  • 控制单元(Control Unit, CU):用来解释存储器中的指令,并发出各种操作命令来执行指令。

计算机的运行步骤

上机前的准备

  1. 建立数学模型;
  2. 确定计算方法;
  3. 编制解题程序。

计算机的工作过程

主存储器

主存储器(简称主存或内存)包括存储体、各种逻辑部件及控制电路等。存储体由许多存储单元组成,每个存储单元又包含若干个存储元件(或称存储基元、存储元),每个存储元件能寄存一位二进制代码0或1。一个存储单元可存储一串二进制代码,称这串二进制代码为一个存储字,这串二进制代码的位数称为存储字长。

1个字节(Byte)被定义为由8位(bit)二进制代码组成,即1Byte=8bit。

主存的工作方式就是按存储单元的地址号来实现对存储字各位的存(写入)、取(读出),称为按地址存取方式,即按地址访问存储器(简称访存)。

为了能实现按地址访间的方式,主存中还必须配置两个寄存器MAR和MDR。

  • MAR(Memory Address Register):存储器地址寄存器,用来存放欲访问的存储单元的地址,其位数对应存储

单元的个数。

  • MDR(Memory Data Register):存储器数据寄存器,用来存放从存储体某单元取出的代码或者准备往某存储单元存入的代码,其位数与存储字长相等。
运算器

运算器最少包括3个寄存器(现代计算机内部往往设有通用寄存器组)和一个算术逻辑单元(ALU)。

  • ACC(Accumulator):累加器。
  • MQ(Multiplier-Quotient Register):乘商寄存器。
  • X:操作数寄存器。
控制器

控制器是计算机的神经中枢,由它指挥各部件自动、协调地工作。

  1. 取指阶段:命令存储器读出一条指令;
  2. 分析阶段:对指令进行分析,指出该指令要完成的操作,并按寻址特征指明操作数的地址;
  3. 执行阶段:根据操作数所在的地址以及指令的操作码完成某种操作。