Thanks to every for kind response On Fri, Dec 31, 2010 at 6:38 AM, Dave <[email protected]> wrote:
> @Rajeev: When you add two one-bit quantities, you get a two-bit > result: > 0 + 0 = 00, 0 + 1 = 01, 1 + 0 = 01, and 1 + 1 = 10. > Note that the leftmost bit of sum of the the single-bit quantities A > and B, obeys the logic A & B, and the rightmost bit obeys A ^ B, where > & is the logical AND operation and ^ is the logical eXclusive OR > operation. When adding a multibit binary number, the leftmost bit > carries into the next bit position. So the code you presented just > does the multibit addition using the above two rules on all bits in > parallel. The first two statements determine the results using the > "leftmost bit" and "rightmost bit" rules above. If there are any > carries, then they must be added to the next position to the left. > Thus, shift the carries left one bit and repeat the addition process > using the leftmost and rightmost bit rules again. Do this until there > are no remaining carries. Hope this helps. > > Dave > > On Dec 31, 6:19 am, rajeev kumar <[email protected]> wrote: > > Can any one tell me how to add two numbers using bitwise operators only. > > > > After spending so much time on googling,i found the below java code.But > is > > is confusing. > > <[email protected]>public class AddTwoNumbers { > > > > private static int myAdd(int a, int b) > > { > > int carry = a & b; > > int result = a ^ b; > > while(carry != 0) > > { > > int shiftedcarry = carry << 1; > > carry = result & shiftedcarry; > > result ^= shiftedcarry; > > } > > return result; > > } > > > > public static void main(String[] args){ > > System.out.println(myAdd(4, 5)); > > } > > > > } > > > > Please explain it. > > > > -- > > Thank You > > Rajeev Kumar > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]<algogeeks%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- Thank You Rajeev Kumar -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
