Windowsのファイルサイズが意味をなさない


18

ここにWindowsでこのファイルがあります:

ここに画像の説明を入力してください

しかし、62,563バイトは62.6 KBではありませんか?

ここに画像の説明を入力してください




11
Macは10進数のキロバイト(IEC規格)を使用しますが、Windowsはまだバイナリキロバイト(キビバイトに名前変更されているため)を使用しますが、Linuxは通常KiB(名前が変更されたバイナリキロバイト)を参照します。個人的には、これはあらゆる種類の混乱だと思います。1,000,000,000バイトのRAMを購入するのではなく、1,073,741,824バイトのRAMを購入します。ただし、ハードドライブを購入すると、セクターが512バイトの倍数で割り当てられていても、500,000,000,000バイトの空き容量がある状態で購入します。彼らはバイナリたとき、私は...私のキロバイトを気に入っ
phyrfox

1
@phyrfox:1 MHzのCPUは100万サイクルであり、1,073,741,824サイクルではありません。1 Mbpsのネットワークトラフィックも100万ビットです。
ザンリンクス14

3
@ZanLynx Megaは100万人ではなく、ギリシャ語の「素晴らしい」ものです。また、そのままでは、SIプレフィックスは物理ユニットでのみ意味を持ちます。しかし、バイトとビットは物理的な単位ではありません。さらに、SIプレフィックスは標準化されているため、キロ、メガ、ギガの意味をそれぞれ1024、1048576、1073741824と定義するメモリサイズの標準もあります。
ルスラン14

回答:


53

62,563バイトは61.0966797 キビバイトです。吉備プレフィックス手段計算のためのベースが1024であることBIので、「バイナリ」を表す2 ^ 10 = 1024バイナリプレフィックスの 1つだけで、他はmebiまたはgibiです。

一方、キロバイトは1000バイトであり、キロメートルとキログラムからわかる従来のSIプレフィックスを使用します。10進数の10 ^ 3 = 1000を使用しているため、Googleは実際に正しいです。同じ量をキビバイト単位でグーグルで検索した場合、コンピューティング用語で正しい答えが得られたでしょう。

最近では、キロとキビを区別することが非常に重要であり、実際には、Windowsは「61 KiB」として絶対に正確に報告する必要があります。これは、区別を容易にするためのIEC規則です。

そうは言っても、最近はまだ多くのあいまいさがあり、ハードドライブのサイズは通常バイナリ単位で報告されます(ただし、必ずしも明示的にではありません)。接続速度はSI単位で示されます。


1
@Joker_vD:幸いなことに;-) キロメガ(および他のプレフィックスが続くもの)は単なる因子であり、それ自体の量ではないため、KM(およびGTPなど)だけを使用することはまったく意味がありません。(同じことがプレフィックスに対して有効である吉備mebiない略語は2回使用されないようにまた、すべての一般的に使用される単位は、曖昧さのきれい含まない。明らかに、など)が、Kだろう一見ルックで同じケルビンのためにK
ORマッパー14

1
@ORMapperはい、TTeslaと間違えられます。明らかに、プログラマーのマニュアルは基礎となる物理学についてしばしば議論します。
Joker_vD 14

1
@Joker_vD:物理学が現れるかどうかは関係ありません。ポイントは、ユニット記号KTがコンテキストなしで明確になり、ユニット記号とユニット間の一意のマッピングと比較して否定できない不利になるため、このような規則が非常に望ましくないことです。
ORマッパー14

1
「キビバイト」が何であるかをコンピューター世界のニッチの外で知っているのは誰ですか?ちなみに、Googleが「正しかった」のはごく最近のことです。それはだまだキロバイトが1000または1024バイトであるかどうかについて非常に生きている議論。
ジャスティンクレイチャ14

9
これが61.1に丸められるのではなく、61.0に切り捨てられることに少し動揺しているのは私だけですか?
クリストファーオルソン14

22

ええ、グーグルをマッドハッターと考えてください。正しい質問をする必要があります。または多分エルフ:あなたの答えはイエスとノーの両方になることがあります。

KiBへのバイト。 コンピューターのキロバイト。 またはキビバイト。


5

1KB = 1024バイト。したがって:

62563 / 1024 = 61.097KB

Kiloは1000のSIプレフィックスであるため、ショートカットとして多くの人とシステムはKBを1000として扱います。ただし、コンピューター科学者は2 ^ 10のプレフィックスを使用します(1024)。


3

10進数のプレフィックスを使用するSIシステムとは対照的に、ほとんどのコンピューター関連の数字はバイナリプレフィックスを使用します。だということだ:

  • 1キログラム= 10 3グラムですが、
  • 1キロバイト= 2 10バイト

それはそれぞれ1000グラムと1024バイトです。62563 / 1024 ~= 61、Windowsが正しい。

ただし、コンピューター関連のすべてがバイナリプレフィックスに基づいているわけではなく、この不一致が誤解を招くことがよくあります。このウィキペディアのページでは、さまざまなものの測定に使用されるプレフィックスについて説明しています

1つの極端なケースは帯域幅です。通常、1秒あたりのバイト数で表される場合はバイナリプレフィックスを使用し、1秒あたりのビット数で表される場合は10進数のプレフィックスを使用します。したがって、この文は真実です:

1バイト/秒= 8ビット/秒

しかし、これは間違っています:

1キロバイト/秒= 8キロビット/秒

なぜなら:

  • 1 KB /秒= 1024 B /秒
  • 1 Kbps = 1000 bps

関連する質問


1
間違い:2 ^ 8 = 256 --->私はそれが2 ^ 10であるべきだと思う;-)
Hannu 14

WPのトークページは実際の記事よりもはるかに興味深い(KBが1024バイトか1000バイトかについての非常に大きな議論)。
ジャスティンクレイチャ14

帯域幅はHz単位で適切に表現され、SIプレフィックスは10の累乗を使用します。スループット(データの転送速度、帯域幅にエンコード効率を乗じたもの)があいまいな理由は、最初の定義がにつながり(KB)/s、KBはバイナリベースのプレフィックスを使用し、2番目はkHzまたはkbaudに基づいており、10進数ベースを使用するためですプレフィックス。
ベンフォイト14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.