In more detail
A byte stores one ASCII character, one colour channel or two Hexadecimal digits. Larger units come in two families: decimal (1 kilobyte, KB, is 1,000 bytes; 1 MB is 1,000,000) and binary (1 kibibyte, KiB, is 1,024 bytes; 1 MiB is 1,048,576). Storage makers use the decimal units, while some operating systems count in binary units but still label them KB, MB and GB.
Why it matters
That mismatch is why a new "500 GB" drive shows as about 465 GB in Windows: 500,000,000,000 bytes divided by 1,073,741,824 is 465.66. The gap grows with size: 1 TB shows as about 931 GB. Network speeds are quoted in bits, not bytes, so divide by 8 to estimate download time.
Example
A 100 Mbit/s connection moves at most 100,000,000 ÷ 8 = 12.5 MB of data per second, so a 1 GB file takes at least 80 seconds before any protocol overhead.
Common confusion
Lower-case b means bit and upper-case B means byte: 100 Mb/s is eight times less than 100 MB/s. See also Bandwidth.