In computer programming, an integer overflow occurs when an arithmetic operation attempts to create a numeric value that is too large to be represented within the available storage space. For instance, taking the arithmetic mean of two numbers by adding them and dividing by two, as done in many search algorithms, causes error if the sum (although not the resulting mean) is too large to be represented, and hence overflows.[1] The most common result of an overflow is that the least significant representable bits of the result are stored; the result is said to wrap. On some processors like GPUs and DSPs, the result saturates; that is, once the maximum value is reached, any attempt to increase it always returns the maximum integer value.