title: What is the relationship between digits of significance and precision loss in floating point numbers?
body: <p>So I have been trying to wrap by head around the relation between the number of significant digits in a floating point number and the relative loss of precision, but I just can't seem to make sense of it. I was reading an article earlier that said to do the following:</p>
  
  <ol>
  <li>Set a float to a value of 2147483647. You will see that its value is actually 2147483648</li>
  <li>Subtract 64 from the float and you will see that the operation is correct</li>
  <li>Subtract 65 from the float and you will see that you actually now have 2147483520, meaning that it actually subtracted 128.</li>
  </ol>
  
  <p>So why is this 128 when there are 10 significant digits? I understand how floats are stored (1 bit for sign, 8 bits for exponent, 23 bits for mantissa) and understand how you will lose precision if you assume that all integers will automatically find exact homes in a float data structure, but I don't understand where the 128 comes from. My intuition tells me that I'm on the right track, but I'm hoping that someone may be able to clear this up for me.</p>
  
  <p>I initially thought that the distance between possible floats was 2 ^ (n-1) where n was the number of significant digits, but this did not hold true.</p>
  
  <p>Thank you!</p>