Есть несколько основных терминов, которые просты и понятны:
* A bit (b) is the smallest unit of data comprised of just {0,1}
* 1 nibble (-) = 4 bits (cutesy term with limited usage; mostly bitfields)
* 1 byte (B) = 8 bits (you could also say 2 nibbles, but that’s rare)
Для преобразования между битами и байтами (с любым префиксом) просто умножьте или разделите на восемь; красиво и просто.
Теперь все становится немного сложнее, потому что есть две системы измерения больших групп данных: десятичная и двоичная . В течение многих лет программисты и инженеры просто использовали одни и те же термины для обоих, но путаница в конечном итоге вызвала некоторые попытки стандартизировать надлежащий набор префиксов.
Каждая система использует одинаковый набор префиксов, которые могут применяться к битам или байтам. Каждый префикс начинается одинаково в обеих системах, но после этого бинарные звучат как детские разговоры.
Десятичная система - это основание-10, к которому привыкло большинство людей и которым удобно пользоваться, потому что у нас 10 пальцев. Бинарная система - это base-2, к которой большинство компьютеров привыкли и которой удобно пользоваться, потому что у них два состояния напряжения.
Десятичная система очевидна и проста в использовании для большинства людей (она достаточно проста для умножения в наших головах). Каждый префикс увеличивается на 1000 (причина этого совсем другая).
Бинарная система гораздо сложнее для большинства некомпьютерных людей, и даже программисты часто не могут умножить произвольно большие числа в своих головах. Тем не менее, это просто быть кратным двум. Каждый префикс увеличивается на 1024. Один «K» равен 1024, потому что это ближайшая степень от двух к десятичному «k», равному 1000 (это может быть верно в данный момент, но разница быстро увеличивается с каждым последующим префиксом).
Числа одинаковы для битов и байтов с одинаковым префиксом.
* Decimal:
* 1 kilobyte (kB) = 1,000 B = 1,000^1 B 1,000 B
* 1 megabyte (MB) = 1,000 KB = 1,000^2 B = 1,000,000 B
* 1 gigabyte (GB) = 1,000 MB = 1,000^3 B = 1,000,000,000 B
* 1 kilobit (kb) = 1,000 b = 1,000^1 b 1,000 b
* 1 megabit (Mb) = 1,000 Kb = 1,000^2 b = 1,000,000 b
* 1 gigabit (Gb) = 1,000 Mb = 1,000^3 b = 1,000,000,000 b
* …and so on, just like with normal Metric units meters, liters, etc.
* each successive prefix is the previous one multiplied by 1,000
* Binary:
* 1 kibibyte (KiB) = 1,024 B = 1,024^1 B 1,024 B
* 1 mebibyte (MiB) = 1,024 KB = 1,024^2 B = 1,048,576 B
* 1 gibibyte (GiB) = 1,024 MB = 1,024^3 B = 1,073,741,824 B
* 1 kibibit (Kib) = 1,024 b = 1,024^1 b = 1,024 b
* 1 mebibit (Mib) = 1,024 Kb = 1,024^2 b = 1,048,576 b
* 1 gibibit (Gib) = 1,024 Mb = 1,024^3 b = 1,073,741,824 b
* …and so on, using similar prefixes as Metric, but with funny, ebi’s and ibi’s
* each successive prefix is the previous one multiplied by 1,024
Обратите внимание, что разница между десятичной и двоичной системами начинается с малого (при 1 КБ они составляют всего 24 байта или на 2,4% друг от друга), но растут с каждым уровнем (при 1 ГБ они составляют> 70 МБ или с интервалом 6,9%).
Как правило, аппаратные устройства используют десятичные единицы (биты или байты), в то время как программное обеспечение использует двоичные (обычно байты).
Это причина того, что некоторые производители, в частности, устройства mfgs для накопителей, предпочитают использовать десятичные единицы, потому что это приводит к тому, что размер диска звучит больше, но пользователи разочаровываются, когда обнаруживают, что его размер меньше ожидаемого, когда они видят Windows et. и др. сообщить размер в двоичном Например, 500 ГБ = 476 ГБ, поэтому, хотя накопитель рассчитан на 500 ГБ и помечен как таковой, « Мой компьютер» отображает двоичный файл 476 ГБ (но как «476 ГБ»), поэтому пользователи задаются вопросом, куда ушли остальные 23 ГБ. (Производители дисков часто добавляют сноску к пакетам, утверждая, что «форматированный размер меньше», что вводит в заблуждение, поскольку накладные расходы на файловую систему ничто по сравнению с разницей между десятичными и двоичными единицами.)
Сетевые устройства часто используют биты вместо байтов по историческим причинам, и интернет-провайдерам часто нравится рекламировать с использованием битов, потому что это делает скорость соединений, которые они предлагают, более высокой: 12 Мбит / с вместо 1,5 МБ / с. Они часто даже смешивают и сопоставляют биты и байты, а также десятичные и двоичные числа. Например, вы можете подписаться на то, что провайдер называет линией «12 МБ / с», думая, что вы получаете 12 МБ / с, но на самом деле просто получаете 1,43 МБ / с (12 000 000/8/1024/1024).