Unità di misura decimali e binarie: facciamo chiarezza

Unità di misura decimali e binarie: facciamo chiarezza

Facciamo chiarezza in merito all'adozione e al significato dei prefissi binari che, almeno formalmente, sostituiscono i rispettivi prefissi decimali per l'espressione dei multipli del byte

di pubblicata il , alle 10:26 nel canale Storage
 

La notizia pubblicata ieri, relativa all'azione legale patteggiata da Western Digital in relazione all'accusa di vendere dischi di capacità inferiore a quella dichiarata, ha generato un po' di confusione per quanto riguarda le unità di misura binarie e decimali. E' necessario quindi fare chiarezza, eviscerando soprattutto l'antica disputa tra il valore del kilobyte, se esso sia di 1000 byte o di 1024 byte. Più che di problemi pratici, lo premettiamo subito, si tratta di vizi di forma. Che tuttavia inducono, ma solo in un secondo tempo, in errori pratici.

I prefissi kilo-, mega-, giga-, tera-, e via discorrendofanno parte di una serie di prefissi ufficiali del SI (Sistema Internazionale di unità di misura) adottati per semplificare l'utilizzo di valori multipli e sottomultipli rispetto ad una unità di misura fondamentale. Per semplificare il discorso con un esempio: difficilmente diremo "ho fatto un viaggio di duecentomila metri", ma utilizzeremo la ben più comoda espressione "duecento chilometri". Sono prefissi che traggono origine da termini della lingua greca: "kilo" per 1.000, "mega" per 1.000.000, "giga" per 1.000.000.000. Si tratta quindi di prefissi applicabili ad un sistema di numerazione decimale, in quanto rappresentano di fatto le potenze del dieci.

