Is part of the processor that manages the movement of data through the CPU

An arithmetic-logic unit is the part of a central processing unit that carries out arithmetic and logic operations on the operands in computer instruction words.

In some processors, the ALU is divided into two units: an arithmetic unit (AU) and a logic unit (LU). Some processors contain more than one AU -- for example, one for fixed-point operations and another for floating-point operations.

In computer systems, floating-point computations are sometimes done by a floating-point unit (FPU) on a separate chip called a numeric coprocessor.

How does an arithmetic-logic unit work?

Typically, the ALU has direct input and output access to the processor controller, main memory (random access memory or RAM in a personal computer) and input/output devices. Inputs and outputs flow along an electronic path that is called a bus.

The input consists of an instruction word, sometimes called a machine instruction word, that contains an operation code or "opcode," one or more operands and sometimes a format code. The operation code tells the ALU what operation to perform and the operands are used in the operation.

For example, two operands might be added together or compared logically. The format may be combined with the opcode and tells, for example, whether this is a fixed-point or a floating-point instruction.

The output consists of a result that is placed in a storage register and settings that indicate whether the operation was performed successfully. If it isn't, some sort of status will be stored in a permanent place that is sometimes called the machine status word.

In general, the ALU includes storage places for input operands, operands that are being added, the accumulated result (stored in an accumulator) and shifted results. The flow of bits and the operations performed on them in the subunits of the ALU are controlled by gated circuits.

The gates in these circuits are controlled by a sequence logic unit that uses a particular algorithm or sequence for each operation code. In the arithmetic unit, multiplication and division are done by a series of adding or subtracting and shifting operations.

There are several ways to represent negative numbers. In the logic unit, one of 16 possible logic operations can be performed -- such as comparing two operands and identifying where bits don't match.

The design of the ALU is a critical part of the processor and new approaches to speeding up instruction handling are continually being developed.

What type of functions do ALUs support?

In computer science, ALUs serve as a combinational digital circuit that performs arithmetic and bitwise operations on binary numbers. This is a foundational building block of arithmetic logic circuits for numerous types of control units and computing circuits including central processing units (CPUs), FPUs and graphics processing units.

Is part of the processor that manages the movement of data through the CPU

Long before modern PCs, ALUs first helped to support microprocessors and transistors in the 1970s.

The following are a few examples of bitwise logical operations and basic arithmetic operations supported by ALUs:

  • Addition. Adds A and B with carry-in or carry-out sum at Y.
  • Subtraction. Subtracts B from A or vice versa with the difference at Y and carry-in or carry-out.
  • Increment. Where A or B is increased by one and Y represents the new value.
  • Decrement. Where A or B is decreased by one and Y represents the new value.
  • AND. The bitwise logic AND of A and B is represented by Y.
  • OR. The bitwise logic OR of A and B is represented by Y.
  • Exclusive-OR. The bitwise logic XOR of A and B is represented by Y.

ALU shift functions cause A or B operands to shift, either right or left, with the new operand represented by Y. Complex ALUs utilize barrel shifters to shift A or B operands by any number of bits in a single operation.

This was last updated in August 2021

Continue Reading About arithmetic-logic unit (ALU)

  • Data processing units accelerate infrastructure performance
  • Learn the major types of server hardware and their pros and cons
  • Drill down to basics with these server hardware terms
  • Buy server hardware with these key functions in mind
  • Rack vs. blade server: What's the difference?

Related Terms

AS/400 (IBM iSeries, AS/400e, eServer iSeries/400, Power Systems)The IBM Application System/400 -- or AS/400 -- is a family of midrange computers that was released in 1988, succeeding both ... See complete definitiondebouncingDebouncing is removing unwanted input noise from buttons, switches or other user input. See complete definitionthyristorA thyristor is a four-layer semiconductor device, consisting of alternating P-type and N-type materials (PNPN). See complete definition

Word of the Day

adversarial ML

Adversarial machine learning is a technique used in machine learning to fool or misguide a model with malicious input.

Is the measure of instruction cycle per second?

The speed at which the CPU can carry out instructions is called the clock speed. This is controlled by a clock. With every tick of the clock, the CPU fetches and executes one instruction. The clock speed is measured in cycles per second, and one cycle per second is known as 1 hertz.

What manages data and instructions entering and leaving the processor?

The I/O unit manages data entering and leaving the processor. The registers in the CPU make up a high-speed storage area for 1s and 0s before the bits are processed.

What is a wire on a motherboard over which information flows?

data bus—The wires on the motherboard over which information flows between the components of the computer.

Where is the operating systems programs and data the computer is currently using stored?

The operating system is stored on the hard disk, but to speed up the whole process, the OS is copied into RAM on start-up. This is completed by BIOS (Basic Input Output System).