我会尽可能直接地回答您的问题,因为使用命名空间大战KB,KiB,kB和kb会很快引起一场争论,因为命名惯例战争已经持续了数十年。
1.)Windows使用什么前缀标准显示文件大小?(当然,这不是IEC标准)
实际上,这是JEDEC 100B.01标准,这意味着KB(千字节)为1024字节。
2.)为什么Windows OS在以SI单位表示千分之一的小写字母“ k”时,会以KB(使用大写字母“ K”)显示文件大小。
再次,因为它是半导体存储容量单位前缀的JEDEC 100B.01标准;它不是SI度量单位,因此没有相同的含义。
在处理/ 时,小写字母k
可以与大写字母同义。对,和,JEDEC,ISO和BIPM SI前缀规范定义它们是大写,并分别。小写,并且仅用于非正式场合,当上下文提供的含义(如在我刚换了我的1GB NIC或我的2TB硬盘不工作),且本身无效。K
kilo
kibi
giga
mega
tera
G
M
T
g
m
t
大写字母“ K”代表国际单位制中的Kelvin。我是否在理解中缺少某些东西?
是的,当您专门谈论温度测量和处理SI度量单位时,用大写字母K
表示Kelvin
,但是,我们处理的是半导体存储容量,我不会说我有512 KB of RAM
,也有意思512 Kelvin Bytes of RAM
。此外,确定何时/如何区分IEC / JEDEC和测量KB / MB / GB /等等的SI单位确实取决于上下文。
大多数操作系统和绝大多数设备是处理存储器/存储使用前缀K
为基洛意味着1024个字节,所以当我拿到RAM,说这是一个4GB的模块,我知道这是4个吉比 -Bytes(4 * 1024 * 1024 * 1024),而不是千兆字节(4 * 1000 * 1000 * 1000)。
主要的例外是驱动能力。当我购买拇指驱动器或硬盘驱动器,我知道什么时候说32GB,这意味着32个千兆 -Bytes(32 * 1000 * 1000 * 1000),而不是吉比 -Bytes(32 * 1024 * 1024 * 1024),即使我操作系统将以Gibi-Bytes报告它(因此将我的驱动器从32GB变为有效的29.8 GiB驱动器)。还请注意,有些Linux操作系统喜欢使用KB来表示1000字节,而与上下文无关,这可能会造成一些混乱,因为并非同一操作系统中的所有应用程序都会报告相同的大小。大多数设备制造商通常会在“盒子”(或网站等)上放置免责声明,以表示他们说KB / GB / etc时的含义,例如在带有免责声明的硬盘盒上*1GB = 1000000000 bytes
。
如果您曾经对操作系统向您报告的样式感到困惑,则可以随时查看文件的字节数,然后进行数学运算以了解操作系统在告诉您什么(“文件大小”,而不是“磁盘大小”,因为它们是不同的东西);如果您的操作系统无法告诉您原始字节数,那么除了后缀使用之外,还有其他更大的问题。
或正如Randall所说: