ALU (Arithmetic Logic Unit) is the fundamental unit of a microprocessor which performs all the basic operations based on the control input selection. There are separate units which work independent of the main ALU for performing secondary operations such as address computation. The ALU performs arithmetic functions such as addition, subtraction, etc. and logic functions including, logic AND, logic OR, logic XOR, etc. These various functions of the ALU are implemented using a set of functional units each implementing a function.