计算机组成原理笔记

2021/08/22

本人阅读的书籍是纪禄平老师编写的《计算机组成原理》,从今日开始每日更新一次笔记,直至读完,只是自己的读书总结,请谨慎作为参考。

第一章

1.1计算机的基本概念

计算机通常由硬件和软件两大部分组成;

计算机的设计过程所需考虑的因素如下:

首先,信息如何表示,才能方便让计算机进行识别和处理。

其次,计算机硬件系统应该由哪些部转换程序为指令序列件组成,每部分的相互关系是怎样的,以及如何控制它们协同工作。

再次,采用什么样的工作方式,才能使计算机能够自动地对信息进行处理。最后,应该提供怎样的人机交互接口,才能方便操作和使用计执行指令算机。

最后,应该提供怎样的人机交互接口,才能方便操作和使用计算机执行指令算机。

计算机工作流程

 1.1.1 信息的数字化表示

计算机中的信息可以分为两大类∶

控制信息——控制计算机的工作

数据信息——计算机加工处理的对象

计算机的主要部件是用逻辑电路,即电子电路构成的,因此在电子数字计算机中传送与处理的信息都采用数字化表示方法。信息的数字化表示包含了两层含义∶ ① 用数字代码表示各种信息; ② 用数字信号表示数字代码。

2. 在物理机制上用数字信号表示数字代码

计算机是一种复杂的电子线路,传送和处理的实际对象是电信号。电信号又分为模拟信号和数字信号两种。

模拟信号是一种随时间连续变化的电信号,如电流信号、电压信号等。

数字信号是一种随时间断续变化的电信号,如电平信号、脉冲信号等。

3.用数字化方法表示信息的主要优点

(1)在物理上容易实现信息的表示与存储

(2)抗干扰能力强,可靠性高 

(3)数值表示的范围大,精度高

(4)数值表示的信息类型极其广泛

(5)能用数字逻辑处理信息

1.1.2 存储程序工作方式 存储程序是计算机的核心内容,表明了计算机的工作方式,包含三个要点∶ 事先编制程序,存储程序,自动、连续地执行程序。

1.3 计算机系统的组织

1.3.1 硬件系统

冯若依曼体系:计算机硬件系统是由存储器、运算器、控制器、输入设备和输出设备五大部件组成的。 

1、计算机硬件系统的基本组成

(1) CPU

CPU 是计算机硬件系统的核心部件, 在微型计算机系统或其他应用大规模集成电路技术的系统中,它被集成在一块芯片上,构成微处理器。CPU 的主要功能是读取并执行指令,在执行指令的过程中,它向系统中的各部件发出各种控制信息,收集各部件的状态信息,与各部件交换数据信息。

CPU 由运算部件、寄存器组和控制器组成,它们通过 CPU 内部的总线相互交换信息。

I.运算部件完成算术运算(定点数运算、浮点数运算)和逻辑运算。

II.寄存器组用来存放数据信息和控制信息。

III.控制器提供整个系统工作所需的各种微命令,这些微命令可以通过组合逻辑电路产生,也可以通过执行微程序产生,相应分别被称为组合逻辑和微程序控制方式。

(2)存储器 存储器用来存储信息,包括程序、数据、文档等。

存储器分为主存、外存和缓存三级存储体系。

主存用来存放 CPU 需要使用的程序和数据。主存的每个存储单元都有固定的地址,CPU 可以按地址直接访问它们。此外,通常将 CPU 和主存合称为主机,因主存位于主机之内,故主存又常被称为内存。

外存位于主机之外,用来存放大量的需要联机保存但 CPU 暂不使用的程序和数据。需要时, CPU 并不直接按地址访问它们,而是按文件名将它们从外存调入主存。因此,外存的容量很大,但存取速度比主存慢,如磁盘、光盘和 U 盘等都是常用的外存。

高速缓存(Cache)是为了提高 CPU 的访存速度,在 CPU 和主存之间设置的一级速度很快的存储器,容量较小,用来存放 CPU 当前正在使用的程序和数据。高速缓存的地址总是与主存某一区间的地址相映射,工作时 CPU 首先访问高速缓存,如果未找到所需的内容,再访问主存。

(3)输入/输出设备 输入设备将各种形式的外部信息转换为计算机能够识别的代码形式送入主机。它们在逻辑划分上位于主机之外,又称为外围设备或外部设备,简称外设。

(4)总线 总线是一组能为多个部件分时共享的信息传输线。现代计算机普遍采用总线结构,用一组系统总线将 CPU、存储器和 I/O 设备连接起来,各部件通过这组总线交换信息。 根据系统总线上传送的信息类型,系统总线可分为地址总线、数据总线和控制总线。

地址总线用来传送 CPU 或外设发向主存的地址码。

数据总线用来传送 CPU、主存以及外设之间需要交换的数据。

控制总线用来传送控制信号,如时钟信号、CPU 发向主存或外设的读/写命令和外设送往 CPU的请求信号等。

(5)接口 

 2、典型的硬件系统及结构

 

1.3.2 软件系统

 计算机软件通常包含各类程序和文件。从软件的功能和配置的角度出发,可将软件分为系统软件、应用软件两大类。

1.系统软件

系统软件作为一种基础软件,其功能是负责系统的调度管理,提供程序的运行环境和开发环境,向用户提供各种服务,以保证计算机系统能够良好地运行。从配置的角度来看,系统软件是用户所使用的计算机系统的一部分,通常作为系统资源(软设备)提供给用户使用。常见的系统软件如下。

(1)操作系统(Operation System,OS)

操作系统是软件系统的核心, 负责管理和控制计算机系统的硬件资源、软件资源和运行的程序。它是用户和计算机之间的接口,为用户提供了软件的开发环境和运行环境。 一个典型的操作系统由处理机调度、存储管理、设备管理、文件系统、作业调度等模块组成。

(2)语言处理程序

用户通常使用程序设计语言来编写源程序。但是计算机硬件只能识别和执行由二进制代码表示的指令序列,所以需要用语言处理程序将源程序转换为指令序列,即用机器语言表示的目标程序。有两种基本的转换方式,一种是解释方式,另一种是编译方式。相应地,语言处理程序就分为解释程序和编译程序两种。

在解释方式中,操作系统调用某种编程语言的解释程序(如 BASIC 语言的解释程序),计算机执行该解释程序,将源程序逐段地转换为具有相同功能的指令序列。转换完一段源程序,就执行该段对应的指令序列; 再转换下一段源程序并执行下一段指令序列,直到整个源程序被解释执行完。这是一种边翻译、边执行的工作方式,目标代码的执行始终离不开源程序和解释程序。

在编译方式中,操作系统调用的是某种编程语言的编译程序(如 C 语言的编译程序),计算机执行该编译程序,将整个源程序全部转换为指令序列,即可执行的目标程序。然后不再需要源程序和编译程序,由计算机单独执行目标程序。这是多数程序设计语言采用的处理方式∶先翻译、后执行。 将用汇编语言编写的源程序转换为目标程序,这一过程称为"汇编",也属于编译类型。

(3)数据库管理系统

所谓数据库,是指在计算机存储器中合理存放的、相互关联的数据集合,能提供给不同的用户共享使用。在计算机中需配置数据库管理系统(DBMS),负责数据装配、内容更新、查询检索、通信控制,以及对用数据库语言编写的程序进行翻译,控制相关的运行操作等。

(4)各种服务性支撑软件

为了帮助用户使用和维护计算机,向用户提供服务性手段而编制的一类程序统称为服务性程序。

(5)各种标准程序库

这是由系统事先配置的通用、优化的标准子程序,作为库文件可供用户调用。

2.应用软件

应用软件直接面向用户需要,是用户在各自的应用领域中,为解决各类问题而编写的程序。按照不同的应用目的,应用软件大致可划分为以下几种∶科学计算类程序、工程设计类程序、数据处理类程序、信息管理类程序、自动控制类程序和情报检索类程序。

