Binary Subtraction Calculator
This binary subtraction calculator is a great tool to help you understand how to subtract binary numbers. Here you can find descriptions of the two primary methods that deal with the subtraction of binary numbers, namely the Borrow Method, and the Complement Method. There is also a short note about the different representations of signed and unsigned binary numbers at the end.
How to subtract binary numbers?
The subtraction of binary numbers is essentially the same as for decimal, hexadecimal, or any other system of numbers.
Just to clarify things  binary numbers are values containing only two types of digits, 0 or 1. Every digit refers to the consecutive powers of 2, and whether it should be multiplied by 0 or 1. As an example, 13
in decimal notation is equivalent to 1101
in binary notation, because 13 = 8 + 4 + 1
, or 13 = 1*2³ + 1*2² + 0*2¹ + 1*2⁰
using scientific notation.
So, how to subtract binary numbers, e.g., 1101  110
? We can always convert these values to decimals, classically subtract them, and then transform them once again into binary form:
1101₂  110₂ = 13₁₀  6₁₀ = 7₁₀ = 111₂
,
Where ₂ = a binary number and ₁₀ = a decimal number. As long as the number of digits is relatively small, we can do it by hand. For long numbers, it gets quite tricky. And what if we wanted to subtract a larger number from a smaller one? Here is where the binary subtraction calculator comes in handy! Let's jump to the next section to learn about the different methods of solving these problems.
Methods of subtraction of binary numbers
In this part, we will describe two methods of dealing with the subtraction of binary numbers, the Borrow Method and the Complement Method. There are several other tricks as well, but these two are the most prevalent, and help you understand the problem better.
 Borrow Method  all you have to do is aligning the numbers as you would do with regular decimal subtraction. The procedure is almost the same! The only difference is that you operate with only two digits, not ten. You need to subtract digits in the same column, following these rules:
1  0 = 1
;1  1 = 0
;0  0 = 0
; and0  1 = 1
which actually comes from10  1 = 1
, as you borrow1
from the closest digit to the left, and after all that the1
you borrowed becomes0
.
 Complement Method  the process is divided into a few steps:
 Align the numbers as would normally;
 Fill the second number with leading
0's
, so that both values have the same number of digits;  Replace the second number by its complement;
 Add these two binary numbers;
 Remove the leading
1
from the result, as there will be one digit more than we need; and  That's it! The remaining part is the final result.
If you want to see a step by step solution for your problem using the Complement Method, select "Yes" at the bottom of our binary subtraction calculator.
By the way, did you know that the concept of binary subtraction is quite common in several parts of a developers' toolkit? For example, the chmod command is one of them.
How to use the binary subtraction calculator?
Let's see how to subtract two binary numbers, e.g., 110 0101  1000 1100
. It's quite tricky because the second number has more digits than the first one, so we are about to subtract a larger number from a smaller one.
There is a clever way to work around this task. We can use use the identity a  b = (b  a)
, so we're going to reverse the order of subtraction and add a minus sign at the end. In other words, we estimate the absolute value and eventually attach a minus sign. Let's use the complement method:

By reversing the order, we have
1000 1100  110 0101
; 
Fill the second value with one leading zero,
1000 1100  0110 0101
; 
Find the complement of the second number  switch digits (
0→1, 1→0
) and add 1,0110 0101 → 1001 1011
; 
Add the first number and the complement of second one together,
1000 1100 + 1001 1011 = 1 0010 0111
; 
Remove the leading
1
and any adjacent0's
,1 0010 0111 → 10 0111

Remember to add a minus sign, so the outcome becomes
10 0111
; 
The final result of the subtraction of these binary numbers is
110 0101  1000 1100 = 10 0111
; and 
We can also convert the values to decimals to confirm the computations:
110 0101₂  1000 1100₂ = 101₁₀  140₁₀ = 39₁₀ = 10 0111₂
. Wonderful!
Binary numbers sign representations
Before making any computation, there is one crucial thing we have to take into account  the representation of numbers in binary code, especially the sign:
 The one we implement in our binary subtraction calculator, uses a minus sign (

) like we usually do with decimal numbers. In 8bit code,5
in binary is0000 0101
, while5
is0000 0101
. This system is really convenient because we don't have to care about the number of digits, so we can remove all the leading zeros with no issue. The numbers are then101
and101
, respectively.
You may also come across different notations:

One of them uses the first digit as the sign, typically 0 for positive and 1 for negative. If
5
in binary is0000 0101
, then5
becomes1000 0101
. 
Another one states that a negative number is the complement of the positive one, so
5
is once again0000 0101
, and5
is1111 1011
. We can see that the first digit still indicates the sign of a number.
Whenever you copy a value to our tool, make sure you input the number using the appropriate representation, e.g., if it has the first digit represents the sign, substitute 1
with 
, or leave 0
as it is.