Some portion of the space on a hard disk is taken up by the formatting information that
marks the start and end of sectors, ECC, and other
"overhead". For this reason, a hard disk's storage total depends on if you are
looking at the formatted or unformatted capacity. The difference can be quite significant:
20% or even more.
Older drives that were typically low-level
formatted by the user, often had their size listed in terms of unformatted capacity.
For example, take the Seagate ST-412, the first drive used on the original IBM PC/XT in
the early 1980s. The "12" in this model number refers to the drive's unformatted
capacity of 12.76 MB. Formatted, it is actually a 10.65 MB drive.
Now, let's be honest: stating the capacity of the hard disk in unformatted terms is
lame. Since nobody can use a drive that is unformatted, the only thing that matters is the
formatted capacity. Stating the drive in terms of unformatted capacity is not quite as bad
as how tape drive manufacturers always report the size of their drives assuming 2:1
compression, of course. But it's still lame. 
Fortunately, this is no longer an issue today. Since modern drives are always low-level
formatted at the factory, it would be extremely weird to state their sizes in
terms of unformatted capacity, and manufacturers have stopped doing this. In fact, there
usually isn't any easy way to find out the unformatted capacity of new drives! So
to take another example from our friends at Seagate, the ST-315330A, the "15330"
refers to the drive's approximate formatted capacity, 15,364 MB (15.4 GB).
Next: Binary vs. Decimal Capacity Measurements