1.3.3 硬件、软件系统层次结构

 1.从软件、硬件组成角度的层次结构模型

 (1)自下而上,计算机系统的逐级生成过程

① 拟定指令系统。先规定指令系统所包含的各 操作系统级(操作系统) 种基本功能,这些功能都要由硬件来实现;各种软件 硬、软界面 传统机器级(指令系统) 最终也要转换为指令序列,才能被硬件识别和执行。 微程序级(微程序控制器) - 硬件部分 所以,指令系统,即传统机器级,是连接硬件和软件 逻辑部件级(硬件逻辑部件) 的界面。指令系统常常用汇编语言来描述,便于分析图 1-11 从软件、硬件组成角度的层次模型 和设计,但硬件最终执行的仍然是用机器语言表示的二进制代码。

② 创建硬件系统。根据指令系统来设计和实现硬件系统。硬件系统也称为硬核,其核心是 CPU 和主存,通过系统总线和接口将各种外存和外部设备连接起来,构成整机系统。从工作机制看,很多计算机采用微程序控制方式,即用微程序控制器来解释指令和执行指令,因而常常将硬件分为两级∶下面一级是用连线连接的各种逻辑部件,称为硬连逻辑,包括寄存器和门电路; 上面一级是微程序控制器,它通过执行微程序,发出各种微命令,控制各逻辑部件的正常工作。

③ 配置操作系统。操作系统是系统软件的核心和基础,因此在有了硬件系统之后,首先要配置操作系统,然后根据硬件系统的特点改进、扩展操作系统,不断推出新的版本。例如,在个人计算机上首先配置了单用户操作系统 PC-DOS,后来又推出了多任务操作系统 Windows。一些操作系统的核心部分源程序可以配置到多种计算机上,具有一定程度的通用性。一种计算机通常只需配置一种操作系统就可以工作,但为了适用于不同的应用领域,有些计算机也配置了多种操作系统。

④ 配置语言处理程序及各种软件资源。根据系统需要,配置相应的语言处理程序,如某种编程语言的编译程序、解释程序或汇编程序,并配置所需的各种软件资源。将这些软件归于操作系统的调度管理之下,形成一些通用的,或面向某种应用领域的软件平台,供用户随时调用。

⑤ 输入用户程序。当组成了一个硬件、软件配置完备的计算机系统之后,便可输入用户编写的应用程序,由计算机处理执行。

(2)自上而下,应用计算机求解问题的过程

① 系统分析级。系统分析人员根据对任务的需求分析,设计算法,构建数学模型,并根据数学模型和算法进行概要设计和详细设计。

② 用户程序级。编程人员根据详细设计,选择某种程序设计语言编写用户应用程序。

③ 操作系统级。计算机在操作系统的管理之下调用语言处理程序,如编译、解释或汇编程序,将用户源程序转换为用机器语言描述的目标程序。在源程序的输入、编辑、编译和调试过程中,通常要调用软件开发平台所提供的各种有关的软件资源。

④ 传统机器级。所形成的目标程序是用机器语言描述的指令序列,这些能够被计算机硬件识别和执行的二进制代码构成了可执行文件,即可执行的目标代码。我们从这一级看到的程序和计算机的工作属于传统机器级,或称为机器语言级。

⑤ 硬件系统级。由硬件执行机器语言程序,完成指令规定的操作。

1.4 计算机的特点与性能指标

1.4.2 计算机的主要性能指标

 1.基本字长

在计算机中,算术运算可以分为定点运算和浮点运算两大类。基本字长一般是指处理器中参加一次定点运算的操作数的位数,如8位、16 位、32 位或 64 位。基本字长影响着计算的精度、硬件的成本,甚至对指令系统功能也有影响。 在一次运算过程中,操作数和运算结果通过数据总线,在寄存器和运算部件之间传送。因此基本字长标志着计算精度,也反映了寄存器、运算部件和数据总线的位数。基本字长越长,操作数的位数越多,计算精度也就越高;但相应部件的位数也会增多,使硬件成本随之增加。

