По этому поводу у меня возник спор с одним из читателей. Впрочем, так как мой оппонент оставлял анонимные комментарии, то вполне возможно, что это был не один человек. Хотя, скорее всего всё-таки один. Но не в этом суть.
Так как этот вопрос настолько щепетильный, что даже появляются анекдоты по этой теме, я решил раскрыть его более подробно.
Итак, из школьной программы всем известно, что существует международная система измерений - СИ, в которой чётко указано, что приставка “кило” означает, что исходнная единица измерения должна быть умножена на 10 в третьей степени, то есть на 1000.
Исходя из этого можно предположить, что в одном килобайте 1000 байтов.
Однако любой программист вам скажет, что в килобайте 1024 байта.
Как же так? В чём дело?
А дело в том, что приставка “кило” в СИ имеет отношение к десятичной системе счисления.
А в информационных технологиях используется двоичная система счисления.
Поэтому здесь принято считать по другому.
В двоичной системе один килобайт - это 2 в десятой степени, то есть 1024 байта.
Поэтому в двоичной системе кратность не 1000, а 1024.
То есть в одном мегабайте будет:
1024 * 1024 = 1048579 байтов,
а не 1000000, то есть НЕ 1000 * 1000
Ещё больше путаницы вносит тот факт, что, например, некоторые производители жёстких дисков указывают ёмкость диска именно в десятичной системе. То есть подразумевая, что в одном килобайте 1000 байтов.
В таких случаях, когда на жёстком диске написано, например, 50 ГБ, то операционная система, которая определяет ёмкость в “правильных” единицах, определит объём винчестера как 46,5 ГБ.
Это чисто маркетинговая политика - производитель таким образом немного увеличивает ёмкость винчестера “за те же деньги”. И при этом формально никого не обманывает.
Надо сказать, что первоначально, для того чтобы не путать “кило” и прочие десятичные приставки с двоичными числами, использовались другие приставки.
Например, килобайт обозначался как К-байт (кабайт). Однако это название не прижилось.
И сегодня суровая практическая реальность такова, что все ИТ-шники, когда говорят “килобайт”, подразумевают, что это 1024 байта.
Вывод: Изучайте информатику - это интересно!