**Problem Detail:**

Is there a possibility to compute the result of an integer equality comparison by only using arithmetic or bitwise operations? Negative values use the two-complement representation.

I am looking for a generic algorithm, which results in two possible values for equality and inequality but not using comparison operations.

###### Asked By : Max

#### Answered By : Evil

Let $W$ be the number of bits, $A, B$ integers to compare.

$Result = (NOT((A - B) \text{ OR } (B - A))) >> (W - 1)$.

Here NOT negates bits. $A - B$ and $B - A$ is zero iff numbers are equal otherwise they are of different signs which ORed together will give a negative number.

The result is $1$ if numbers are equal and $0$ otherwise.

###### Best Answer from StackOverflow

Question Source : http://cs.stackexchange.com/questions/63972

**3.2K people like this**

## 0 comments:

## Post a Comment

Let us know your responses and feedback