Binary Subtraction Borrowing Logic for 1000 - 0110?

时间:2015-06-26 09:52:53

标签: binary bits subtraction

I am having a hardtime understanding the borrowing logic for 1000 - 0110 . I know the answer would be 0010 but I am having trouble understanding the borrowing part a little.

First Step is Ok 0 - 0 = 0

1000
0110
----
   0

Second Step 0 - 1 , so we need to borrow . We borrow 1 and as result 10 - 1 = 1

   ->1
    1000
    0110
    ----
      10

But at the next step there is nothing to borrow, so how does it work ?

2 个答案:

答案 0 :(得分:4)

When you borrow, you carry over binary 10 to the lower bit, so:

  0
->1
 0000
 0110
 ----
    0 

Then you borrow again, and subtract 1 from 10, which is 1:

   0
->11
 0000
 0110
 ----
    0 

And finally:

   0
->11
 0000
 0110
 ----
 0010 

答案 1 :(得分:0)

In computer, number will be presented as 2 parts: sign bit and value bits. a - b will be performed as a + (-b)

for positive number, its sign part is 0, value part is its binary representation. For your case, it's: 0 1000

for negative number, its sign part is 1, value part is: ~number + 1, for 0110, ~a is 1001, +1, the representation is : 1 1010

0 1000

1 1010

=======

0 0010

it is positive number 2