Unità di informazione
# Unità di informazione

In informatica e telecomunicazioni, per unità di informazione si intende la capacità di un dato sistema di memorizzazione o canale di comunicazione, usato come termine di paragone per misurare la capacità di altri sistemi di memorizzazione o canali di comunicazione.

Nella teoria dell'informazione, il concetto di unità di informazione è legato ai concetti di contenuto di informazione e/o entropia di variabili aleatorie.

Le unità più comuni sono il bit, come capacità di un sistema che può esistere in soli due stati, ed il byte, che è l'equivalentedi di otto bit salvo eccezioni( codice ASCI 7 bit), . Multipli di queste unità possono essere utilizzate aggiungendovi i prefissi del Sistema Internazionale o i prefissi per multipli binari secondo la standardizzazione definita dal IEC.

## Unità primarie

Nel 1928, Ralph Hartley osservò un principio di memorizzazione fondamentale che fu in seguito formalizzato da Claude Shannon nel 1945: la quantità di informazione che può essere memorizzata in un sistema è proporzionale al logaritmo $log_b$ N del numero N di possibili stati del sistema. Cambiando la base del logaritmo da b in un differente numero c, si ottiene l'effetto di moltiplicare il valore del logaritmo per un valore costante $log_c$ N = $(log_c$ b) $log_b$ N. Quindi la scelta della base b determina l'unità utilizzata per misurare l'informazione. In particolare se b è un numero naturale, l'unità corrisponde alla quantità di informazione che può essere memorizzata in un sistema con b possibili stati.

Quando b vale 2, l'unità è il bit (contrazione di binary digit). Un sistema con 8 possibili stati, per esempio, può memorizzare fino a $log_28$ = 3 bit di informazione. Altre unità di informazione spesso usate includono:

* b = 3: l'unità informativa è chiamata "trit" (contrazione di Ternary numeral system), e corrisponde a $log_2$ 3 (≈ 1.585) bit.
* b = 10: l'unità informativa è chiamata digit decimale, hartley, ban, decit, o dit, e corrisponde a $log_2$ 10 (≈ 3.322) bit..
* b = e (numero di Nepero): l'unità informativa è chiamata nat, nit, o nepit (da John Napier), ed equivale a $log_2$ e (≈ 1.443) bit.

Trit, ban, e nat sono utilizzati raramente per misurare capacità di memorizzazione, ma il nat, in particolare, è spesso usato in teoria dell'informazione, poiché i logaritmi naturali sono più semplici da maneggiare a livello di formalismo matematico.

## Unità derivate

Numerosi nomi sono stati adottati per designare gruppi di bit

### Byte

Storicamente, un byte era il numero di bit necessari per codificare un carattere di testo all'interno di un computer (definizione dipendente quindi dall'architettura dell'elaboratore); oggi, tuttavia, assume sempre il significato di otto bit. Un byte può quindi rappresentare $2^8$ = 256 distinti valori, come ad esempio i numeri interi tra 0 e 255, o tra -128 e 127. Lo standard IEEE 1541-2002 stabilisce che "B" (lettera maiuscola) è il simbolo che indica il byte. I Byte, ed i multipli di essi, sono sempre utilizzati per indicare la grandezza di file e la capacità di memorizzazione di computer.

### Nibble

Un gruppo di quattro bit è chiamato nibble. Questa unità è spesso utilizzata nella rappresentazione esadecimale, poiché un nibble contiene la stessa quantità di informazione di una cifra esadecimale.

### Word, blocchi e pagine

I computer generalmente manipolano i bit in gruppi di grandezza prefissata, convenzionalmente chiamati word. Il numero di bit all'interno di una word è generalmente definito dalla grandezza dei registri della CPU, o dal numero di bit che sono spostati dalla memoria principale in una singola operazione.

Alcuni linguaggi macchina utilizzano gruppi di due words (un "double word" o "dword"), o quattro words (un "quad word" o "quad").

La memoria cache di un computer generalmente opera su blocchi di memoria che consistono in diverse word consecutive. Queste unità sono a volte chiamate blocchi cache o cache lines.

Il sistema di memoria virtuale partiziona la memoria principale del computer in unità ancora più grandi, tradizionalmente chiamate pagine.

## Multipli sistematici del bit e del byte

Utilizzando i prefissi standard del Sistema Internazionale si possono ottenere termini per gruppi di bit espressi in potenze di 10: kilo- = $10^3$ = 1000 (kilobit o kbit), mega- = $10^6$ = 1000000 (megabit o Mbit) e giga- = $10^9$ = 1 000 000 000 (gigabit or Gbit). Questi prefissi sono più spesso utilizzati per i multipli del byte, esempi sono il kilobyte (kB = 8000 bit), il megabyte (1 MB = 8 000 000 bit), ed il gigabyte (1 GB = 8 000 000 000).

Tuttavia, per ragioni tecniche, le capacità delle memorie dei computer sono spesso multipli di una grande potenza di due, come ad esempio $2^{28}$ = 268 435 456 byte. Per evitare di utilizzare numeri "scomodi", spesso si utilizzano i prefissi del Sistema Internazionale per indicare la più vicina potenza di due, ad esempio utilizzando il prefisso kilo per $2^{10}$ = 1024, mega per $2^{20}$ = 1 048 576, e giga per $2^{30}$ = 1 073 741 824, e così via. Per esempio, un chip di memoria RAM con una capacità di $2^{28}$ byte è indicato come un chip da 256 megabyte. La tabella sottostante illustra queste differenze.

| Symbol | Prefix | Significato SI | Significato binario | Differenza di dimensioni |
| - | - | - | - | - |
| K | kilo | $10^3$  = $1000^1$ | $2^{10}$ = $1024^1$ | 2.40% |
| M | mega | $10^6$  = $1000^2$ | $2^{20}$ = $1024^2$ | 4.86% |
| G | giga | $10^9$  = $1000^3$ | $2^{30}$ = $1024^3$ | 7.37% |
| T | tera | $10^{12}$ = $1000^4$ | $2^{40}$ = $1024^4$ | 9.95% |
| P | peta | $10^{15}$ = $1000^5$ | $2^{50}$ = $1024^5$ | 12.59% |
| E | exa | $10^{18}$ = $1000^6$ | $2^{60}$ = $1024^6$ | 15.29% |
| Z | zetta | $10^{21}$ = $1000^7$ | $2^{70}$ = $1024^7$ | 18.06% |
| Y | yotta | $10^{24}$ = $1000^8$ | $2^{80}$ = $1024^8$ | 20.89% |

Nel passato, la lettera maiuscola K veniva utilizzata in luogo della lettera minuscola k per indicare 1024 invece di 1000. Tuttavia, questa differenza di simbologia non è mai stata applicata coerentemente. Dall'altro lato, per sistemi di memorizzazione esterna (come dischi ottici), i prefissi SI vengono utilizzati con il loro significato originario (potenze di 10).

Ci sono stati numerosi tentativi di risolvere la confusione utilizzando notazioni alternative per i multipli espressi sotto forma di potenze di due. Nel 1998 lo IEC ha pubblicato uno standard che definisce una serie di prefissi binari che utilizzano 1024 invece di 1000 come radice principale:

| Simbolo | Prefisso | | | |
| - | - | - | - | - |
| Ki | kibi, binary kilo | 1 kibibyte (KiB) | $2^{10}$ byte | 1024 B |
| Mi | mebi, binary mega | 1 mebibyte (MiB) | $2^{20}$ byte | 1024 KiB |
| Gi | gibi, binary giga | 1 gibibyte (GiB) | $2^{30}$ byte | 1024 MiB |
| Ti | tebi, binary tera | 1 tebibyte (TiB) | $2^{40}$ byte | 1024 GiB |
| Pi | pebi, binary peta | 1 pebibyte (PiB) | $2^{50}$ byte | 1024 TiB |
| Ei | exbi, binary exa | 1 exbibyte (EiB) | $2^{60}$ byte | 1024 PiB |

Tuttavia, lo standard JEDEC definisce le lettere maiuscole K, M, e G per le potenze binarie $2^{10},$ $2^{20},$ $2^{30},$ e $2^{40}$ per rispecchiare l'utilizzo comune.

