Arithmetic
and logical unit
-
An
arithmetic and logical unit (ALU) is one of the
core components of all central processing units. It is capable of calculating
the results of a wide variety of common computations. The most common available
operations are the integer arithmetic operations of addition, subtraction, and
multiplication, the
bitwise
logic operations of
AND,
NOT,
OR,
and
XOR,
and various shift operations. Typically, a standard ALU does not handle integer
division nor any
floating
point operations. For these calculations a separate component, such as a divider
or
floating
point unit (FPU), is often used, although it is also possible that a
microcode
program may use the ALU to emulate these operations.
The ALU takes as inputs
the data to be operated on and a code from the control
unit indicating which operation to perform, and for output provides the result
of the computation. In some designs it may also take as input and output a set
of condition codes, which can be used to indicate cases such as carry-in or carry-out,
overflow, or other statuses.
See also: execution
unit, multiplication
ALU