2.外频

外频也叫外部频率或基频,有时也称为系统时钟频率,是指主板上的振荡器输出的时钟频率,也是计算机中一切硬件部件工作所依据的基准时钟信号,它经过倍频系数放大后用作计算机中各部件的工作频率,如 CPU、内存和各类总线等。标准外频有 100 MHz、133 MHz,甚至166 MHz、 200 MHz,一般很少超过 300 MHz。 

3.CPU 的运算速度

CPU 的运算速度是计算机的一项重要性能指标.

 (1)CPU 的主频

CPU 的主频是指 CPU 内核的工作频率,通常所说的某款 CPU 是多少 GHz,就是指 CPU 主频,有时也叫 CPU 的时钟频率。CPU 主频=外频×倍频系数,提高任何一项都可以使 CPU 的主频上升(超频)。

(2)平均每秒执行的指令数IPS

CPU 平均每秒执行执行指令的数量,即 IPS(Instructions Per Second),也用 MIPS 或 GIPS来表示,这个指标适合用于评价标量运算,不适合评价向量运算。 

(3)平均每条指令的时钟周期数 CPI

CPU 平均每条指令的时钟周期数,即 CPI(Clock cycles Per Instruction),也常用来衡量 CPU的运算速度。 CPI是一个平均概念,其物理意义可以理解为∶ CPU 执行一个程序所需的时钟周期数与这个程序对应的指令数的比值,即 CPI=m/n,这里的 m.是这个程序的时钟周期数,n,是这个程序的指令数。

(4)每秒执行定点/浮点运算的次数 每秒钟能够执行定点和浮点运算的次数也可以用来刻画计算机的运算速度。

4. 数据通路宽度与数据传输率 这两个指标主要是用来衡量计算机部件的数据传输能力。

(1)数据通路宽度

数据通路宽度是指数据总线一次能并行传送的数据位数,也会直接影响计算机的处理性能。数据通路宽度一般可分为 CPU 内部和 CPU 外部两种情况。CPU 的内部数据通路宽度一般与 CPU 的基本字长相同,也等于 CPU 内总线的位宽,CPU 的外部数据通路宽度则等于系统数据总线的位宽。

(2)数据传输率(Data Transfer Rate,DTR) 数据传输率也叫比特率,是指单位时间内信道的数据传输量,基本单位是 bps。在计算机或网络科学中,常常借用带宽(Bandwidth)一词来表示数据传输率,显然这里的带宽已与其原始含义不同,已发生了转义变化。数据传输率与传输信道的数据通路宽度和最大的工作频率有关,其通常的简化计算规则如式(1-1)所示∶

 

其中,DTR 表示数据传输率,D是数据的传输量,T是相应的数据传输时间,W是数据通路的宽度,f是工作频率。

5.存储容量

存储容量用来衡量计算机的信息存储能力。

计算机的存储器分为内存(主存)和外存(辅存)两类,因而存储容量相应地有内存容量和外存容量这两个指标。

(1)主存容量

主存储器用来存放 CPU 当前需要执行的程序和需要处理的数据。 主存容量就是指主存能存储的数据量,取决于主存的编址单元数和每个编址单元的位数(宽度)。CPU 根据主存地址码可以直接访问主存单元,有的主存以字节为编址单位,而有的主存则以字长为编址单位,因此常用两种方式来表示主存容量∶ ①字节数 微型计算机的主存多按字节编址,故每个编址单元有 8 位,所以可用字节数来表示主存容量的大小。 ② 字数×位数 某些计算机的主存是按字编址的,每个编址单元存放一个字长的数据,字长等于 CPU 的基本字长,所以用字数(或单元数)×位数来表示主存容量,即表明主存包含多少个字单元,每个单元的宽度多少位。

(2)辅存容量

辅存,也叫外存,指计算机系统中能够联机读写的外部存储器,如硬盘光盘等。因此,辅存容量就是指外部存储器能存储的最大数据量,一般也用 B、MB、GB 或 TB 等来表示。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值