Computers work with binary representations of numbers, but humans work with decimal numbers. There are some decimal numbers that cannot be exactly represented in binary. It's the same kind of issue that prevents the fraction 1/3 from being exactly represented as a decimal number.
Microsoft has this website on "How to correct rounding errors in floating-point arithmetic":
http://support.microsoft.com/kb/214118
I hope that helps.
Bookmarks