# How do I convert a number with a decimal point to binary?

## Homework Statement

I dont know how to convert the number 148.3 to binary form.

## Homework Equations

Just having a decimal point really throws in a monkey wrench in the "keep dividing by and if a number halfed has a decimal point ignore the after decimal point stuff two" procedure.

## The Attempt at a Solution

I got the answer 101010001 but I looked the answer up and it's apparently 10010100.How can this be?.I was desperate enough to just look up the answers but I still dont how 200.45 can be 11001000,100.9 can be 1100100 and 9001.375 can be 10001100101001

If it helps me teacher wrote a note that looks like this ...

{want to convert to 0.7 decimal to binary -->
*multiply by 2 and list surplus (0,1) 0.7 decimal=0.1011001100
½,¼,1/8,1/16, 1/128,1/256

surplus 0.7*2
______________
I 1 I .4*2
I 0 I .8*2
V 1 I .6*2
0 I .4*2
0 I .8*2
1 I .6*2 }

## The Attempt at a Solution

Related Precalculus Mathematics Homework Help News on Phys.org
Mark44
Mentor

## Homework Statement

I dont know how to convert the number 148.3 to binary form.

## Homework Equations

Just having a decimal point really throws in a monkey wrench in the "keep dividing by and if a number halfed has a decimal point ignore the after decimal point stuff two" procedure.

## The Attempt at a Solution

I got the answer 101010001 but I looked the answer up and it's apparently 10010100.
Let's look at things in two parts: the integer part and the fractional part.

The integer part is 148, which is 9416 in hexadecimal (i.e., base-16). The nice thing about hex is that it is so easy to convert to binary. You just convert each hex digit.
916 = 1001
416 = 0100

So 14810 = 9416 = 100101002, which agrees with the answer you looked up. Note that this doesn't include the fractional part, .3.

How can this be?.I was desperate enough to just look up the answers but I still dont how 200.45 can be 11001000,100.9
Typo?
can be 1100100 and 9001.375 can be 10001100101001
I don't see how it can be, either. Just as your decimal fraction has a decimal point, your binary fraction will need a "binary" point, to separate the integer part from the fractional part.
If it helps me teacher wrote a note that looks like this ...

{want to convert to 0.7 decimal to binary -->
*multiply by 2 and list surplus (0,1) 0.7 decimal=0.1011001100
½,¼,1/8,1/16, 1/128,1/256

surplus 0.7*2
______________
I 1 I .4*2
I 0 I .8*2
V 1 I .6*2
0 I .4*2
0 I .8*2
1 I .6*2 }
What seems to be going on in the table is this:

Multiply it by 2 to get 1.4. Save the part to the left of the decimal point, 1.
Take the new fractional part -- 0.4
Multiply it by 2 to get 0.8. Save the part to the left of the decimal point, 0.
Take the new fractional part -- 0.8
Multiply it by 2 to get 1.6. Save the part to the left of the decimal point, 1.
Take the new fractional part -- 0.6
Multiply it by 2 to get 1.2. Save the part to the left of the decimal point, 1.
etc.

This means that .710 ≈ .1011...2

The binary fraction means 1 * 1/2 + 0 * 1/4 + 1 * 1/8 + 1 * 1/16. If you add these up you get .6875, which is a little smaller that .7. I stopped the process early, so I left off some terms, which makes my result a little small. The more terms you add, the closer you'll get to .7.

I should mention that some decimal fractions that have nice compact forms in base-10 have infinitely long representations in binary, and 0.7 is one such number.

Ray Vickson
Homework Helper
Dearly Missed

## Homework Statement

I dont know how to convert the number 148.3 to binary form.

## Homework Equations

Just having a decimal point really throws in a monkey wrench in the "keep dividing by and if a number halfed has a decimal point ignore the after decimal point stuff two" procedure.

## The Attempt at a Solution

I got the answer 101010001 but I looked the answer up and it's apparently 10010100.How can this be?.I was desperate enough to just look up the answers but I still dont how 200.45 can be 11001000,100.9 can be 1100100 and 9001.375 can be 10001100101001

If it helps me teacher wrote a note that looks like this ...

{want to convert to 0.7 decimal to binary -->
*multiply by 2 and list surplus (0,1) 0.7 decimal=0.1011001100
½,¼,1/8,1/16, 1/128,1/256

surplus 0.7*2
______________
I 1 I .4*2
I 0 I .8*2
V 1 I .6*2
0 I .4*2
0 I .8*2
1 I .6*2 }

## The Attempt at a Solution

The decimal part 0.3 cannot be converted exactly to binary for any finite number of bits after the decimal point. The approximation .1011001100 evaluates to 179/256 ≈ 0.69921875.

This issue is well-known to anyone who has written computer codes in Fortran, C, Basic, or whatever: it is the source of some occasional software failures, if the person writing the code does not take care to account for it.

RGV

Simon Bridge
Homework Helper
A decimal number in some base b is written xy.z (say) where x,y, and z are single digits in that base.

This means that the number is $x\times b^2 + y\times b^1 + z \times b^{-1}$

So - decimal 0.3 is $3\times 10^{-1}$ and the task is to expand 0.3 in terms of negative powers of 2.

This is a similar process for positive powers.
Thus:
dec[0.5] = bin[0.1]
dec[0.25] = bin[0.01]
dec[0.75] = bin[0.11]
... and so on.

Note, some decimals like 0.1 and 0.3 are recurring in binary ;)

another example