您的位置:首页 > 理论基础

计算机系统概论之计算机的工作过程

2018-02-09 09:21 447 查看
用计算机解决一个问题,通常包含两个过程,一个是上机前的各种准备,再一个是上机运行。 1.上机前的准备 在许多科学技术的实际问题中,往往会遇到许多复杂的数学方程组,而数字计算机通常只能做加、减、乘、除四则运算,这就要求,在上机前,先由人工完成一些必要的准备工作,这些工作,大致可分为三类:建立数学模型,确定计算方法,编制解题程序。

 (1)建立数学模型

 有许多科技问题很难直接用物理模型来模拟研究对象的变化规律,如地球大气环流、原子反应堆的核裂变过程、航天飞行速度对
飞行器的影响等等,不过,通过大量分析和实验,总能找到一系列反映研究对象变化规律的数学方程组,通常,把这类方程组,叫做被
研究对象变化规律的数学模型。一旦建立了数学模型,研究对象的变化规律就变成了解一系列方程组的数学问题,这便可通过计算机来
求解,因此,建立数学模型是计算机解题的第一步骤。
( 2 )确定计算方法
由于数学模型中的数学方程式往往是很复杂的,如果需要将它变成适合计算机运算的加、减、乘、除四则运算,还必须确定对应的计算方法(3)编制解题程序程序是适合于机器运算的全部步骤,编制解题程序就是将运算步骤用一一对应的机器指令描述。例如:计算ax²+bx+c,在计算器中可分解为以下几个步骤:
将x取至运算器中
乘以x,得x²,存于运算器中
再乘以a,得ax²,存于运算器中,
将ax²送至存储器中,
将b至运算器中
乘以x得到bx存储在运算器中
再将ax²从存储器中取出来与bx相加,得到ax²+bx,存于运算器中
再取c与ax²+bx相加,得到ax²+bx+c,存于运算器中
可见,不包括停机、输出打印共需八步。若将上式改写为:(ax+b)x+c,则可简化为五步:
取x至运算器中
乘以a,得到ax,存于运算器中
加b,得到ax+b
a9d5
,存于运算器中
乘以x,得到(ax+b)x,存于运算器中
加c,得到(ax+b)x+c,存于运算器中
将上述运算步骤写成某计算机的一一对应的机器指令,就完成了运算程序的编写。

 2.计算机的解题过程
为了比较形象地了解计算机的解题过程,首先分析一个比图1.9更细化的计算机组成框图,如图1.11所示。



(1)运算器

运算器包括三个寄存器(现代计算机中往往设有寄存器组)和一个算逻电路ALU。其中ACC为累加器,MQ为乘商寄存器,X为操作数寄存器,
这三个寄存器在完成不同运算时,所存放的操作数类别也各不一样。表1.3列出了寄存器存放不同类别操作数的情况。



(2)主存储器

主存储器(简称主存或内存)包括存储体、各种逻辑部件及控制电路等。存储体由许多存储单元组成,每个存储单元又包含若干个存储元件
(或称存储基元、存储元),每个存储元件能寄存一个二进制代码“0”或“1”。也就是说,一个存储单元可以存储一串二进制代码,称这串二进制代码为一个存储字,这串二进制代码的个数,叫作存储字长。
 如果我们把一个存储体比作一幢大楼,那么每个存储单元可看作大楼中的每个房间,每个存储元可看作每个床位中的一张床位,显然,每个房间
都需要一个房间编号,因此,我们赋予每个存储单元一个编号,叫做存储单元的地址号。主存的工作方式就是按存储单元的地址号来实现存和写

 (3)控制器

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

(4)I/O设备I/O子系统包括各种外部设备及相应的借口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: