awesum :) thanx all

On Tue, Jul 12, 2011 at 8:27 PM, bittu <shashank7andr...@gmail.com> wrote:

> Lets Try For Decimal Integer Number how we add them
>
> 1 Add 759 + 674, but “forget” to carry I then get 323
> 2 Add 759 + 674 but only do the carrying, rather than the addition of
> each digit I then
>  get 1110
> 3 Add the result of the first two operations (recursively, using the
> same process de-
> scribed in step 1 and 2): 1110 + 323 = 1433
>
> we have done for decimal numbers
>
> Now, how would we do this in binary?
>
> 1 If I add two binary numbers together but forget to carry, bit[i]
> will be 0 if bit[i] in a and
> b are both 0 or both 1 This is an XOR
> 2 If I add two numbers together but only carry, I will have a 1 in
> bit[i] if bit[i-1] in a and b
> are both 1’s This is an AND, shifted
>
> 3 Now, recurse until there’s nothing to carry
>
> int add_no_arithm(int a, int b)
> {
> if (b == 0) return a;
> int sum = a ^ b; // add without carrying
> int carry = (a & b) << 1; // carry, but don’t add return
> add_no_arithm(sum, carry); // recurse
> }
>
> Subtraction uses add function internally as well as we have adder !!!
>
> int sub(int x, int y)
> {
>   return(add(x,add(~y,1));
>
> }
>
> Thanks
> Shashank Mani
> Computer Science
> Birla Institute of Technology Mesra
>
> --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algogeeks@googlegroups.com.
> To unsubscribe from this group, send email to
> algogeeks+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to