一、计算机的工作过程
为使计算机按预定要求工作,首先要编制程序。
程序是一个特定的指令序列,它告诉计算机要做哪些事,按什么步骤去做。
指令是一组二进制信息的代码,用来表示计算机所能完成的基本操作。
编制好的程序放在主存中,由控制器控制逐条取出指令执行。
以采用单累加寄存器结构的运算器为例,计算a+b-c=?
执行取数指令,从主存5号单元取出数a送入累加寄存器中;
执行加法指令,将累加寄存器中的内容a与从主存6号单元取出数b一起送到ALU中相加,结果a+b保留在累加寄存器中;
执行减法指令,将累加寄存器中的内容a+b与从主存7号单元取出的数c一起送到ALU中相减,结果a+b-c保留在累加寄存器中;
执行存数指令,把累加寄存器的内容a+b-c存至主存8号单元;
执行停机指令,计算机停止工作。
二、计算机的主要性能指标
全面衡量一台计算机的性能,下面介绍计算机的主要性能指标:
1、机器字长
机器字长是指参与运算的数的基本位数,它是由加法器、寄存器的位数决定的,所以机器字长一般等于内部寄存器的大小。
字长标志着精度字长越长,计算的精度就越高。
在计算机中为了更灵活地表达和处理信息,以字节(Byte)为基本单位,字节用大写字母B表示。一个字节等于8位二进制位(bit),位用小写字母b表示。
通常所说的字(Word)是指数据字,不同的计算机,数据字长度可以不相同。但对于系列机来说,数据字的长度应该是固定的。例如,Intel 80x86系列中,一个数据字等于16位;IBM 303X系列中,一个数据字等于32位。
需要注意的是,这里所说的字(数据字)和字长(机器字长)的概念是有区别的,字实际上是一个度量单位,用来度量各种数据类型的宽度,而字长表示数据运算的宽度,反映了计算机处理信息的能力。它们两者的长度可以一样,也可以不一样。
2、数据通路宽度
数据总线一次所能并行传送信息的位数,称为数据通路宽度。
它影响到信息的传送能力,从而影响计算机的有效处理速度。这里所说的数据通路宽度是指外部数据总线的宽度,它与CPU内部的数据总线宽度(内部寄存器的大小)有可能不同。
3、主存容量
主存储器所能存储的全部信息量称为主存容量。
通常,以字节数来表示存储容量,这样的计算机称为字节编址的计算机,也有一些计算机是以字为单位编址的,它们用字数乘以字长来表示存储容量。
主存容量越大,存放的信息就越多,处理问题的能力就越强,
4、运算速度
计算机的运算速度与许多因素有关,如机器的主频、执行什么样的操作以及主存本身的速度等。
(1)吞吐量和响应时间
吞吐量是指系统在单位时间内处理请求的数量。
响应时间是指系统对请求作出响应的时间。
响应时间包括 CPU时间(运行一个程序所花费的时间)与时间(用手磁访问存储器访问I/0操作操作系统开销等时间)的总和。
(2)主频和CPU时钟周期
CPU的主频又称为时钟频率表示在 CPU 内数字脉冲信号振荡的速度,主频的倒数就是CPU 时钟周期,这是CPU 中最小的时间元素。每个动作至少需要一个时钟周期。
(3) CPI
CPI(Cycles per Instruction)是指每条指令执行所用的时钟周期数。
在现代高性能计算机中,由于采用各种并行技术,使指令执行高度并行化,常常是一个系统时钟周期内可以处理若干条指令,所以CPI参数经常用IPC(Instructions per Cycle)表示,即每个时钟周期执行的指令数。
(4)CPU执行时间
(5)MIPS和MFLOPS
MIPS(Million Instructions per Second)表示每秒执行多少百万条指令。对于一个给定的程序,MIPS定义为:
这里所说的指令一般是指加、减运算这类短指令。
MFDOPS(Million Floating-point Operations per Second)表示每秒执行多少百万浮点运算。对于一个给定的程序,MFLOPS定义为:
MFLOPS适用于衡量向量机的性能。