У любой тусовки есть свой язык, своя профессиональная терминология и свои тонкости восприятия мира, которые, помимо прочего, позволяют идентифицировать своих. Это нормально и полезно. Ненормально, когда члены тусовки начинают диктовать свои правила людям извне. Так, например, получилось с килобайтами, в которых 1024 байта.
А как всё было на самом деле? На определённом этапе развития (в начале 60-х годов) компьютеры стали использовать преимущественно двоичную адресацию памяти. Поэтому памяти обычно было столько, сколько влезает в данное число разрядов. Ну, или половинка от оного, если это лайт-версия мейнфрема, например
Отсюда получаем числа вроде 1024, 8192, 16384 и так далее – в общем, «тысячи с мелочью». Мелочью эти 384 байт (например), конечно, не считали, ибо стоили они, как крыло звездолёта, но под 16-ю тысячами могло пониматься именно 16384 и никак не 16658 или 16129.
Поэтому когда некоторые стали использовать сокращение K, все поняли, что имеется в виду не тысяча, а 1024. Обратите внимание на то, что K прописная. В системе СИ тысячу обозначают «к» строчной.

Джин Амдаль - один из первых, кто использовал приставку K в значении 1024
А потом ещё подтянулся софт, который общается с человеком. Сократить полное число до «двоичных килобайтов» намного проще, чем до настоящих – достаточно просто взять старшие биты. Деление на 10 более затратно с точки зрения операций, которые должен выполнить процессор.
В 80-е в ходу были уже мегабайты, и для них взяли «сишную» же приставку-миллионник «М», причём регистр менять не стали. Но и тогда с компьютерами работали люди прошаренные, и все понимали из контекста, что «М» перед «байт» значит не миллион, а чуть больше. А насквозь технические перцы из IEEE даже ввели это в свой уютненький стандарт. Всех тогда заставляли поверить в выдумку «двоичных приставок», в которые превращаются обычные приставки, когда их соединяют с битами и байтами. Сумевшие принять это проходили тем самым «компьютерную инициацию», принимались в тусовку.
Но потом компьютерами стали пользоваться обычные люди – нормальные здоровые люди. Для них кило – это тысяча, а мега – миллион. К счастью, они победили, потому как полностью антинаучно ставить значение приставки в зависимость от контекста.
Все международные организации к середине 2000-х уже прозрели и поправили свои стандарты. Чтобы воинствующим компьютерщикам было не слишком обидно, чтобы они не потеряли способность размножаться в неволе, для них придумали действительно двоичные приставки – киби, меби, гиби (кибибайты, мебибайты, гибибайты – КиБ, МиБ, ГиБ). Сейчас нет ни единого повода считать, что в килобайте 1024 байта.
Был момент, когда пара производителей винчестеров получила по шапке за то, что стала считать гигабайт ровно миллиардом байтов, отказавшись от степени двойки. Да, было такое, но суд не встал на сторону лжеучёных, он встал на сторону потребителя — того, которому прежде давали больше и вдруг без предупреждения стали давать меньше. Именно в этом суд увидел вину производителей. Они нарушили обычаи рынка.
В России есть ГОСТ 8.417-2002, который ставит все точки над i. Приведу тут табличку из него. Ключевое слово я выделил жирным шрифтом.
|
Наименование величины
|
Единица |
Примечание
|
|
Наименование
|
Обозначение |
Значение
|
| международное |
русское |
| Количество информации1) |
бит2)
байт2), 3) |
bit
B (byte) |
бит
Б (байт) |
1
1 Б = 8 бит |
Единица информации в двоичной системе счисления (двоичная единица информации) |
1. Термин „количество информации“ используют в устройствах цифровой обработки и передачи информации, например в цифровой вычислительной технике (компьютерах), для записи объема запоминающих устройств, количества памяти, используемого программой.
2. В соответствии с международным стандартом МЭК 60027–2 единицы „бит“ и „байт“ применяют с приставками СИ.
3. Исторически сложилась такая ситуация, что с наименованием „байт“ некорректно (вместо 1000 = 103 принято 1024 = 210) использовали (и используют) приставки СИ: 1 Кбайт = 1024 байт, 1 Мбайт = 1024 Кбайт, 1 Гбайт = 1024 Мбайт и т.д. При этом обозначение Кбайт начинают с прописной буквы в отличие от строчной буквы „к“ для обозначения множителя 103. |
Почти все оболочки *nix-систем перешли на использование новых двоичных приставок. Mac OS X уже года два или три как исправила множитель для приставок СИ. Фактически единственная распространённая ОС, продолжающая сеять безграмотность – это Windows. Спасибо Microsoft.

Линуксоиды одними из первых прониклись мебибайтами и гибибайтами
Нужно понять одну простую истину: компьютеры не работают с килобайтами, они работают с двумя уровнями физической величины – напряжения. Они ничего не знают о двоичной логике, им плевать на килобайты и мегабайты, они – железо. Всю двоичную логику, правила, обозначения придумал человек с одной лишь целью: чтобы все эти прыжки напряжения уместились в его небольшой голове и он получил возможность использовать законы физики на благо себя и бухгалтерии.
И чтобы два раза не вставать, несколько слов о сокращениях самих байтов и битов. Посмотрите на табличку из того же ГОСТа. Из неё следует, что
- байт сокращается до Б: мегабайт=Мбайт=МБ, гигабайт=Гбайт=ГБ
- бит не сокращается никак: мегабит=Мбит, гигабит=Гбит
Да сгорят в аду балбесы, которые пишут Гб, подразумевая гигабайт.
У меня всё. Чмоки.
(этот же пост в основном блоге)