Ladyada, there is a good reason for defining KB as 1000 bytes and MB as 1000 Kbytes and GB as 1000 MBytes in the storage industry. Actually, K is 1000 in communications, and other measurements in the decimal world. Maybe 1024 = KB and 1024 * 1024 = MB is the one that is not natural, because it is binary, which is common in digital computers (basically memory addressing). Hard disks doesn't need to be addressed in binary, they can be addressed in decimal, which is more understandable, so I don't think it is a marketing trick created to make the HDs look much bigger... marketing people are not that smart ;-) Probably they don't even know how a HD looks like!
the issue is if you have a "100 megabyte file" (as your file manager reports) its going to take up 100 * 1024 kb. however a 100 megabyte diskdrive only stores 100 * 1000 kb.
anyways, its just a stupid math example. if you can think of a better example that uses the same elements, let me know and i can change it.