Sounds like attempt to get someone to do his homework, so I'm not giving a direct answer and hope others won't either.
1MB, meaning a megabyte, is usually 1024*1024 bytes. Occasionally, people have been known to re-define megabyte as 1000*1024 bytes, or even 1000*1000 bytes. This practice seems to be most common amongst storage device manufacturers, since it allows them to claim higher capacity.
A Java long is a 64-bit signed two's complement integer.
Betty Rubble? Well, I would go with Betty... but I'd be thinking of Wilma.
Hm. M is a international standardized way to express Mega which is one Million which is 1000*1000. IT-folk created their own convention by translating Mega to 1024*1024 but that's not correct. Today we have MiB to express 1024*1024. here is a more detailed information: http://en.wikipedia.org/wiki/MiB
For homework I would use a comment to show I'm aware of the 1024*1024-habit - perhaps the teacher never heared of mebibyte before.
I'm not even sure what's really being asked here. Another interpretation is that the size of a long is 8 bytes, period. (It could theoretically be more on some implementations, but that seems extremely unlikely.) It takes 8 bytes to store a value like 0x1f400000L. If you want to convert that to MB, go ahead...