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
All Wikipedia text
is available under the
terms of the GNU Free Documentation License