Computer Arithmetic - Binary for Decimal Numbers
Posted
by MarkPearl
on Geeks with Blogs
See other posts from Geeks with Blogs
or by MarkPearl
Published on Wed, 21 Mar 2012 04:41:18 GMT
Indexed on
2012/03/21
11:30 UTC
Read the original article
Hit count: 320
This may be of use to someone else doing this course…
The Problem
In the section on Computer Arithmetic it gives an example of converting -7.6875 to IEEE floating point format. I understand all the steps except for the first one, where it does the following...
7.6875 (base 10) = 111.1011 (base 2)
I don't understand the conversion - I realize that 111 (base 2) = 7 (base 10), but how does the .6875 part relate to the .1011? Or am I totally off track with this?
The Solution
The fractional part of the decimal to binary conversion is done as follows:
0.6875 x 2 = 1.375 = 0.375 + 1 (Keep the 1 separate)
0.375 x 2 = 0.75 = 0.75 + 0
0.75 x 2 = 1.5 = 0.5 + 1
0.5 x 2 = 1.0 = 0.0 + 1
The bit pattern of 0s and 1s on the right-hand side gives you the fractional part.
So 0.6875 (base 10) = .1011 (Base 2)
See also Stallings, chapter 19.
© Geeks with Blogs or respective owner