Byte (capital B) comprises 8 bits (lower b).
Multiples are kilo (lower k) considered for practical terms as 1 000 or 103; Mega (capital M) for 1 million or 106; Giga (capital G) for 1 billion (billion under International System of Units ISU) or 109; Tera (capital T) for 1 trillion or 1012 and so on.
Practical terms above means the most common conversion used, which is in accordance with the 1998 approved rules by the International Electrotechnical Commission.
Computer units actually are in powers of 2 (binary system) and to avoid confusion (or to increase them all) the same rules above mentioned determined the following new prefixes for computer units:
Kilo = Ki = 210 = 1024
Mega = Mi = 220 = 10242 = 1 048 576
Giga = Gi = 230 = 10243 = 1 073 741 824
Tera = Ti = 240 = 10244 = 1 099 511 627 776 and so on
Given that, 2 megabytes should be 2MB equivalent to 2 000 000 bytes in the metric system or 2MiB equivalent 2 097 152 bytes in the binary system.
Currently there is a mix of the two notations and it will take time until everyone gets used to it, or perhaps never. How many different pounds exist? Almost a dozen.
Now, for a proper metric prefix we should use kb for kilobit, kB for kilobyte, Mb for megabit, MB for megabyte etc.. We normally do not pay much attention to that because the understanding flows in the context.
The metric prefixes are:
yotta- (Y-) 1024 1 septillion
zetta- (Z-) 1021 1 sextillion
exa- (E-) 1018 1 quintillion
peta- (P-) 1015 1 quadrillion
tera- (T-) 1012 1 trillion
giga- (G-) 109 1 billion
mega- (M-) 106 1 million
kilo- (k-) 103 1 thousand
hecto- (h-) 102 1 hundred
deka- (da-)** 10 1 ten
deci- (d-) 10-1 1 tenth
centi- (c-) 10-2 1 hundredth
milli- (m-) 10-3 1 thousandth
micro- (µ-) 10-6 1 millionth
nano- (n-) 10-9 1 billionth
pico- (p-) 10-12 1 trillionth
femto- (f-) 10-15 1 quadrillionth
atto- (a-) 10-18 1 quintillionth
zepto- (z-) 10-21 1 sextillionth
yocto- (y-) 10-24 1 septillionth
The Angstrom 10-10 ( Å ) is an exception in the ISU, put here only because of its common usage in physics.