We need a method of naming the places where Main Memory stores data.
Each location needs a unique name, just like houses in a town need a unique street address.
Rather than a street name and house number, memory addresses are just numbers.
A memory address holds 1 byte of data where
|1 bit =||0 or 1, on or off|
|1 byte =||8 bits|
|1 kilobyte (K or KB) =||1024 bytes|
|1 megabyte (MB) =||1024 kilobytes|
You might wonder why 1024 instead of 1000 bytes per kilobyte. That is because computers don't count by tens like people. Computers count by twos and powers of 2. 1024 is 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2, that is 2 times itself ten times. It's a rather convenient size number (for computers!).
Update: Things are changing faster than I can type! The explanation above is no longer entirely true (July 2000). Different scientific and technical areas are using the words differently. For data storage devices and telecommunications a megabyte is 1 000 000 bytes. For data transmission in LANs a megabyte is 1 048 576 bytes as described above. But for data storage on a floppy disk a megabyte is 1 024 000 bytes!
A new set of words has been created to make it clear what size is really being used. See http://physics.nist.gov/cuu/Units/binary.html for a further explanation.