目录
(一)计算机系统
计算机系统是由硬件和软件组成的,它们共同工作来运行应用程序。
软件的功能与硬件的功能在逻辑上是等效的。一个功能若使用较为频繁且用硬件实现的成本较为理想,使用硬件解决可以提高效率。
1.1计算机硬件
冯·诺依曼机特点:
- 采用“存储程序”的工作方式。
- 硬件系统由运算器、存储器、控制器、输入设备和输出设备5大部件组成。
- 指令和数据以同等地位存储在存储器中,通过指令执行的不同阶段来区分是指令还是数据。
- 指令和数据均用二进制代码表示。指令由操作码和地址码组成。
- 基本工作方式是控制流驱动方式。
“存储程序”的基本思想:将事先编制好的程序和原始数据送入主存后才能执行,一旦程序被启动执行,就无须操作人员的干预,计算机会自动逐条执行指令,直至程序执行结束。
存储器
- 存储器分为主存储器(内存)和辅助存储器(外存)。CPU能直接访问的是主存储器。
存储单元包含若干存储元件,每个存储元件存储一位二进制代码0或1。
存储体由许多存储单元组成,因此存储单元可存储一串二进制代码,称这串代码为存储字,称这串代码的位数为存储字长,存储字长可以是1B或是1B的偶数倍。
比特(bit):二进制数字中的位,信息量的度量单位,为信息量的最小单位。
字节(B):8个位被组织成一组,称为字节。
地址寄存器(MAR)memory address register:存放访存地址,经过地址译码后找到所选的存储单元。位数对应存储单元的的个数。MAR的长度与PC的长度相等。
数据寄存器(MDR)memory data register:用于暂存要从存储器中读或写的信息。位数与存储字长相等。
地址译码器是主存的构成部分,不属于CPU。
寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储1位二进制数,所以由N个锁存器或触发器可以构成N位寄存器。寄存器是中央处理器内的组成部分。寄存器是有限存储容量的高速存储部件,它们可用来暂存指令、数据和位址。
在计算机领域,寄存器是CPU内部的元件,包括通用寄存器、专用寄存器和控制寄存器。寄存器拥有非常高的读写速度,所以在寄存器之间的数据传送非常快。
运算器
运算器是计算机的执行部件,用于进行算术运算和逻辑运算。
控制器
中央处理器
一般将运算器和控制器集成到同一个芯片即CPU上。
中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
实际上控制器包含IP、PC、MAR、MDR,这里是为了方便表示相互关系画在了外面。
注意:MAR和MDR并不在主存中,实际上是集成在CPU中的。
状态寄存器又名条件码寄存器,它是计算机系统的核心部件——运算器的一部分,状态寄存器用来存放两类信息:一类是体现当前指令执行结果的各种状态信息(条件码),如有无进位(CF位)、有无溢出(OV位)、结果正负(SF位)、结果是否为零(ZF位)、奇偶标志位(P位)等;另一类是存放控制信息(PSW:程序状态字寄存器),如允许中断(IF位)、跟踪标志(TF位)等。有些机器中将PSW称为标志寄存器FR(Flag Register)。
主机和外设
CUP和主存储器共同构成主机。其他硬件设备,即I/O设备(包括外部存储器)统称为外设。
总线
贯穿整个系统的是一组电子管道,称为总线,它携带信息字节并负责在各个部件间传递。通常总线被设计成传送定长的字节块,也就是字(word)。字中的字节数(即字长)是一个基本的系统参数。现在大多数的机器字长是8字节(64位)或4字节(32位)。
机器字长 | 机器字长是指计算机进行一次整数运算所能处理的二进制数据的位数。CPU的位数=通用寄存器的位数=数据总线宽度 | |
存储字长 | 一个存储单元存储二进制代码的位数 。存储字长可以是8位、16位、32位等。 | |
指令字长 | 一个指令字中包含二进制代码的总位数。通常是字长或存储字长的整数倍。 |
1.2计算机软件
分为系统软件和应用软件
系统软件是一组保证计算机系统高效、正确运行的基础软件,通常作为系统资源提供给用户使用。系统软件主要有操作系统(OS)、数据库管理系统(DBMS)、语言处理程序(汇编程序 、 编译程序 、 解释程序 )、分布式系统软件、网络软件系统、标准库程序、服务性程序。
应用软件是指用户为解决某个应用领域中的各类问题而编制的程序。如各种科学计算类程序、工程设计类程序、数据统计与处理程序。
注意:数据库管理系统和数据库系统是有区别的。数据库管理系统是系统软件。而数据库系统一般是由数据库,数据库管理系统,数据库管理员和应用系统构成。
三个级别的语言
机器语言是计算机唯一可以直接识别和执行的语言。
机器语言和汇编语言都是机器级语言。
编译程序编译时间较长,运行速度较快。解释程序要边翻译成机器语言边执行,一般速度较慢。
1.3计算机系统的层次结构
对于高级语言程序员来说,浮点数格式,乘法指令等这些指令的格式、数据如何在运算器中运算都是透明的(看不见)
而对于机器语言或者汇编语言程序员来说,指令的格式、机器结构、数据格式等则不是透明的。
在CPU中,IR、MAR和MDR对于各类程序员都是透明的。
1.4 计算机系统的工作原理
该内容杂糅在操作系统和计算机组成原理的后续章节中......
(二)计算机的性能指标
- 吞吐量:指系统在单位时间内处理请求的数量。取决于从存储器读出数据或数据写入存储器所需时间;CPU主频;执行一条指令所需的时钟周期数。因此系统吞吐量主要取决于主存的存取周期。
- 响应时间:指向用户向计算机发送一个请求,到系统对该请求作出响应并获得所需结果的等待时间。
- 主频(CPU时钟频率):机器内部主时钟的频率,是衡量机器速度的重要参数。CPU的主频表示在CPU内数字脉冲信号震荡的速度。主频通常以Hz(赫兹)为单位,1Hz表示每秒一次。
- CPU时钟周期:通常为节拍脉冲或T周期,即主频的倒数,它是CPU中最小的时间单位,执行指令的每个动作至少需要1个时钟周期。指令周期>机器周期>时钟周期。
- CPI:执行一条指令需要的时钟周期数。
-
-
- 字长,也称机器字长,是指计算机进行一次整数运算(即定点整数运算)所能处理的二进制数据的位数,通常与CPU的寄存器位数、加法器有关。因此,字长一般等于内部寄存器的大小,字长越长,数的表示范围越大,计算精度越高。
- 基准程序是专门用来进行性能评价的一组程序。对于不同的应用场合,应选择不同的基准程序。
备考分析:本节内容是对整个计算机系统特别是计组做一个大概的了解,重点是掌握相关性能指标,但一般需要在做题中回顾。