[拼音]:yunsuanqi
[外文]:arithmetic unit
计算机中执行各种算术和逻辑运算 *** 作的部件。运算器的基本 *** 作包括加、减、乘、除四则运算,与、或、非、异或等逻辑 *** 作,以及移位、比较和传送等 *** 作,亦称算术逻辑部件(ALU)。计算机运行时,运算器的 *** 作和 *** 作种类由控制器决定。运算器处理的数据来自存储器;处理后的结果数据通常送回存储器,或暂时寄存在运算器中。
数据与运算器运算器的处理对象是数据,所以数据长度和计算机数据表示方法,对运算器的性能影响极大。70年代微处理器常以 1个、4个、8个、16个二进制位作为处理数据的基本单位。大多数通用计算机则以16、32、64位作为运算器处理数据的长度。能对一个数据的所有位同时进行处理的运算器称为并行运算器。如果一次只处理一位,则称为串行运算器。有的运算器一次可处理几位(通常为6或8位),一个完整的数据分成若干段进行计算,称为串-并行运算器。运算器往往只处理一种长度的数据。有的也能处理几种不同长度的数据,如半字长运算、双倍字长运算、四倍字长运算等。有的数据长度可以在运算过程中指定,称为变字长运算。
按照数据的不同表示方法,可以有二进制运算器、十进制运算器、十六进制运算器、定点整数运算器、定点小数运算器、浮点数运算器等。按照数据的性质,有地址运算器和字符运算器等。
运算器的 *** 作运算器能执行多少种 *** 作和 *** 作速度,标志着运算器能力的强弱,甚至标志着计算机本身的能力。运算器最基本的 *** 作是加法。一个数与零相加,等于简单地传送这个数。将一个数的代码求补,与另一个数相加,相当于从后一个数中减去前一个数。将两个数相减可以比较它们的大小。
左右移位是运算器的基本 *** 作。在有符号的数中,符号不动而只移数据位,称为算术移位。若数据连同符号的所有位一齐移动,称为逻辑移位。若将数据的最高位与最低位链接进行逻辑移位,称为循环移位。
运算器的逻辑 *** 作可将两个数据按位进行与、或、异或,以及将一个数据的各位求非。有的运算器还能进行二值代码的16种逻辑 *** 作。
乘、除法 *** 作较为复杂。很多计算机的运算器能直接完成这些 *** 作。乘法 *** 作是以加法 *** 作为基础的,由乘数的一位或几位译码控制逐次产生部分积,部分积相加得乘积。除法则又常以乘法为基础,即选定若干因子乘以除数,使它近似为1,这些因子乘被除数则得商。没有执行乘法、除法硬件的计算机可用程序实现乘、除,但速度慢得多。有的运算器还能执行在一批数中寻求最大数,对一批数据连续执行同一种 *** 作,求平方根等复杂 *** 作。
运算器的运算方法实现运算器的 *** 作,特别是四则运算,必须选择合理的运算方法。它直接影响运算器的性能,也关系到运算器的结构和成本。另外,在进行数值计算时,结果的有效数位可能较长,必须截取一定的有效数位,由此而产生最低有效数位的舍入问题。选用的舍入规则也影响到计算结果的精确度。
运算器的结构运算器包括寄存器、执行部件和控制电路三个部分。
在典型的运算器(见图)中有三个寄存器:接收并保存一个 *** 作数的接收寄存器;保存另一个 *** 作数和运算结果的累加寄存器;在进行乘、除运算时保存乘数或商数的乘商寄存器。执行部件包括一个加法器和各种类型的输入输出门电路。控制电路按照一定的时间顺序发出不同的控制信号,使数据经过相应的门电路进入寄存器或加法器,完成规定的 *** 作。
为了减少对存储器的访问,很多计算机的运算器设有较多的寄存器,存放中间计算结果,以便在后面的运算中直接用作 *** 作数。
为了提高运算速度,某些大型计算机有多个运算器。它们可以是不同类型的运算器,如定点加法器、浮点加法器、乘法器等,也可以是相同类型的运算器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)