# Convert from Decimal to Binary

The decimal (base ten) numeral system has ten possible values (0,1,2,3,4,5,6,7,8, or 9) for each place-value. In contrast, the binary (base two) numeral system has two possible values represented as 0 or 1 for each place-value.^{[1]} Since the binary system is the internal language of electronic computers, serious computer programmers should understand how to convert from decimal to binary.

## Contents

## Steps

### Converter

Doc:Decimal to Binary Converter

### Short Division by Two with Remainder

- Set up the problem. For this example, let's convert the decimal number 156
_{10}to binary. Write the decimal number as the dividend inside an upside-down "long division" symbol. Write the base of the destination system (in our case, "2" for binary) as the divisor outside the curve of the division symbol.- This method is much easier to understand when visualized on paper, and is much easier for beginners, as it relies only on division by two.
- To avoid confusion before and after conversion, write the number of the base system that you are working with as a subscript of each number. In this case, the decimal number will have a subscript of 10 and the binary equivalent will have a subscript of 2.

- Divide. Write the integer answer (quotient) under the long division symbol, and write the remainder (0 or 1) to the right of the dividend.
^{[2]}- Since we are dividing by 2, when the dividend is even the binary remainder will be 0, and when the dividend is odd the binary remainder will be 1.

- Continue to divide until you reach 0. Continue downwards, dividing each new quotient by two and writing the remainders to the right of each dividend. Stop when the quotient is 0.
- Write out the new, binary number. Starting with the bottom remainder, read the sequence of remainders upwards to the top. For this example, you should have 10011100. This is the binary equivalent of the decimal number 156. Or, written with base subscripts: 156
_{10}= 10011100_{2}- This method can be modified to convert from decimal to
*any*base. The divisor is 2 because the desired destination is base 2 (binary). If the desired destination is a different base, replace the 2 in the method with the desired base. For example, if the desired destination is base 9, replace the 2 with 9. The final result will then be in the desired base.

- This method can be modified to convert from decimal to

### Descending Powers of Two and Subtraction

- Start by making a chart. List the powers of two in a "base 2 table" from right to left. Start at 2
^{0}, evaluating it as "1". Increment the exponent by one for each power. Make the list up until you've reached a number very near the decimal system number you're starting with. For this example, let's convert the decimal number 156_{10}to binary. - Look for the greatest power of 2. Choose the biggest number that will fit into the number you are converting. 128 is the greatest power of two that will fit into 156, so write a 1 beneath this box in your chart for the leftmost binary digit. Then, subtract 128 from your initial number. You now have 28.
- Move to the next lower power of two. Using your new number (28), move down the chart marking how many times each power of 2 can fit into your dividend. 64 does not go into 28, so write a 0 beneath that box for the next binary digit to the right. Continue until you reach a number that
**can**go into 28. - Subtract each successive number that can fit, and mark it with a 1. 16 can fit into 28, so you will write a 1 beneath it's box and subtract 16 from 28. You now have 12. 8 does go into 12, so write a 1 beneath 8's box and subtract it from 12. You now have 4 .
- Continue until you reach the end of your chart. Remember to mark a 1 beneath each number that does go into your new number, and a 0 beneath those that don't.
- Write out the binary answer. The number will be exactly the same from left to right as the 1's and 0's beneath your chart. You should have 10011100. This is the binary equivalent of the decimal number 156. Or, written with base subscripts: 156
_{10}= 10011100_{2}.- Repetition of this method will result in memorization of the powers of two, which will allow you to skip Step 1.

## Tips

- The calculator that comes installed with your operating system can do this conversion for you, but as a programmer, you're better off with a good understanding of how the conversion works. The calculator's conversion options can be made visible by opening its "View" menu and selecting "Programmer"
- Converting in the opposite direction, from Convert-from-Binary-to-Decimal, is often easier to learn first.
- Practice. Try converting the decimal numbers 178
_{10}, 63_{10}, and 8_{10}. The binary equivalents are 10110010_{2}, 111111_{2}, and 1000_{2}. Try converting 209_{10}, 25_{10}, and 241_{10}to, respectively, 11010001_{2}, 11001_{2}, and 11110001_{2}.

## Related Articles

- Convert from Binary to Decimal
- Convert from Decimal to Hexadecimal
- Decode Binary Numbers
- Convert Binary to Octal Number
- Write Numbers in BCD (Binary Coded Decimal) Digits