3.7.定点运算器的组成
3.7.1定点运算器的基本结构
将算术运算器(+-×÷)和逻辑运算器(∧∨/⊕)集成并封装在一起,就构成了定点运算器。不同的计算机其运算器的组成结构是不同的,但一般都包含数学逻辑运算单元、寄存器组,移位控制电路等几部分。
1.算术逻辑运算单元ALU:在计算机中,通常具体实现算术运算和逻辑运算的部件称为算术逻辑运算单元(Arithmetic and Logic Unit),简称ALU,它是加法器、乘法器和逻辑运算器的集成,是运算器的核心。ALU通常表示为两个输入端,一个输出端和多个功能控制信号端的一个逻辑符号。加法器是ALU的核心,是决定ALU运算速度的主要因素。
2.通用寄存器组Ri:为了避免频繁地访问存储器,运算器中提供了暂时存放参加运算的数据和中间结果的单元,为此,在运算器内部设定若干通用寄存器,构成通用寄存器组。通用寄存器越多对提高运算器的性能和程序执行速度越有利。通用寄存器组对用户是开放的,用户可以通过指令去使用它。
在运算器中,用来提供一个操作数并存放运算结果的通用寄存器称为累加器Acc(Accumulator)。累加器可以是一个,也可以有多个。
3.专用寄存器:为了记录程序执行过程中的重要状态,还要设置一些专用寄存器,如程序状态字PSW(Program Status Word);(又称标志寄存器FLAGS)堆栈指针SP(StackPointer)等。有些专业寄存器对程序员是透明的,用户是不能访问的,如循环计数器。有些是对程序员开放的,程序员可以通过指令使用它。
4.附加的控制线路:运算器要求运算速度快,运算精度高。为了达到这一目的,通常还在运算器中附加一些控制线路。如:运算器中的乘2-i 或乘2i 运算和某些逻辑运算是通过移位操作来实现的。这通常是在ALU的输出端设置移位线路来实现。移位包括左移,右移和直送。移位线路也是一个多路选择器。

