• Support PF! Buy your school textbooks, materials and every day products Here!

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

  • Thread starter xod_s
  • Start date
  • #1
8
0

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
read down 1 I .2*2
0 I .4*2
0 I .8*2
1 I .6*2 }

Homework Statement





Homework Equations





The Attempt at a Solution

 

Answers and Replies

  • #2
33,075
4,779

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.

I'll leave that to you, after you've read my comments below.




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
read down 1 I .2*2
0 I .4*2
0 I .8*2
1 I .6*2 }
What seems to be going on in the table is this:

Start with the fractional part -- 0.7
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.
 
  • #3
Ray Vickson
Science Advisor
Homework Helper
Dearly Missed
10,705
1,722

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
read down 1 I .2*2
0 I .4*2
0 I .8*2
1 I .6*2 }

Homework Statement





Homework Equations





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
 
  • #4
Simon Bridge
Science Advisor
Homework Helper
17,841
1,642
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 [itex]x\times b^2 + y\times b^1 + z \times b^{-1}[/itex]

So - decimal 0.3 is [itex]3\times 10^{-1}[/itex] 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
http://answers.yahoo.com/question/index?qid=20090819210335AAYfQaE
 

Related Threads for: How do I convert a number with a decimal point to binary?

  • Last Post
Replies
4
Views
2K
  • Last Post
Replies
1
Views
8K
Replies
3
Views
6K
Replies
17
Views
18K
  • Last Post
Replies
7
Views
2K
Replies
10
Views
7K
Replies
2
Views
2K
Replies
4
Views
900
Top