Eigenlijk verkopen ze juist, maar zijn het de besturingssystemen (sommige, niet allemaal) die het verkeerd weergeven. Sinds daarover enkele jaren geleden een rechtszaak geweest is in de VS, zetten fabrikanten een waarschuwing in kleine lettertjes op de verpakking.
1 kilobyte is namelijk 1.000 bytes, 1 megabyte is 1.000 kilobyte of 1.000.000 bytes en 1 gigabyte is 1.000.000.000 bytes.
Vroeger, in de oertijd van computers toen
bitneuken nog belangrijk was, probeerde men zo veel mogelijk cpu-cycles te sparen om een programma snel te laten werken. Om van grootte-orde te veranderen ging men dan een getal in zijn binaire voorstelling 10 bits naar links of naar rechts shiften. Dat kan in één instructie, terwijl een nauwkeurige decimale deling véél meer instructies vraagt. Een klein nadeel is wel dat 10 bitshiften = 2^10 = 1024 ofwel een fout van 2,4%. Dat vond men vroeger niet zo erg omdat er toen alleen ingenieurs met computers werkten, en in dat kleine wereldje wist iedereen wat er bedoeld werd.
Ondertussen zijn de tijden veranderd: er zijn marketing-droids, lusers, user-friendly police,... en niemand die nog weet van het bitshiften. Dan zijn opnieuw ingenieurs aan de slag gegaan om orde te scheppen in de chaos, en 10 jaar geleden heeft het IEC het systeem van de binaire prefixen voorgesteld:
http://en.wikipedia.org/wiki/Binary_prefix
Eigenlijk is het simpel. Als je wil spreken van kilo (en mega, giga,...) dan hebben die woorden identiek dezelfde betekenis als bij alle andere grootheden:
1 kilogram = 1.000 gram (massa)
1 megaton = 1.000.000 ton (explosieven equivalent met TNT)
1 gigawatt = 1.000.000.000 watt (elektrisch vermogen)
Simpel, toch? Je blijft gewoon doen wat je op een ander altijd al deed. Voor computers moet je niets speciaal uitvinden.
Om het probleem van de fout van 2,4% bij het bitshiften tegemoet te komen, is er ook een
nieuwe reeks prefixen uitgevonden. De woorden lijken een beetje op de oude woorden kilo, mega, giga dus het patroon is gemakkelijk te begrijpen. Het gaat om:
kibi = Ki = 2^10^1 = 1.024
mebi = Mi = 2^10^2 = 1.024*1.024 = 1.048.576
gibi = Gi = 2^10^3 = 1.024*1.024*1.024 = 1.073.741.824
Meer info in deze topic:
http://www.tik.be/forum/viewtopic.php?f=15&t=3660
Om op de oorspronkelijke vraag te antwoorden. Nu heb ik toevallig een Kingston USB-stick hier in de pc zitten. Windows zegt mij dat die een capaciteit heeft van 7.994.327.040 bytes. Dat is 5.672.960 bytes minder dan 8.000.000.000 bytes of 8 gigabytes, dus een afwijking van 0,07%. Dat vind ik toch vrij behoorlijk, zo'n kleine foutenmarge.
Als je de vergelijking wilt tussen de klassieke prefixen en de nieuwe binaire prefixen:
Code: Selecteer alles
7.994.327.040 B 7.994.327.040 B
7.994.327,0 kB 7.806.957,1 KiB
7.994,3 MB 7.624,0 MiB
8,0 GB 7,4 GiB