On Sun, Feb 16, 2014 at 10:14 AM, Henri Verbeet hverbeet@gmail.com wrote:
On 16 February 2014 09:57, Dmitry Timoshkov dmitry@baikal.ru wrote:
In my years of University the students were told to remember that 1Kb == 1024 bytes, 1Mb == 1024Kb and size prefixes should be written as a capital letter to emphasize its meaning. I'm very reluctant to change this practice to something else regardless of explanations and intents. I understand that for not technical people 1K == 1000, but I'd assume programmers are not of that kind.
Strictly speaking the SI units are kB, etc. for 1000 bytes, and IEC KiB, etc. for 1024 bytes. For memory sizes, it's usually obvious enough from context which one is meant, so there's not much of a point to change it. It's more ambiguous for e.g. file or disk sizes where drive vendors often use 1000 based units, and transfer speeds where "b" usually means bits.
But as I said, in most cases it's obvious enough from context, and "KB" instead of "Kb" isn't really much clearer.
Well, as François pointed out, b stands for bit, and not bytes.
Basically the rationale for this patch was to fix spacing (space between number and unit name), and standardize the units abbreviations while doing that. k is SI, and is 1000, while K is 1024, unambiguously. KiB and MiB could have been used instead of KB/MB, but those aren't broadly used, albeit standardized now, while KB is much more used than kB (which isn't correct IMO; see above).
Frédéric