The arithmetic logic unit, or ALU, is the part of a processor that actually computes. It is a combinational circuit, built from logic gates, that takes one or two binary operands plus a small control code selecting an operation, and produces a result along with status signals such as carry, zero, and overflow. The operations typically include addition and subtraction, bitwise AND, OR, and NOT, and shifts. Because it is combinational, the ALU holds no state of its own: the output depends only on the current inputs, and the surrounding registers supply and capture the values.
The idea that a computer should contain a dedicated organ for arithmetic was set out explicitly in John von Neumann’s 1945 “First Draft of a Report on the EDVAC.” The report describes a “central arithmetical part” of the machine, abbreviated CA, whose job is to carry out the elementary operations of arithmetic. Von Neumann argued that because these operations are needed constantly, the machine should have one specialized unit to perform them rather than spreading the capability across the whole device. That central arithmetical part is the direct ancestor of the modern ALU.
In the von Neumann architecture the ALU sits inside the central processing unit alongside the control unit and the registers. The control unit decodes each instruction and tells the ALU which operation to perform; operands flow in from registers or memory, the ALU computes, and the result flows back. This arrangement, where a single computing core is fed a stream of operations and operands, is what the EDVAC report formalized and what nearly every processor since has followed.
Although the ALU performs arithmetic, it is built entirely from logical gates. Addition, for example, is constructed from a chain of full adders, each of which is itself a small network of AND, OR, and XOR gates producing a sum bit and a carry. Subtraction reuses the same adder by negating one operand. This is the practical payoff of the gate-level view of computation: arithmetic is not a separate kind of hardware but a particular wiring of logic gates.
Because so much of a processor’s work passes through it, the ALU is a focus of optimization. The speed at which carries propagate across an adder, the width of the operands it handles at once, and the set of operations it supports all shape a processor’s performance and instruction set. The ALU is, in a real sense, the place where a computer earns its name.