This question has been asked repeatedly for years. This passage explains it:
"...Since consumers don't think in base 2 mathematics, manufacturers decided to rate most drive capacities based on the standard base 10 numbers we are all familiar with. Therefore, one gigabyte equals one billion bytes, while one terabyte equals one trillion bytes. This approximation was not much of a problem back when we used the kilobyte, but each level of increase in the prefix also increases the total discrepancy of the actual space compared to the advertised space.
"Here is a quick reference to show the amount that the actual values differ compared to the advertised for each common referenced value:
Megabyte difference = 48,576 bytes
Gigabyte difference = 73,741,824 bytes
Terabyte difference = 99,511,627,776 bytes
"Based on this, for each gigabyte that a drive manufacturer claims, it is over-reporting the amount of disk space by 73,741,824 bytes or roughly 70.3 MB of disk space. So, if a manufacturer advertises an 80 GB (80 billion bytes) hard drive, the actual disk space is around 74.5 GB of space, roughly 7 percent less than what is advertised. ..."