In un byte, ogni bit addizionale raddoppia gli stati rappresentabili, ma raddoppia la memoria?

2

Un amico mi ha chiesto se aggiungere un singolo bit di memoria in più raddoppia la quantità di memoria che hai, poiché il bit raddoppia la quantità di stati rappresentabili.

Il mio cervello si è bloccato a pensarci.

Raddoppiando la quantità di bit raddoppia la quantità di stati che possiamo rappresentare simultaneamente.

Sto eseguendo un errore di categoria. Cosa significa raddoppiare la memoria?

    
posta Peter Wood 31.12.2015 - 17:31
fonte

4 risposte

8

È un aumento lineare della memoria e un aumento esponenziale dello stato di rappresentazione.

Ogni bit aggiuntivo è un multiplo aggiuntivo di 2 nel numero di valori possibili, quindi passa alla potenza successiva di 2.

0 (2^1 values: 2)
00 (2^2 values: 4)
000 (2^3 values: 8)
0000 (2^4 values: 16)
00000 (2^5 values: 32)

Raddoppiare la memoria di solito significa raddoppiare il numero di indirizzi di memoria che un'applicazione utilizza, o raddoppiare la quantità di RAM utilizzata. Non significa raddoppiare il numero di valori possibili.

Calcolare il numero di valori possibili che un pezzo di memoria può rappresentare è facile: 2^n dove n è il numero di bit in quel pezzo di memoria.

Il numero di valori possibili in una variabileint del 32% è 2 ^ 32 = 4,294,967,296 valori possibili. Per "raddoppiare" quella memoria è usare unlong a 64 bit, che ha valori 2 ^ 64: 1.8446744e + 19.

    
risposta data 31.12.2015 - 17:38
fonte
5

Sembra che il tuo amico abbia vagato nella confusione terminologica basata sul riutilizzo dello stesso termine per più scopi.

Se ho 8 bit di memoria, ho 8 bit di memoria, niente di più. Possono memorizzare un byte, che rappresenta uno dei 256 stati possibili. Se aggiungi un altro bit di memoria, raddoppia il numero di stati possibili, ma può ancora contenere solo uno di questi stati.

Tuttavia, per rappresentare tutti di quegli stati a 8 bit allo stesso tempo, avrei bisogno di 256 byte. Quando si utilizza un sistema che utilizza indirizzamento della memoria a 8 bit (o, più comunemente in questi giorni, indirizzamento della memoria a 32 o 64 bit), significa che si utilizza un numero a 8 bit per rappresenta una posizione nella memoria e quindi è possibile avere fino a 256 posizioni di memoria disponibili per lo schema di indirizzamento. (Questo è il motivo per cui nessuno usa un sistema di indirizzamento di memoria così piccolo: si esauriscono gli indirizzi troppo rapidamente: usano sistemi a 32 o 64 bit, che è qualcosa di molto diverso dall'avere solo 32 o 64 bit di memoria.)

Quando le persone dicono di avere un sistema a 64 bit, di solito è ciò che significa: il loro sistema utilizza valori a 64 bit per l'indirizzamento della memoria, dando al loro sistema il potenziale per supportare 2^64 byte di memoria. Finora, nessun computer è mai stato così vicino alla quantità di memoria disponibile; è solo negli ultimi anni che abbiamo superato il limite di 32 bit, che è 4 GB. Il limite di 64 bit è il quadrato di questo, circa 16 miliardi di GB.

    
risposta data 31.12.2015 - 18:46
fonte
1

Raddoppia la quantità di posizioni di memoria che puoi indirizzare. Forse è lì che ti stai confondendo. Questo è il motivo per cui i computer sono ora per lo più a 64 bit. In un sistema a 32 bit, la memoria era limitata a 4 GB. Con un indirizzo a 64 bit possiamo usare molto di più.

Se ho una memoria da 1 bit, l'aggiunta di un bit raddoppia la memoria. Se ho una memoria a 2 bit, l'aggiunta di un bit aggiunge solo il 50%. Questo è l'altro (meno utile) modo di rispondere.

    
risposta data 31.12.2015 - 17:41
fonte
0

Guarda le tue mani.

Con le cinque dita di una mano puoi rappresentare 32 numeri diversi usando una codifica binaria.

Con le dieci dita di entrambe le mani puoi rappresentare 32 x 32 = 1.024 numeri diversi.

Raddoppia la memoria significa che il numero di possibili stati è al quadrato.

E mi piacerebbe vederti provare a rappresentare un milione di numeri usando le dita delle mani e dei piedi.

    
risposta data 21.01.2016 - 01:44
fonte

Leggi altre domande sui tag