ALU

As the metaphorical brain of a computer, an arithmetic logic unit (ALU) performs all computational and comparison operations. The ALU serves as the foundation of central processing units (CPUs), graphics processing units (GPUs), and floating point units (FPUs). A simple ALU has three data buses: two single-bit operands (A and B) that result in one output (Y).

History of the ALU

The ALU was pioneered in 1945 by mathematician John von Neumann, best known for his development of Von Neumann architecture. Neumann s machines introduced stored programs and executed instructions sequentially this resulted in limited throughput and performance.

In the 1970s, the Intel 74181 gave way to today s single-chip microprocessors. The 4-bit ALU contained the equivalent of 75 logic gates and was the very first to exist in a single package. Today s ALUs are more complex and have added features like barrel shifters and binary multipliers, effectively making them capable of performing a higher volume of more complex operations in a shorter amount of time.

Types of ALU operations

There are four types of binary input combinations, where 1 represents true and 0 represents false :

  • 0+0=0
  • 1+0=1
  • 0+1=1
  • 1+1=0

The fourth input combination results in a carry-in, which requires some type of operation to take place. There are eight types of basic arithmetic operations that all ALUs will support:

  • ADD
  • ADD with CARRY
  • SUBTRACT
  • SUBTRACT with BORROW
  • INCREMENT
  • DECREMENT
  • NEGATE
  • PASS THROUGH

More complex ALUs with more logic gates (like those in smartphones and laptops) are also able to perform multiplication and division operations.

On the other half of the unit, logic operations are used to validate or modify the outputs of these circuits. Bitwise logic operations include:

  • NOT
  • AND
  • OR
  • XOR (exclusive-OR)

Vangie Beal
Vangie Beal
Vangie Beal is a freelance business and technology writer covering Internet technologies and online business since the late '90s.

Related Articles

AutoIt Scripting Language

AutoIt is a popular and easy-to-learn scripting language used by developers since 1999 for quick software development. Here’s more about AutoIt scripting language, its...

Sales CRM

A sales CRM, or customer relationship management (CRM) tool for sales, is frequently the centerpiece of sales operations for a variety of business use...

HighLevel CRM

HighLevel is a sales and marketing customer relationship management (CRM) solution designed by the company HighLevel. Because it's uniquely designed for marketing agencies, HighLevel...

CRM Manager

A customer relationship management (CRM) manager is a person that oversees all customer and client relations within a business. They specialize in customer interactions...

AutoIt Scripting Language

AutoIt is a popular and easy-to-learn scripting language used by developers since 1999...

HighLevel CRM

HighLevel is a sales and marketing customer relationship management (CRM) solution designed by...

Unified Endpoint Management (UEM)

As enterprise networks become increasingly distributed with growing numbers of remote workers, unified...