Windows'daki dosya boyutları anlamlı değil


18

İşte bu dosya Windows var:

resim açıklamasını buraya girin

Ancak 62.563 bayt 62.6 KB değil mi?

resim açıklamasını buraya girin


24


11
Mac ondalık kilobayt (IEC standardı) kullanırken, Windows hala ikili kilobayt (kibibit olarak yeniden adlandırıldığından beri) kullanırken, Linux genellikle KiB (yeniden adlandırılan ikili kilobayt) anlamına gelir. Şahsen, bence bu her çeşit karışıklık. İçinde 1.000.000.000 bayt olan bir RAM satın almaz, bunun yerine 1.073.741.824 bayt ile bir RAM satın alır. Ancak bir sabit disk satın aldığınızda, sektörler 512 baytın katlarına ayrılmış olsa bile, 500.000.000.000 bayt ile satın alırsınız. İkili olduklarında kilobaytlarımı beğendim ...
phyrfox

1
@phyrfox: 1 MHz CPU, 1.073.741.824 döngü değil, 1 milyon döngüdür. 1 Mbps ağ trafiği de 1 milyon bittir.
Zan Lynx

3
@ZanLynx Mega 1 milyon değil, Yunanca'dan "harika" uyarlanmış. Ayrıca, oldukları gibi, SI önekleri sadece fiziksel birimlerle anlamlıdır. Ancak bayt ve bitler fiziksel birimler değildir. Ayrıca, SI önekleri standartlaştırıldığı için, kilo, mega ve giga'nın anlamını sırasıyla 1024, 1048576 ve 1073741824 olarak tanımlayan bir bellek boyutu standardı da vardır .
Ruslan

Yanıtlar:


53

62.563 bayt 61.0966797 kibibittir . Kibi önek aracı hesaplama için taban 1024 olduğu iki çünkü "ikili" için ayakta 2 ^ 10 = 1024 . İkili öneklerden yalnızca biri öneklerden , diğerleri mebi veya gibi .

Öte yandan kilobayt, kilometre ve kilogramdan bildiğiniz klasik SI öneklerini kullanarak 1000 bayttır. Ondalık tabanı kullanıyor, 10 ^ 3 = 1000 , bu yüzden Google gerçekten haklı . Aynı miktarları kibibit cinsinden alsaydınız, bilgisayar terminolojisinde doğru cevabı almış olursunuz.

Bugünlerde kilo ve kibi arasındaki ayrımı yapmak gerçekten önemlidir ve aslında Windows bunu kesin olarak kesinleştirmek için "61 KiB" olarak bildirmelidir. Bu, ayrımı kolaylaştırmak için IEC sözleşmesidir.

Bununla birlikte, bugünlerde sabit disk boyutlarının genellikle ikili birimlerde (ancak her zaman açıkça değil) bildirildiği ve bağlantı hızlarının SI birimlerinde verildiği hala çok fazla belirsizlik vardır.


1
@Joker_vD: Neyse ki ;-) kilo ve mega (ve diğer öneklerin izleyeceği her şey) sadece faktörlerdir, kendi miktarları değil, bu yüzden sadece K ve M (ve G ve T ve P vb.) Kullanmak oldukça anlamsız olurdu. (Aynı şey kibi , mebi vb önekleri için de geçerlidir .) Dahası, yaygın olarak kullanılan tüm birimler iki kez kısaltma kullanılmadığı için belirsizliğe sahip değildir, ancak K ilk bakışta Kelvin için K ile aynı görünecektir .
VEYA Haritacı

1
@ ORMapper Evet ve T Tesla ile karıştırılır . Çünkü belli ki, programcının kılavuzları genellikle altta yatan fiziği tartışır.
Joker_vD

1
@Joker_vD: Fiziğin görünüp görünmeyeceği önemli değil. Mesele şu ki, K ve T birim işaretleri artık herhangi bir bağlam olmaksızın açık olmaz - böylece birim işaretleri ve birimler arasındaki benzersiz bir haritalamaya kıyasla yadsınamaz bir dezavantaj yaratır - bu tür bir sözleşmeyi son derece istenmeyen kılar.
VEYA Haritacı

1
Bilgisayar dünyasının bir nişinin dışında kim 'kibibyte' nin ne olduğunu biliyor? Bu arada, Google son zamanlarda 'doğru' idi. Bu var hala bir kilobayt 1000 veya 1024 byte olmasına çok canlı bir tartışma.
Justin Krejcha

9
Bunun 61.1'e yuvarlanmak yerine 61.0'a kısaltıldığı için biraz üzgün olan tek kişi ben miyim?
Christofer Ohlsson

22

Evet, google'ı Çılgın Şapkacı olarak düşün. Doğru soruyu sormak zorundasın. Ya da belki bir Elf: Bazen cevabınız hem evet hem de hayır olacaktır.

KiB'ye bayt.  Bilgisayarın kilobaytı;  veya kibibit.


5

1 KB = 1024 bayt. Böylece:

62563 / 1024 = 61.097KB

Kısayol olarak birçok kişi ve sistem KB'yi 1000 olarak kabul eder, çünkü Kilo 1000'in SI önekidir. Ancak bilgisayar bilimcileri 1024 olan 2 ^ 10 önekini kullanırlar.


3

Bilgisayarla ilgili çoğu sayı, ondalık önek kullanan SI sisteminin aksine ikili önek kullanır. Bu demektir:

  • 1 kilogram = 10 3 gram, ancak
  • 1 kilobayt = 2 10 bayt

Bu sırasıyla 1000 gram ve 1024 bayttır. 62563 / 1024 ~= 61, Windows doğru.

Bilgisayarla ilgili her şey ikili öneklere dayanmaz ve bu tutarsızlık genellikle yanlış anlamalara yol açar. Bu Wikipedia sayfası , farklı şeyleri ölçmek için hangi öneklerin kullanıldığını açıklar.

Aşırı bir durum bant genişliği. Genellikle saniyede bayt cinsinden ifade edildiğinde ikili önekler ve saniyede bit cinsinden ifade edildiğinde ondalık önekler kullanılır. Yani bu cümle doğrudur:

Saniyede 1 bayt = Saniyede 8 bit

Ama bu yanlış:

Saniyede 1 kilobayt = Saniyede 8 kilobit

Çünkü:

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

( ilgili soru )


1
Hata: 2 ^ 8 = 256 ---> Sanırım 2 ^ 10 ;-) olmalı
Hannu

WP konuşma sayfası asıl makaleden çok daha ilginçtir (KB'nin 1024 veya 1000 bayt olup olmadığı konusunda çok büyük bir tartışma).
Justin Krejcha

Bant genişliği, SI öneklerinin 10'luk güçleri kullandığı Hz olarak düzgün bir şekilde ifade edilir. Veri aktarımının (veri aktarım hızı, eşdeğer bant genişliği kodlama verimliliği ile çarpımı) belirsiz olmasının nedeni, ilk tanımın (KB)/sKB'nin ikili tabanlı öneki kullandığı ve ikincisinin ondalık tabanlı kullanılarak kHz veya kbaud'a dayalı olmasıdır. önek.
Ben Voigt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.