# Extended Arithmetic Element

From Computer History Wiki

An **Extended Arithmetic Element** was an optional subsystem in early CPUs which could perform a variety of arithmetic or logical operations which were not part of the basic repertoire of that CPU.

This was because many (almost all, in the earliest generation of computers) did not provide multiply, divide, etc in hardware, as that would have taken too many gates; instead, they were done in software, with a consequent loss of performance. An added Extended Arithmetic Element improved the speed of computers which were used for computation-intensive tasks.

Typical added operations were:

- multiplication
- division
- multi-bit shifts
- logical shift
- arithmetic shift
- normalization

(The last is used for implementation of floating point in software.)