Funny how when this subject comes up, people will come in and bitch about how everybody is wrong when they say that 1 MB is 1,000,000 bytes and not 1,048,576. Presumably this is to display their superior intellect.
But those same people never bitch about the fact that 1 MB when talking about RAM is binary and not metric, and is thus the exact opposite. Unless of course you can find me some 1,000,000 byte RAM. Which ain't gonna happen. Computers are binary. The fact that hard drive manufacturers decided to take advantage of the fact that a computer kilo-, mega-, giga- are (by most people who have to deal with it for a living) greater than their standard metric counterpart doesn't change the fact that computers don't work on standard metric prefixes. If I want to malloc 1 KB of memory, I'd sure as hell better get 1024 bytes and not 1000 or I'm not going to be happy.