By | 03.12.2016

# C program for Binary Addition and Subtraction

Write a C program to calculate Binary Addition and Binary Subtraction

Binary addition and binary subtraction is similar to regular (daily life) addition and binary subtraction, but here addition or subtraction performs only two digits those are 0 and 1, these are binary digits hence such kind of addition or subtraction is called binary addition and binary subtraction.

Binary Addition works in the same way, except that only 0’s and 1’s can be used, instead of the whole spectrum of 0-9. This actually makes binary addition much simpler than decimal addition, as we only need to remember the following:

0+0 = 0
0+1 = 1
1+0 = 1
1+1 = 0 (1 carries out)

Take two numbers, suppose numbers are 10 and 20 their binaries are 1010 and 10100.

10 = 0 1 0 1 0
20 = 1 0 1 0 0
= 1 1 1 1 0
= 30

## Binary Subtraction

Subtraction and Borrow, these two words will be used very frequently for the binary subtraction. There are four rules of binary subtraction.

In binary subtraction

0-0 = 0
1-0 = 1
0-1 = 1 (1 borrows out)
1-1 = 0

Example of Binary Subtraction:

Take two numbers, suppose numbers are 20 and 10 their binaries 10100 and 1010.

Now sub 10 from 20

20 = 1 0 1 0 0
10 = 0 1 0 1 0
= 0 1 0 1 0
= 10

## SOURCE CODE : :

```#include <stdio.h>

{
int c; //carry
while (b != 0) {
//find carry and shift it left
c = (a & b) << 1;
//find the sum
a=a^b;
b=c;
}
return a;
}

//-------Function for Binary Subtraction--------

int binSubtracton(int a, int b)
{
int carry;
//get 2's compliment of b and add in a

while (b != 0) {
//find carry and shift it left
carry = (a & b) << 1;
//find the sum
a = a ^ b;
b = carry;
}
return a;
}

int main()
{

printf("Input first integer value: ");
scanf("%d",&number1);

printf("Input second integer value: ");
scanf("%d",&number2);

binSub=binSubtracton(number1,number2);

printf("Binary Subtraction: %d\n",binSub);

return 0;

}```

Also read : : Write a C program to check date is valid or not

## Output : :

```Input first integer value: 12
Input second integer value: 5
Binary Subtraction: 7```
Article Rating
Category: Advance Programs C Programming Tags:

My name is Tunde Ajetomobi, a Tech Enthusiast and Growth Hacker. I enjoy creating helpful content that solves problem across different topics. Codezclub is my way of helping young aspiring programmers and students to hone their skills and find solutions on fundamental programming languages.

Subscribe
Notify of