Il primo errore è quello di applicare ad una unità di misura (in questo caso il byte, unità di misura dell'informazione), un prefisso decimale per indicare però valori calcolati in base binaria. Formalmente parlando, l'espressione kilobyte è equivalente a 1 byte moltiplicato per 1.000, ovvero mille byte. Tuttavia l'espressione kilobyte è stata usata fin dall'inizio in modo errato, facendola corrispondere al valore di 1024 byte, ovvero la decima potenza del due: si è quindi applicato un metodo di calcolo binario utilizzando però un prefisso decimale. Non che questo rappresenti un sacrilegio, ma è il primo problema di forma dal quale discendono gli altri.

L'espressione kilobyte, essendo formalmente scorretta nel modo in cui è entrata nell'uso comune, ovvero considerandola come una espressione a base due, ha portato gli organismi come il SI, l'IEC (International Electrotechnical Committee), l'IEEE (Institute of Electrical and Electronics Engineers) e l'ISO (International Organization for Standardization) a formalizzare alcuni elementi per evitare di utilizzare impropriamente determinate espressioni e generare così confusione ed errori.

Sono quindi stati definiti nuovi prefissi, in particolare dall'IEC in un emendamento del documento "IEC 60027-2: Letter symbols to be used in electrical technology — Part 2: Telecommunications and electronics" nel 1999, che indicassero precisamente in quali casi si ha a che fare con multipli di potenze binarie. Si tratta dei prefissi kibi-, mebi-, gibi-, tebi- e via discorrendo, dove la particella "bi" sta per "binary". Vado a precisare:

kibi: kilo-binary, ovvero 2^10
mebi: mega-binary, ovvero 2^20
gibi: giga-binary, ovvero 2^30
tebi: tera-binary, ovvero 2^40

Questi prefissi binari sono stati recepiti e ratificati dall'IEEE all'interno dello standard IEEE 1541. Il SI ha inoltre espressamente vietato l'utlizzo dei prefissi decimali esposti nei paragrafi sopra per indicare quantità calcolate su base binaria.

In questo caso, quindi, sempre ragionando in un ipotetico mondo perfetto che si attiene ai formalismi, le uniche due espressioni corrette sono:

kilobyte = 1.000 byte
kibibyte = 1.024 byte

e ovviamente a seguire tutti gli altri multipli.

Tuttavia, come spesso accade quando qualcosa è profondamente radicato nell'uso comune, anche nei sistemi operativi (che per ovvi motivi "ragionano" in base binaria) vengono tutt'ora mantenuti i prefissi decimali per indicare però quantità calcolate utilizzando potenze del due.

Ritornando brevemente sul caso particolare di Western Digital, ribadisco quello detto ieri: un disco di capienza "ottanta miliardi di byte" potrà contenere ottanta gigabyte di informazione oppure 74,5 gibibyte (e non gigabyte) di informazione. Che poi la confusione intorno a questi prefissi venga o meno utilizzata maliziosamente dalle compagnie produttrici di hard-disk è un punto sul quale si può senza dubbio discutere ampiamente.

260 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
*Pegasus-DVD*30 Giugno 2006, 10:33 #1
sono piu confuso di prima
Cimmo30 Giugno 2006, 10:38 #2
Io lo dicevo che era una truffa... e chi sul forum diceva che dovevo stare zitto? Le case produttrici di hard disk sfruttano volutamente la confusione...
pistolino30 Giugno 2006, 10:38 #3
Per capire ho dovuto rileggere certe parti almeno due volte
Comunque troppo lollosi i KIBIBYTE.
Parlando seriamente, allora mi sembra che anche Windows è in errore nel segnalare le dimensioni dei dischi e dei file...per esempio io ho un HD Maxtor da 80 miliardi di byte ossia 80 Gigabyte ma il sistema indica 76,3 Gigabyte mentre invece dovrebbe indicare 76,3 gibibyte...giusto?

Comunqe complimenti...questo è una di quelle news apparentemente banali ma in realtà (almeno per me) estremamente interessanti.
NoPlaceToHide30 Giugno 2006, 10:40 #4
molto interessante sapere che fino ad ora abbiamo parlato una lingua errata...siamo tutti 'gnurantun...
pistolino30 Giugno 2006, 10:41 #5
Originariamente inviato da: Cimmo
Io lo dicevo che era una truffa... e chi sul forum diceva che dovevo stare zitto? Le case produttrici di hard disk sfruttano volutamente la confusione...


Ci hanno giocato anche i sistemi operativi. Io ho un HD da 80GB e "perdo solo" 4GB ma più le dimensioni crescono, più la "perdita" aumenta. Un mio amico ha un HD esterno da 160GB nominali ma di fatto è di 147GB.

Un bel macello ma ormai resterà tutto così...bisognerebbe rifare i sistemi operativi.
pistolino30 Giugno 2006, 10:43 #6
Non riesco a immaginare il marasma che ci potrebbe essere se qualcuno accusa anche AMD e Intel per i valori fasulli delle cache dei processori. Ad esempio i 512KB di cache L2 dei Northwood, secondo questo ragionamento, sono fasulli.

idem per la RAM delle schede video...

Lucky7430 Giugno 2006, 10:43 #7
la situazione è molto discutibile... non penso che le case costruttrici abbiano inteso kilo- come prefisso di mille invece che di 1024 perchè kilo- è per le misure decimali e non binarie... ma perchè a loro conviene così... scrivere 80Giga è meglio di scrivere 74Giga... fatto sta che gli HD scsi il taglio è di 74Giga... chi sa perchè... :-D
p.NiGhTmArE30 Giugno 2006, 10:45 #8
Queste le abbreviazioni:

kibibyte KiB 2^10B
mebibyte MiB 2^20B
gibibyte GiB 2^30B
tebibyte TiB 2^40B
pebibyte PiB 2^50B
exbibyte EiB 2^60B

d'ora in poi le userò sempre, per essere preso per i fondelli da tutti quando dirò che su un cd ci stanno 700 mebibyte

(news molto interessante ccomunque )
cionci30 Giugno 2006, 10:45 #9
Da sempre tutti i produttori di hard disk hanno usato i prefissi corretti (nel senso che Giga per loro corrisponde ad un milione)... Quindi l'azione legale è sicuramente assurda...
Angrenost30 Giugno 2006, 10:45 #10
bidibibodibibu!

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^