PDA

View Full Version : 1024byte=1KB come si dimostra?


paditora
12-12-2003, 10:16
Ieri sera uscendo con un mio amico mi stava dicendo che voleva comprarsi un HD nuovo da 40GB.
Dopodichè mi ha chiesto come mai gli HD invece di essere della misura indicata, hanno qualche Giga in meno.
Io gli ho spiegato che la trasformazione da Gb -> Mb -> Kb non basta dividere o moltiplicare per 1000 ma bisogna moltiplicare o dividere per 1024.
Inoltre gli ho spiegato che le case produttrici di hd, come tutti sanno, mettono una misura sbagliata della dimensione dato che ad esempio un hd da 40GB in realtà contiene 40.000.000.000 byte che in GB diventano 37,25
Io mi ricordavo che alle superiori, quando studiammo il sistema binario, ci fu un problema su questo argomento.
Ossia di dimostrare matematicamente il perchè 1000byte non è uguale a dire 1KB.
Solo che essendo passati un po' di anni da quando ho finito le scuole, non mi ricordo più come si faceva. :cry:
Qualcuno mi saprebbe fare la dimostrazione matematica del fatto che 1024byte equivangono a 1KB ?

dr.stein
12-12-2003, 10:19
non si dimostra!
e' cosi' e basta!

dr.stein
12-12-2003, 10:19
credo... :stordita:

recoil
12-12-2003, 10:20
e che dimostrazione ci vuole? è questione di definizioni... definisco 1KB come 1024byte, punto

al massimo puoi dire che 1024 = 2^10 ma non capisco che cosa vuoi dimostrare

Arësius
12-12-2003, 10:20
1 bit

8 bit = 1 byte

1 Kbyte = 2^10 bytes = 2*2*2*2*2*2*2*2*2*2*2 = 1024 bytes

sc82
12-12-2003, 10:21
Perchè kbyte, mbyte ecc.... equivalgono a 2 elevato a multipli di 10.

2^10 = 1024.

dr.stein
12-12-2003, 10:24
Recoil, ce l'hanno appizzato! :D

alphacygni
12-12-2003, 10:25
uhm a me pare un po' voler dimostrare che 2+2=4 :mbe:

dr.stein
12-12-2003, 10:27
Originariamente inviato da alphacygni
uhm a me pare un po' voler dimostrare che 2+2=4 :mbe:

facile!

1 + 1 = 2

per la proprieta' associativa dell'addizione 1+1+1+1 = 2 + 2 = 4!

:eheh:

paditora
12-12-2003, 10:28
Originariamente inviato da sc82
Perchè kbyte, mbyte ecc.... equivalgono a 2 elevato a multipli di 10.
2^10 = 1024.


Si forse era così.


Boh non mi ricordo più :D

Arësius
12-12-2003, 10:30
la cosa interessante è che 1 MB = 1.048.576 bytes, ovvero ci sono ben 50 KBytes in regalo! :D

paditora
12-12-2003, 10:31
Originariamente inviato da recoil
e che dimostrazione ci vuole? è questione di definizioni... definisco 1KB come 1024byte, punto


Si ma perchè proprio 1024?
Se era per prendere un numero qualunque si poteva usare 1000 byte = 1KB allora.

Arësius
12-12-2003, 10:33
Originariamente inviato da paditora
Si ma perchè proprio 1024?
Se era per prendere un numero qualunque si poteva usare 1000 byte = 1KB allora.

no, perché 1000 bites non sono rappresentabili come potenza di 2. l'informatica è indissolubilmente legata a rappresentazioni binarie a causa della sua natura elettronica.

Athlon
12-12-2003, 10:35
le unita' informatiche sono tutte potenze di 2
2^10
2^20
2^30

teogros
12-12-2003, 10:47
Originariamente inviato da Arësius
la cosa interessante è che 1 MB = 1.048.576 bytes, ovvero ci sono ben 50 KBytes in regalo! :D

Cioè quanti Bytes? :mbe: :confused: :D

Arësius
12-12-2003, 10:54
Originariamente inviato da teogros
Cioè quanti Bytes? :mbe: :confused: :D

48.576 :O

ehm.. c'è scritto :D

teogros
12-12-2003, 10:58
Originariamente inviato da Arësius
48.576 :O

ehm.. c'è scritto :D

Te non mi convinci... :mbe:

Mino
12-12-2003, 11:02
Come già detto sopra, è una questione di definizione e base numerica. Non c'è nulla da dimostrare, 2^10 fa 1024 e quello è il KByte. Non si usa il 1000 perchè, ovviamente, non si lavora in base 10 ;).

Poi, c'è un'altra cosa: lo spazio effettivamente disponibile in un HDD non è quello nominale anche per un altro motivo. Come tutti gli spazi, va "organizzato" per essere utilizzabile, e la struttura interna che gli diamo porta via un po' di spazio (quando formatti, per intenderci).

Per fare un paragone, prendi una libreria. Se, priva di scaffali, ha spazio utile X, dopo che l'avrai scaffalata lo spazio utile sarà X - (spazio occupato dalle mensole). Per X grande la perdita è trascurabile. Il discorso su un HDD è analogo, come concetto.

Mino

gtr84
12-12-2003, 11:03
Originariamente inviato da teogros
Cioè quanti Bytes? :mbe: :confused: :D

Ma se c'è scritto li ?!?

1 MB = 1.048.576 bytes

teogros
12-12-2003, 11:04
Originariamente inviato da gtr84
Ma se c'è scritto li ?!?

1 MB = 1.048.576 bytes

Era una battuta! :p

zuper
12-12-2003, 11:10
Originariamente inviato da Mino
Poi, c'è un'altra cosa: lo spazio effettivamente disponibile in un HDD non è quello nominale anche per un altro motivo. Come tutti gli spazi, va "organizzato" per essere utilizzabile, e la struttura interna che gli diamo porta via un po' di spazio (quando formatti, per intenderci).


c'è anche da tenere in considerazione il fatto che un hdd è suddiviso in cluster...ovvero piccole cellette in cui mettiamo i files...
i cluster sono di solito di 4k...

ma in un cluster ci può stare solo UN file o un pezzo di esso...

per cui se noi mettiamo un file di 1k (basta pensare a tutti i txt che abbiamo nel pc) non PERDIAMO 3k di spazio per ogni singolo file.

questo spiega la differenza tra spazio occupato e spazio occupato su disco ;)

Arësius
12-12-2003, 11:15
il discorso sulla dimensione dei cluster non c'entra un tubo :D

1 KB = 1024 bytes A PRESCINDERE dal supporto!! è tale sulla RAM come sugli HD in qualsiasi modo siano stati formattati! :)

paditora
12-12-2003, 13:00
Uhm forse ho trovato il modo di dimostrarlo matematicamente senza pensare a convenzioni o altre cose. :D
Allora ipotizziamo di rappresentare degli oggetti con dei numeri.
Per primo ipotizziamo di usare la base 10.
Ad esempio chessò mela=1 pera=2 pompelmo=3 ecc.
Avere Kilo oggetti(Kilo come valore decimale) significa avere 10x10^2 oggetti.
Se ora ci spostiamo nella dimensione del byte e del bit abbiamo.
2^8 = 1 byte ossia 8 bit
Se vogliamo rappresentare Kilo oggetti(Kilo stavolta come valore binario) significa avere 2^8 x 2^2 oggetti dico bene?
Per cui in binario 1 Kilo oggetti saranno 2^10 oggetti.
Può andare come dimostrazione o è una cagata?

Max2
12-12-2003, 13:06
perchè ti vuoi complicare la vita? :D ... non servono dimostrazioni, sono proprio le ipotesi di partenza che sono diverse ... è un mondo diverso, potremmo dire ;)

zuper
12-12-2003, 13:11
Originariamente inviato da Arësius
il discorso sulla dimensione dei cluster non c'entra un tubo :D

1 KB = 1024 bytes A PRESCINDERE dal supporto!! è tale sulla RAM come sugli HD in qualsiasi modo siano stati formattati! :)


si stava parlando di effettivo utilizzo dello spazio di hdd non di dimensione del KB ;);)

e la dimensione del cluster c'entra ;);)

Arësius
12-12-2003, 13:13
beh, diciamo che allora era OT :D

non è che un 1 KByte equivale a 1024 bytes per via del metodo della gestione dei cluster... è solo una convenzione :)

paditora
12-12-2003, 13:19
Originariamente inviato da Arësius
beh, diciamo che allora era OT :D

non è che un 1 KByte equivale a 1024 bytes per via del metodo della gestione dei cluster... è solo una convenzione :)


Si infatti.
Non è che se metti su un HD la fat16 la fat 32 o la fat di XP(che ora mi sfugge il nome) hai capacità diverse dell'HD.

zuper
12-12-2003, 13:25
Originariamente inviato da paditora
Si infatti.
Non è che se metti su un HD la fat16 la fat 32 o la fat di XP(che ora mi sfugge il nome) hai capacità diverse dell'HD.


è ntfs5 ;)

però se formatti un hdd con diverse dimensioni dei cluster teoricamente la dimensione cambia, dato che butti via + o - spazio ;)

paditora
12-12-2003, 13:29
Originariamente inviato da zuper
però se formatti un hdd con diverse dimensioni dei cluster teoricamente la dimensione cambia, dato che butti via + o - spazio ;)

Bè quello sicuramente.
Cmq per la Ram ho notato che il valore nominale è quello reale.
A me quando accendo il pc parte il conteggio della RAM come penso su tutti i PC.
Ed esce come valore 393216 K
Se facciamo 393216 : 1024 = 384 MB che è appunto la dimensione di RAM che ho montato sul pc.

serbring
12-12-2003, 13:34
Originariamente inviato da paditora
Uhm forse ho trovato il modo di dimostrarlo matematicamente senza pensare a convenzioni o altre cose. :D
Allora ipotizziamo di rappresentare degli oggetti con dei numeri.
Per primo ipotizziamo di usare la base 10.
Ad esempio chessò mela=1 pera=2 pompelmo=3 ecc.
Avere Kilo oggetti(Kilo come valore decimale) significa avere 10x10^2 oggetti.
Se ora ci spostiamo nella dimensione del byte e del bit abbiamo.
2^8 = 1 byte ossia 8 bit
Se vogliamo rappresentare Kilo oggetti(Kilo stavolta come valore binario) significa avere 2^8 x 2^2 oggetti dico bene?
Per cui in binario 1 Kilo oggetti saranno 2^10 oggetti.
Può andare come dimostrazione o è una cagata?

perchè 2^8=1 byte??:confused:

paditora
12-12-2003, 13:39
Originariamente inviato da serbring
perchè 2^8=1 byte??:confused:


Perchè un byte equivale a 8 bit. E con 8 bit si hanno 256 stati diversi.
00000000
00000001
00000010
00000011
00000100
....
...
..
.
11111111

Ad esempio i caratteri Ascii mi ricordo che potevano essere rappresentati da 1 byte.
E i caratteri Ascii sono 255 se non ricordo male.

Max2
12-12-2003, 13:43
Originariamente inviato da serbring
perchè 2^8=1 byte??:confused:

infatti :D :confused:

serbring
12-12-2003, 13:44
un byte è uguale ad 8 bit e non a 256!!

riaw
12-12-2003, 13:44
dipende da come lo scrivi......


1kb=1024
1Kb=1000

e così anche un mega, un giga, ecc.ecc.

Arësius
12-12-2003, 13:45
il simbolo ^ è l'evamento a potenza!

Arësius
12-12-2003, 13:46
Originariamente inviato da riaw
dipende da come lo scrivi......


1kb=1024
1Kb=1000

e così anche un mega, un giga, ecc.ecc.

uh?!?

non è che stai confondendo KiloByte e Kilobit vero? :D

paditora
12-12-2003, 13:46
Originariamente inviato da serbring
un byte è uguale ad 8 bit e non a 256!!


E quando mai io ho detto che equivale a 256.
Ho detto che è 2^8.
2 inteso come base 2.

Arësius
12-12-2003, 13:47
Originariamente inviato da paditora
E quando mai io ho detto che equivale a 256.
Ho detto che è 2^8.
2 inteso come base 2.

:confused:

riaw
12-12-2003, 13:48
Originariamente inviato da Arësius
uh?!?

non è che stai confondendo KiloByte e Kilobit vero? :D



no.

di solito il primo è utilizzato da tutti, il secondo solo dai produttori di dischi fissi :D:D:D:D

ziozetti
12-12-2003, 13:49
Ma è anche vero (o no?) che:

1 Kb = 1024 byte
1 Mb = 1024 Kb
1 Gb = 1000 Mb

?

Arësius
12-12-2003, 13:50
Originariamente inviato da ziozetti
Ma è anche vero (o no?) che:

1 Kb = 1024 byte
1 Mb = 1024 Kb
1 Gb = 1000 Mb

?

a parte il GB tutto giusto :D

duchetto
12-12-2003, 13:50
Originariamente inviato da Athlon
le unita' informatiche sono tutte potenze di 2
2^10
2^20
2^30


è così, ho passato un estate sana a studiare sta roba...senza risultato però :cry:

paditora
12-12-2003, 13:50
Originariamente inviato da Arësius
:confused:


Vabbè lasciamo perdere :D
Era un ragionamento un po' contorto che ho fatto io.

Arësius
12-12-2003, 13:50
Originariamente inviato da riaw
no.

di solito il primo è utilizzato da tutti, il secondo solo dai produttori di dischi fissi :D:D:D:D


giunge nuova :)

indagherò! :D

riaw
12-12-2003, 13:55
Originariamente inviato da Arësius
giunge nuova :)

indagherò! :D


fai una prova veloce.......
il tuo hd da quanti giga è? 80?
perfetto.

1024*1024*1024=1.073.741.824

ora....

80.000.000.000/
1.073.741.824=

~74.5 che assomiglia stranamente alla capacità formattata del tuo hd :D

così via....
un 40 giga (giga nel senso di 40.000.000.000 di byte) ha una capacità formattata di ~37.25 giga (giga nel senso di 1073740824byte) ;)


ovviamente i produttori di hd sono gli unici a usare una notazione così strampalata (cioè a potenze di 10 che nell'informatica non si son mai viste :D) perchè gli conviene: scrivere sul disco "80 giga" fa più scena che scrivere "settantaquattrogigaemezzo" :D anche se non è vero.......

Arësius
12-12-2003, 14:02
hai capito! :D

non lo sapevo... in effetti è sempre stato così... e io pensavo fosse una questione di spazio allocato dal sistema operativo nei primi settori... invece sono solo lamerate commerciali! :D

'stardi

paditora
12-12-2003, 14:11
Originariamente inviato da riaw
ovviamente i produttori di hd sono gli unici a usare una notazione così strampalata (cioè a potenze di 10 che nell'informatica non si son mai viste :D) perchè gli conviene: scrivere sul disco "80 giga" fa più scena che scrivere "settantaquattrogigaemezzo" :D anche se non è vero.......

E più si va verso valori alti e più spazio ti rubano :D
Ad esempio un HD che ha come valore 250GB in realtà è da 232GB circa.
Quasi 20 Giga in meno.

ziozetti
12-12-2003, 14:55
Eppure mi ricordo (e qualche amico conferma, magari ci sbagliamo tutti) che 1 Gb = 1000 Mb... Boh!

Arësius
12-12-2003, 15:00
e perché mai dovrebbe essere differente? parliamo sempre della stessa, medesima unità di misura!

i giga sono migliaia di mega

i mega sono migliaia di migliaia

i giga, se la logica è ancora in vigore, sono migliaia di migliaia di migliaia.

quindi 1024x1024x...1024! :D

xber-gigi
12-12-2003, 15:00
Originariamente inviato da Arësius
1 bit

8 bit = 1 byte

1 Kbyte = 2^10 bytes = 2*2*2*2*2*2*2*2*2*2*2 = 1024 bytes

Credo che questa sia la risposta più logica...
Anche io avrei risposto così.

jumpermax
12-12-2003, 22:35
Originariamente inviato da paditora
Ieri sera uscendo con un mio amico mi stava dicendo che voleva comprarsi un HD nuovo da 40GB.
Dopodichè mi ha chiesto come mai gli HD invece di essere della misura indicata, hanno qualche Giga in meno.
Io gli ho spiegato che la trasformazione da Gb -> Mb -> Kb non basta dividere o moltiplicare per 1000 ma bisogna moltiplicare o dividere per 1024.
Inoltre gli ho spiegato che le case produttrici di hd, come tutti sanno, mettono una misura sbagliata della dimensione dato che ad esempio un hd da 40GB in realtà contiene 40.000.000.000 byte che in GB diventano 37,25
Io mi ricordavo che alle superiori, quando studiammo il sistema binario, ci fu un problema su questo argomento.
Ossia di dimostrare matematicamente il perchè 1000byte non è uguale a dire 1KB.
Solo che essendo passati un po' di anni da quando ho finito le scuole, non mi ricordo più come si faceva. :cry:
Qualcuno mi saprebbe fare la dimostrazione matematica del fatto che 1024byte equivangono a 1KB ?

GUARDA CHE NON E' VERO!
Mi dispiace ma in questo caso hanno ragione i produttori di periferiche di memorizzazione. Il sistema SI non riconosce come valido le misure che vengono impropriamente usate in informatica,
tutta la comunità scientifica usa K, M e G con una certa semantica e non si vede perchè l'informatica debba usare gli stessi simboli per denotare valori diversi. Ed infatti non deve
Anche perché in questo modo si creano casini notevoli,quando si iniziano ad usare nella stessa materia grandezze fisiche diverse come la frequenza per esempio.
Non ci credete?
http://www.electroportal.net/vis_articolo.asp?id_art=87
Ergo sappiatelo le unità usate in informatica non rispettano il sistema SI.

Xfree
12-12-2003, 22:41
Originariamente inviato da jumpermax
GUARDA CHE NON E' VERO!



questa mi sorge nuova :eek: ..io ho sempre saputo che le unità di misura erano potenze di 2 :mc:

recoil
12-12-2003, 22:41
Originariamente inviato da riaw
dipende da come lo scrivi......


1kb=1024
1Kb=1000

e così anche un mega, un giga, ecc.ecc.

io uso sempre la K maiuscola e vario la b

1KB=1024
1Kb=1000

stessa cosa per MB Mb e GB Gb

cmq quando si parla di velocità di trasferimento (ad esempio i 100Mbit delle schede di rete) si ragiona in base 10 quindi si parla di 1000, 1000000 ecc. e non 2^10, 2^20 ecc.

edit: forse è così anche per la capacità dei dischi fissi ma non ne sono sicuro

jumpermax
12-12-2003, 23:17
Originariamente inviato da Xfree
questa mi sorge nuova :eek: ..io ho sempre saputo che le unità di misura erano potenze di 2 :mc:
si ma in questo fa fede il sistema SI e non certo windows o i manuali di informatica.
Il sistema SI dice K=1000 vale per tutti. Se gli informatici vogliono avere unità di misura... su misura :D possono benissimo ma non devono usare gli stessi simboli del sistema SI che creano solo confusione.
Per inciso da quanti mega sono i floppy?

jumpermax
12-12-2003, 23:19
Originariamente inviato da recoil
io uso sempre la K maiuscola e vario la b

1KB=1024
1Kb=1000

stessa cosa per MB Mb e GB Gb

cmq quando si parla di velocità di trasferimento (ad esempio i 100Mbit delle schede di rete) si ragiona in base 10 quindi si parla di 1000, 1000000 ecc. e non 2^10, 2^20 ecc.

edit: forse è così anche per la capacità dei dischi fissi ma non ne sono sicuro
:eek: di bene in meglio! la b indica bit
8000bit=8kb=1KB=1000byte

Jo3
12-12-2003, 23:19
Qualcuno si e' ricordato che la Allocation Table della FAT32 su un disco da 40 giga occupa qualche decina di MByte?


Ed e' per questo che formattando un HD da 80 Giga non avremo mai una capacita' effettiva di 80 GByte?

paditora
12-12-2003, 23:24
Originariamente inviato da Jo3
Qualcuno si e' ricordato che la Allocation Table della FAT32 su un disco da 40 giga occupa qualche decina di MByte?
Ed e' per questo che formattando un HD da 80 Giga non avremo mai una capacita' effettiva di 80 GByte?

Si ma occuperà quanto 100Mega?
Un HD da 80GB saranno in realtà 74-75GB

Il mio che è un 40GB in realtà sono 37,qualcosa.

Jo3
12-12-2003, 23:34
Originariamente inviato da paditora
Si ma occuperà quanto 100Mega?
Un HD da 80GB saranno in realtà 74-75GB

Il mio che è un 40GB in realtà sono 37,qualcosa.


LA tabella FAT32 e' una tabella di indirizzario a 32 bit.


Ergo significa che 32 bit vengono impiegati per indirizzare un cluster, che normalmente contiene 32 KByte.

100 GigaByte / 32 Kbyte * 32 Bit

La FAT32, inoltre, essendo una risorsa critica del sistema, normalmente viene duplicata.


Inoltre, ogni directory, si compone di :

Nome del file (11 caratteri)
Attributi
Data e ora
Puntatore al primo elemento nella FAT
Dimensione del file

Jo3
13-12-2003, 00:05
Originariamente inviato da recoil
io uso sempre la K maiuscola e vario la b

1KB=1024
1Kb=1000

stessa cosa per MB Mb e GB Gb

cmq quando si parla di velocità di trasferimento (ad esempio i 100Mbit delle schede di rete) si ragiona in base 10 quindi si parla di 1000, 1000000 ecc. e non 2^10, 2^20 ecc.

edit: forse è così anche per la capacità dei dischi fissi ma non ne sono sicuro



Prova a digitare CHKDSK da shell di dos.

Comparira' l'effettiva capacita' del disco fisso espressa in byte.

paditora
13-12-2003, 00:19
Originariamente inviato da Jo3
Prova a digitare CHKDSK da shell di dos.

Comparira' l'effettiva capacita' del disco fisso espressa in byte.



C:\WINDOWS>chkdsk

Con CHKDSK non è stato controllato se esistono errori in questa unità.
Utilizzare SCANDISK per individuare e correggere gli errori presenti.

Numero di serie del volume: 0E2F-1CFF

4.713.852 kilobyte di spazio su disco totale
2.721.688 kilobyte disponibili

4.096 byte in ogni unità di allocazione
1.178.463 unità di allocazione su disco
680.422 unità di allocazione disponibili su disco

655.360 byte di memoria complessiva
558.992 byte disponibili

Invece di utilizzare CHKDSK, provare con SCANDISK. SCANDISK è in grado di
identificare e risolvere un più grande numero di problemi del disco.


C:\WINDOWS>



D:\>chkdsk

Con CHKDSK non è stato controllato se esistono errori in questa unità.
Utilizzare SCANDISK per individuare e correggere gli errori presenti.

Volume APP_PASCAL creato 21/04/2003 21.07
Numero di serie del volume: 0D56-1C0D

21.500.480 kilobyte di spazio su disco totale
12.340.576 kilobyte disponibili

16.384 byte in ogni unità di allocazione
1.343.780 unità di allocazione su disco
771.286 unità di allocazione disponibili su disco

655.360 byte di memoria complessiva
558.992 byte disponibili

Invece di utilizzare CHKDSK, provare con SCANDISK. SCANDISK è in grado di
identificare e risolvere un più grande numero di problemi del disco.


Con CHKDSK non è stato controllato se esistono errori in questa unità.
Utilizzare SCANDISK per individuare e correggere gli errori presenti.

E:\>chkdsk

Con CHKDSK non è stato controllato se esistono errori in questa unità.
Utilizzare SCANDISK per individuare e correggere gli errori presenti.

Volume CAPTURE creato 21/04/2003 21.11
Numero di serie del volume: 2947-1CD6

12.847.432 kilobyte di spazio su disco totale
4.059.496 kilobyte disponibili

8.192 byte in ogni unità di allocazione
1.605.929 unità di allocazione su disco
507.437 unità di allocazione disponibili su disco

655.360 byte di memoria complessiva
558.992 byte disponibili

Invece di utilizzare CHKDSK, provare con SCANDISK. SCANDISK è in grado di
identificare e risolvere un più grande numero di problemi del disco.






Il mio è un 40GB



21.500.480 + 12.847.432 + 4.713.852 = 39.061.764

39.061.764 / 1024 / 1024 = 37,25 GB

subvertigo
13-12-2003, 00:25
scusate ma allora qualcuno mi spiega perchè ai Kbyte (Mbyte, Giga ecc,) piacciono tanto le potenze del 2 (ed infatti per passare dall'una all'altra si divide per 1024),

mentre per i Kbit, Mbit si usano le normalissime potenze del 10??

vero? 1 Kbit = 1000 bit, no?

mentre un 1 Kbyte= 1024 byte :confused: :confused:

paditora
13-12-2003, 00:29
Originariamente inviato da subvertigo
scusate ma allora qualcuno mi spiega perchè ai Kbyte (Mbyte, Giga ecc,) piacciono tanto le potenze del 2 (ed infatti per passare dall'una all'altra si divide per 1024),

mentre per i Kbit, Mbit si usano le normalissime potenze del 2??

vero? 1 Kbit = 1000 bit, no?

mentre un 1 Kbyte= 1024 byte :confused: :confused:


Ma sei sicuro che 1000 bit siano un Kbit?
A me sembra che, però non vorrei dire una cavolata ma 1024 bit sono 1Kbit

jumpermax
13-12-2003, 00:30
Originariamente inviato da subvertigo
scusate ma allora qualcuno mi spiega perchè ai Kbyte (Mbyte, Giga ecc,) piacciono tanto le potenze del 2 (ed infatti per passare dall'una all'altra si divide per 1024),

mentre per i Kbit, Mbit si usano le normalissime potenze del 2??

vero? 1 Kbit = 1000 bit, no?

mentre un 1 Kbyte= 1024 byte :confused: :confused:
come ho già detto prima, vanno tutti con le potenze del 10. Ma il caos regna sovrano, molti continuano ad usare la stessa notazione come se fosse a potenza del 2. E visto che la cosa crea solo casini, il risultato è che non si sa mai se con kB o kb si indicano 1000 o 1024

paditora
13-12-2003, 00:31
Esempio: linea adsl 256k
Dal tuo ragionamento dovrebbe essere 256.000 bit giusto?
Per cui in byte sono 256.000 / 8 = 32.000 byte
Ossia 31.25 Kbyte

Mentre invece la velocità teorica è di 32Kbyte
32 x 1024 = 32764 byte
32764 x 8 = 262.144 bit

jumpermax
13-12-2003, 00:35
L'uso corretto delle unità di misura
2^10 kibi Ki kilobinary: (2^10)^1 kilo: (10^3)1
2^20 mebi Mi megabinary: (2^10)^2 mega: (10^3)2
2^30 gibi Gi gigabinary: (2^10)^3 giga: (10^3)^3
2^40 tebi Ti terabinary: (2^10)^4 tera: (10^3)^4
2^50 pebi Pi petabinary: (2^10)^5 peta: (10^3)^5
2^60 exbi Ei exabinary: (2^10)^6 exa: (10^3)^6


un kibibit 1 Kibit = 210 bit = 1024 bit
un kilobit 1 kbit = 103 bit = 1000 bit
un mebibyte 1 MiB = 220 B = 1 048 576 B
un megabyte 1 MB = 106 B = 1 000 000 B
un gibibyte 1 GiB = 230 B = 1 073 741 824 B
un gigabyte 1 GB = 109 B = 1 000 000 000 B

Er Paulus
13-12-2003, 00:52
Originariamente inviato da subvertigo
scusate ma allora qualcuno mi spiega perchè ai Kbyte (Mbyte, Giga ecc,) piacciono tanto le potenze del 2 (ed infatti per passare dall'una all'altra si divide per 1024),



"le potenze del 2", si usano perchè si lavora in base 2.

perchè si lavora in base 2? cioè con 0 e 1?

perchè è il modo migliore per esprimere un segnale di tensione...

infatti di solito:

tensione > di una certa soglia =1
tensione< soglia =0

subvertigo
13-12-2003, 01:06
Originariamente inviato da paditora
Esempio: linea adsl 256k
Dal tuo ragionamento dovrebbe essere 256.000 bit giusto?
Per cui in byte sono 256.000 / 8 = 32.000 byte
Ossia 31.25 Kbyte

Mentre invece la velocità teorica è di 32Kbyte
32 x 1024 = 32764 byte
32764 x 8 = 262.144 bit

e chi lo dice che la velocità teorica deve essere 32 Kb?
infatti secondo me la velocità teorica è proprio 32.000 byte, ovvero 31,25Kb

Jo3
13-12-2003, 02:09
Originariamente inviato da paditora


21.500.480 + 12.847.432 + 4.713.852 = 39.061.764




39.061.764 = circa 40 GByte (escluso lo spazio per la ridistribuzione delle partizioni). espresso in base 10.

Ergo, dire 80 Gbyte significa dire 80 Miliardi di Byte.


Quando acquisto un disco da 1 Mbyte, acquisto effettivamente un disco da 1 Milione di byte, e non 1048576 Byte (ossia 2^20 Byte), come ci si aspetterebbe in notazione in base 2.

serbring
13-12-2003, 08:31
Originariamente inviato da recoil
io uso sempre la K maiuscola e vario la b

1KB=1024
1Kb=1000

stessa cosa per MB Mb e GB Gb

cmq quando si parla di velocità di trasferimento (ad esempio i 100Mbit delle schede di rete) si ragiona in base 10 quindi si parla di 1000, 1000000 ecc. e non 2^10, 2^20 ecc.

edit: forse è così anche per la capacità dei dischi fissi ma non ne sono sicuro

La k va minuscola........anche sui prodotti alimentari usano la k minuascola, infatti la maggior parte delle tabelle dei valori nutrizionali non sono uniformate alla normativa!

Er Paulus
13-12-2003, 08:39
la notazione giusta sarebbe:

KB= Kilobyte=1024 byte

Kb= Kilobit=1024 bit

:)

paditora
13-12-2003, 08:55
Originariamente inviato da Er Paulus
la notazione giusta sarebbe:

KB= Kilobyte=1024 byte

Kb= Kilobit=1024 bit

:)


Anche secondo me è così.

mithos65
24-12-2005, 11:01
Anche se la discussione risale a circa tre anni fa vorrei inserire un altro post, soprattutto perchè se in un motore di ricerca si digita "1024 KB", questo thread risulta tra le prime pagine presentate.
Dunque, perchè 1024 byte = 1 KB e non 1 KB = 1000 byte ?

La spiegazione è più semplice di quel che sembrerebbe.

Convenzione sistema di misure matematiche in base 10 (sistema di numerazione decimale che si serve di dieci segni):

Kilo = 10^3 1.000
Mega = 10^6 1.000.000
Giga = 10^9 1.000.000.000

Convenzione sistema di misure informatiche in base 2 (sistema di numerazione binario che si serve di due segni, che sono anche gli stati possibili di un circuito elettrico, spento o acceso, 0 o 1)

KiloByte = 2^10 1.024
MegaByte = 2^20 1.048.576
GigaByte = 2^30 1.073.741.824

per intenderci si poteva anche, per convenzione, chiamare il sistema di misure informatiche in base 2 con:
francescotottiByte = 2^10
pippobaudoByte = 2^20
oriettabertiByte = 2^30

si è scelto (logicamente) lo stesso acronimo delle misure matematiche già esistenti, perché per approssimazione si equivalgono.

un saluto

paditora
24-12-2005, 11:17
mithos65:
ma 1 byte non sono 8 bit?
quindi non è solo 0 e 1
per cui 1 byte ha 256 valori possibili.
giusto?
e quindi la dimostrazione si deve fare con base 256
o sbaglio?


256^10
256^20
256^30

razziadacqua
24-12-2005, 12:33
Ma ragazzi tutto sta casino per il sistema Binario dei dati e le loro unità dimisura? :confused: :confused: sinceramente non capisco bene dove sia il vostro cavillo,o aspetto secondario su cui voi discutete.....

Ma caspita c'è lo ha spiegato a noi il Proff di informatica chiaro come la luce del sole...e siamo Fisioterapisti :fagiano: ha perso tempo per spiegarlo a noi fisioterapisti... :stordita:

e cmq ragazi dovete ragionare sui 1024Kb=1Mega perchè altrimenti quando andate a fare i conti per fare le Partizioni ad un disco fisso non vi tornano mai i conti se usate la base 10...

Il mio Pc ha 7partizioni e ne ho fatte a decine su altri PC...ci ho dovuto sbattere i denti diverse volte su sta storia...senza contare lo spazio occupato dai file NTFS della partizione stessa -.-

Ma cmq basta vedere penne USB,CD,DVD,lettori,HHD esterni...per dire dicono 500mega ma poi alla fine il PC legge 488mega :) dicono 120giga quando poi sono 117giga scarsi....

mithos65
24-12-2005, 20:58
Patidora:
supponiamo di chiamare "giuliocesare" un gruppo di otto numeri in base 10, le combinazioni possibili vanno da 00000000 a 99999999 (per semplificare teniamo conto dello zero), ogni cifra è posizionale e ognuna può valere: 0 1 2 3 4 5 6 7 8 9, in questo modo è possibile creare 99.999.999 combinazioni diverse.
Ora facciamo lo stesso ragionamento in base 2, chiamiamo "byte" un gruppo di otto numeri, le combinazioni possibili vanno da 00000000 a 11111111, ogni cifra può valere: 0 1, in questo modo è possibile creare 256 combinazioni diverse.

Quindi "giuliocesare" e "byte" sono convenzioni, che considerano un gruppo di otto cifre.
Una in base 10 e l'altra in base 2.

Quindi ancora:
10^8 = significa che in base 10 (cioè ogni cifra può valere 0 o 1 o 2 o 3 o 4 o 5 o 6 o 7 o 8 o 9) si possono creare 99.999.999 combinazioni diverse (dove 10 è il numero di cifre possibili e 8 è il gruppo di cifre considerate).

2^8 = significa che in base 2 (cioè ogni cifra può valere 0 o 1) si possono creare 256 combinazioni diverse (dove 2 è il numero di cifre possibili e 8 è il gruppo di cifre considerate).

Spero di averti chiarito le idee paditora.

ciao

ps: per razziadacqua, 1 MB = 1024 KB = 1.048.576 byte, il problema della vera capienza degli hard disk e delle conseguenti possibili partizioni non dipende da errati conti matematici ma bensì da furbizie di mercato ;o)

paditora
24-12-2005, 21:05
Ora ho capito.
Cmq la dimostrazione l'avevo imparata alle superiori però non me la ricordavo più.
Anche perchè sono passati 12 anni da quando ho finito le superiori.

Anzi già che ci sei.
Mi spieghi da dove nasce il byte?
Perchè si è adottato prendere 8 cifre binarie?

misterx
24-12-2005, 22:30
no, perché 1000 bites non sono rappresentabili come potenza di 2. l'informatica è indissolubilmente legata a rappresentazioni binarie a causa della sua natura elettronica.

già :)

Fabryce
25-12-2005, 02:31
Una linea ADSL da 4 Mbit viaggia ad un massimo di 512 Kilobyte al secondo?!?!?

Fabryce
25-12-2005, 02:33
Una linea ADSL da 4 Mbit viaggia ad un massimo di 512 Kilobyte al secondo?!?!?

pietro84
25-12-2005, 12:33
Una linea ADSL da 4 Mbit viaggia ad un massimo di 512 Kilobyte al secondo?!?!?

si,ma non ci arriva mai a questo valore. inoltre la banda passante viene divisa in velocità in upload e velocità in download.
non è una velocità da poco. figurati che spesso non viene nemmeno sfruttata a pieno perchè la velocità del server in upload per ogni client connesso è minore della tua velocità in download.


ps:mi sbagliavo 1kbit=1024bit :D

mithos65
27-12-2005, 08:25
Paditora scrive:
“Anzi già che ci sei.
Mi spieghi da dove nasce il byte?
Perchè si è adottato prendere 8 cifre binarie?”

Perché con 8 bit, e quindi 256 combinazioni, è possibile rappresentare tutte le lettere maiuscole e minuscole dell’alfabeto, i numeri, e una serie di caratteri speciali (vedi codici ASCII o EBCDIC).

ciao, alla prossima

flisi71
27-12-2005, 13:15
Tutto corretto come dice Mythos65.

E' normale che i produttori di HDD dichiarino la capacità non formattata in unità di misura del SI, quindi in miliardi di celle indirizzabili.


Per concludere espongo un trucchetto facile facile per farsi una conversione decimale al volo:

dato il numero binario:
2^xy

le decine (x) si leggono:
1=Kilo
2=Mega
3=Giga
4=Tera
ecc...
Sono prese con gli stessi simboli usati nel SI perchè grezzamente vi si avvicinano come numeri (1 MegaByte è poco di più di 1 Milione di Byte - con lo scarto del 4,8% circa)


le unità (y) si leggono:
0=1 => 2^0=1
1=2 => 2^1=2
2=4 => 2^2=4
3=8 => 2^3=8
4=16 .....
ecc..
9=512 => 2^9=512



Esempio1) quanto è lo spazio di indirizzamento reale di un controller di memoria a 40 linee?

Risposta: 2^40, cioè

1 (lo zero delle unità) Tera (il 4 delle decine)


Esempio2) quanti numeri si rappresentano con 32 bit?

Risposta: 2^32, cioè

4 (il 2 delle unità) Giga (il 3 delle decine)

Esempio3 al contrario) quante cifre binarie mi servono per rappresentare il numero decimale 10000, ammettendo di non usare la notazione in complemento ma solo in valore assoluto?

Risposta: andandoa tentativi, visto che siamo nel range delle migliaia, parto con K:

2^10 = 1024; non mi basta per rappresentare 10000
..
2^13 = 8192; non mi basta per rappresentare 10000
2^14 = 16384; mi basta per rappresentare 10000

Quindi mi bastano 14 cifre binarie (bit) per rappresentare il mio numero.



Ciao

Federico

riaw
27-12-2005, 13:37
Paditora scrive:
“Anzi già che ci sei.
Mi spieghi da dove nasce il byte?
Perchè si è adottato prendere 8 cifre binarie?”

Perché con 8 bit, e quindi 256 combinazioni, è possibile rappresentare tutte le lettere maiuscole e minuscole dell’alfabeto, i numeri, e una serie di caratteri speciali (vedi codici ASCII o EBCDIC).

ciao, alla prossima

no.
il byte per definizione è la larghezza del bus dati. che poi nel 99.999% dei calcolatori al mondo corrisponde a 8 bit questo è un altro discorso. ci sono anche macchine dove 1 byte = 10 bit , ma sono l'eccezione.

flisi71
27-12-2005, 13:47
no.
il byte per definizione è la larghezza del bus dati. che poi nel 99.999% dei calcolatori al mondo corrisponde a 8 bit questo è un altro discorso. ci sono anche macchine dove 1 byte = 10 bit , ma sono l'eccezione.

Credo che sia la lunghezza della WORD, che nel passato ha assunto dimensioni differenti in differenti architetture.

Credo che poi le architetture siano passate a 8 bit anche in ragione di un allineamento con la codificazione ASCII ed EBCDIC di IBM allora in uso (erano codici a 8 bit - ASCII di principio era a 7 bit - e permettevano di rappresentare tutti i caratteri, numeri e segni di punteggiatura necessari).


Ciao

Federico

riaw
27-12-2005, 13:51
Credo che sia la lunghezza della WORD, che nel passato ha assunto dimensioni differenti in differenti architetture.

Credo che poi le architetture siano passate a 8 bit anche in ragione di un allineamento con la codificazione ASCII ed EBCDIC di IBM allora in uso (erano codici a 8 bit - ASCII di principio era a 7 bit - e permettevano di rappresentare tutti i caratteri, numeri e segni di punteggiatura necessari).


Ciao

Federico

ma è la definizione che è sbagliata. come significato "storico" ci può anche stare, ma per definizione il byte non è un numero "tot" di bit.

pietro84
27-12-2005, 13:55
no.
il byte per definizione è la larghezza del bus dati. che poi nel 99.999% dei calcolatori al mondo corrisponde a 8 bit questo è un altro discorso. ci sono anche macchine dove 1 byte = 10 bit , ma sono l'eccezione.


forse l'ampiezza del data bus è stata di 8 bit solo nei primi microprocessori,ora non è più cosi,ci sono stati processori con data bus di 16,32,e anche 64 bit mi sembra....ora non esistono quasi più processori a otto bit(se non per applicazioni particolari).

pietro84
27-12-2005, 13:58
ma è la definizione che è sbagliata. come significato "storico" ci può anche stare, ma per definizione il byte non è un numero "tot" di bit.

un byte è un insieme di otto bit...questa è la definizione.
è una definizione indipendente dall'architettura del calcolatore.

riaw
27-12-2005, 14:02
un byte è un insieme di otto bit...questa è la definizione.
è una definizione indipendente dall'architettura del calcolatore.

ehm, no.......

il byte non è FISSO, casomai, nei moderni calcolatori si può dire che un byte corrisponde a 8 bit.

per flisi71: la WORD sono 16bit, non 8.

flisi71
27-12-2005, 14:11
Aiutato da S.Google


http://medic.bgu.ac.il/comp/course/defs/byte.html

Byte
/bi:t/ An amount of memory or data smaller than a word; usually eight bits; enough to represent one character; the smallest addressable unit of storage.

On modern architectures a byte is nearly always 8 bits and characters are usually represented in ASCII in the least significant seven bits.

Historical note: The term was coined by Werner Buchholz in 1956 during the early design phase for the IBM Stretch computer. Originally it was described as 1 to 6 bits (typical I/O equipment of the period used 6-bit chunks of information). The move to an 8-bit byte happened in late 1956, and this size was later adopted and promulgated as a standard by the System/360 computer. The word was coined by mutating the word "bite" so it would not be accidentally misspelled as bit.


Da qui invece
http://www.byteman.it/gloss_w.htm

Word: parola
un insieme di 1 o più Byte considerati come una entità per un determinato tipo di calcolatore. Normalmente per word si intendono 2 byte, ma questo dipende solo dal fatto che per tanto tempo la word dei processori è stata costituita da 2 byte. Tecnicamente è il numero di bit che il processore è in grado dio trattare in parallelo.
-------------------

Ciao

Federico

pietro84
27-12-2005, 14:11
ehm, no.......

il byte non è FISSO, casomai, nei moderni calcolatori si può dire che un byte corrisponde a 8 bit.


perchè nei moderni calcolatori si può dire questo?! Nessun moderno calcolatore supporta data bus di otto bit.
se non è fisso da cosa dipenderebbe la sua lunghezza? :confused:

riaw
27-12-2005, 14:13
perchè nei moderni calcolatori si può dire questo?! Nessun moderno calcolatore supporta data bus di otto bit.
se non è fisso da cosa dipenderebbe la sua lunghezza? :confused:


dalla minima unità che un calcolatore può trattare.

pietro84
27-12-2005, 14:19
dalla minima unità che un calcolatore può trattare.

è un bit la minima unità che può trattare un calcolatore....
quindi seguendo il tuo ragionamento 1byte dovrebbe uguale a un bit?! :mbe:

flisi71
27-12-2005, 14:25
è un bit la minima unità che può trattare un calcolatore....
quindi seguendo il tuo ragionamento 1byte dovrebbe uguale a un bit?! :mbe:

No, dice bene riaw quando indica gli 8 bit come unità minima di trattamento, visto che al minimo tu puoi indirizzare ad esempio il registro AH, che è la metà superiore del registro AX a 16 bit.

Ciao

Federico

mithos65
27-12-2005, 14:43
riaw scrive:
"no.
il byte per definizione è la larghezza del bus dati. che poi nel 99.999% dei calcolatori al mondo corrisponde a 8 bit questo è un altro discorso. ci sono anche macchine dove 1 byte = 10 bit , ma sono l'eccezione."


BYTE è un termine coniato da Werner Buchholz nel 1956 per indicare un insieme di 8 BIT, e venne usato come unità di misura informatica perchè con 8 bit è possibile fornire un'informazione minima atta ad elaborare un algoritmo.
L’acronimo è questo: BinarY digiT Eight (binario cifra otto).

Per quanto riguarda il bus dati sappi che ne esistono anche da 2 bit e da 4 bit.
La larghezza di un bus dati è sempre una potenza di 2 (perché la scienza informatica è legata al sistema binario), ne risulta che abbiamo bus dati a 8 bit, 16 bit, 32 bit, 64 bit, etc...ma 1 byte identifica SEMPRE 8 bit.

mithos65
27-12-2005, 15:26
riaw scrive:
“il byte non è FISSO, casomai, nei moderni calcolatori si può dire che un byte corrisponde a 8 bit.”


No, riaw.
Non è assolutamente così.
Byte è solo ed esclusivamente una unità di misura che identifica 8 bit. Non un'unità di misura che identifica la minima informazione elaborata da un determinato computer.

Il byte è una convenzione UFFICIALE di misura che non consente interpretazioni arbitrarie.

pietro84
27-12-2005, 16:43
No, dice bene riaw quando indica gli 8 bit come unità minima di trattamento, visto che al minimo tu puoi indirizzare ad esempio il registro AH, che è la metà superiore del registro AX a 16 bit.

Ciao

Federico

una cosa è l'indirizzamento una cosa è il trattamento,un processore può anche elaborare un unico bit,ma può indirizzarne 8 alla volta...
e poi il byte mica è un concetto legato solo ai pc e ai microprocessori,ci sono un'infinità di circuiti logici che processano byte e che non sono dei microprocessori.
e quando si parla di byte di intende sempre 8 bit

^TiGeRShArK^
29-12-2005, 02:14
Si infatti.
Non è che se metti su un HD la fat16 la fat 32 o la fat di XP(che ora mi sfugge il nome) hai capacità diverse dell'HD.
si ovviamente...
con la fat 16 sei limitato a 4 GB (o 4096 KB se preferisci :D)
inoltre ai tempi ho visto cluster di dimensione MOLTO maggiore ai 4096 bytte...
questo perchè il numero massimo di cluster che si potevano ospitare su un HDD con la FAT 16 era 65536....
Per uqesto si aumentava la dimensione massima dei cluster arrivando fino al limite massimo di 65536 ke portava ad utilizzare lo spazio sul disco fino a 4 GB (65536 * 65536 = 10^16 * 10 ^ 16 = 10 ^ 32)

^TiGeRShArK^
29-12-2005, 02:18
Eppure mi ricordo (e qualche amico conferma, magari ci sbagliamo tutti) che 1 Gb = 1000 Mb... Boh!
ma non mi pare proprio...
1 KB (e non Kb) = 1024 byte
1 MB = 1024 KB
1 GB = 1024 MB
1 TB = 1024 GB (TeraByte)
1 PB = 1024 TB (PetaByte)
1 EB = 1024 PB (ExaByte)
Saranno giusti i simboli per PetaByte ed ExaByte???
boh ki si ricorda! :D

^TiGeRShArK^
29-12-2005, 02:22
GUARDA CHE NON E' VERO!
Mi dispiace ma in questo caso hanno ragione i produttori di periferiche di memorizzazione. Il sistema SI non riconosce come valido le misure che vengono impropriamente usate in informatica,
tutta la comunità scientifica usa K, M e G con una certa semantica e non si vede perchè l'informatica debba usare gli stessi simboli per denotare valori diversi. Ed infatti non deve
Anche perché in questo modo si creano casini notevoli,quando si iniziano ad usare nella stessa materia grandezze fisiche diverse come la frequenza per esempio.
Non ci credete?
http://www.electroportal.net/vis_articolo.asp?id_art=87
Ergo sappiatelo le unità usate in informatica non rispettano il sistema SI.
si vabbè...
eh grazie..
ma se PER CONVENZIONE in informatica si sono sempre usate le potenze di due anzikè quelle di dieci (dato ke è INFINITAMENTE + naturale poikè tutta l'elettronica digitale è basata su sequenze di bit) ci dobbiamo adeguare al S.I.???
vallo a spiegare a tutti i produttori di LCD ke proporre una risoluzione di 1024X768 o di 1280X1024 è sbalgiato perchè nn rispetta il S.i. :rolleyes:
e magari anche diciamo che i colori visualizzabili non sono 16.777.216 (8 bit per canale di colore ovvero 24 bit) ma dovrebbero essere 16.000.000.....
per me non ha alcun senso utilizzare in informatica le potenze di 10...
è innaturale come sarebbe innaturale utilizzare nel mondo reale le potenze di due.

^TiGeRShArK^
29-12-2005, 02:23
io uso sempre la K maiuscola e vario la b

1KB=1024
1Kb=1000

stessa cosa per MB Mb e GB Gb

cmq quando si parla di velocità di trasferimento (ad esempio i 100Mbit delle schede di rete) si ragiona in base 10 quindi si parla di 1000, 1000000 ecc. e non 2^10, 2^20 ecc.

edit: forse è così anche per la capacità dei dischi fissi ma non ne sono sicuro
sbagliato.
1 KB = 1 KiloByte = 1024 Byte
1 Kb = 1 KiloBit = 1024 Bit

^TiGeRShArK^
29-12-2005, 02:41
L'uso corretto delle unità di misura
2^10 kibi Ki kilobinary: (2^10)^1 kilo: (10^3)1
2^20 mebi Mi megabinary: (2^10)^2 mega: (10^3)2
2^30 gibi Gi gigabinary: (2^10)^3 giga: (10^3)^3
2^40 tebi Ti terabinary: (2^10)^4 tera: (10^3)^4
2^50 pebi Pi petabinary: (2^10)^5 peta: (10^3)^5
2^60 exbi Ei exabinary: (2^10)^6 exa: (10^3)^6


un kibibit 1 Kibit = 210 bit = 1024 bit
un kilobit 1 kbit = 103 bit = 1000 bit
un mebibyte 1 MiB = 220 B = 1 048 576 B
un megabyte 1 MB = 106 B = 1 000 000 B
un gibibyte 1 GiB = 230 B = 1 073 741 824 B
un gigabyte 1 GB = 109 B = 1 000 000 000 B

si...ok....
ma mi pare un pò come il protocollo ISO/OSI....
è stato il primo standard ma alla fine non viene quasi mai implementato nella sua totalità dato ke sarebbe troppo pesante...
proprio per questo di solito si implementano sottoinsiemi di questo protocollo...
perchè queste seghe mentali con l'ISO/OSI???
semplice... alla fine lo standard de facto è l'IP con le sue varie incarnazioni connection oriented o connection less.
Per lo stesso motivo mi sa troppo di sega mentali introdurre kibi mebi e cose varie..
tanto per fare un discorso teorico magari vanno pure bene...
ma se io devo scaricare 1 KB dalla rete mi aspetto 1024 Byte e non certo 1000 Byte... prova un pò ad immaginare il casino se non ricevessi proprio il numero di byte che mi aspetto..
e mi pare che fino ad oggi non si sia confuso nessuno alla faccia di kibi, mebi e cose varie... ;)

^TiGeRShArK^
29-12-2005, 02:43
Una linea ADSL da 4 Mbit viaggia ad un massimo di 512 Kilobyte al secondo?!?!?
come massimo teorico si...
in realtà spesso (MOLTO spesso) va + lenta...

^TiGeRShArK^
29-12-2005, 02:44
si,ma non ci arriva mai a questo valore. inoltre la banda passante viene divisa in velocità in upload e velocità in download.
non è una velocità da poco. figurati che spesso non viene nemmeno sfruttata a pieno perchè la velocità del server in upload per ogni client connesso è minore della tua velocità in download.


ps:mi sbagliavo 1kbit=1024bit :D
no.. ti sbagli anche nella velocità dell'ADSL...
4096 Kb in DownLoad e 256 Kb in upload ;)

pietro84
29-12-2005, 10:44
no.. ti sbagli anche nella velocità dell'ADSL...
4096 Kb in DownLoad e 256 Kb in upload ;)

davvero? :D si intendeva solo in download 4Mbit,non è la banda passante complessiva? :confused:

paditora
29-12-2005, 11:01
si ovviamente...
con la fat 16 sei limitato a 4 GB (o 4096 KB se preferisci :D)
inoltre ai tempi ho visto cluster di dimensione MOLTO maggiore ai 4096 bytte...
questo perchè il numero massimo di cluster che si potevano ospitare su un HDD con la FAT 16 era 65536....
Per uqesto si aumentava la dimensione massima dei cluster arrivando fino al limite massimo di 65536 ke portava ad utilizzare lo spazio sul disco fino a 4 GB (65536 * 65536 = 10^16 * 10 ^ 16 = 10 ^ 32)
si ok e allora?
non ho capito dove vuoi arrivare.
le cose che hai detto le sanno tutti.
se un hd è da 4GB o ci metti fat 16 o fat 32 o ntfs sempre da 4GB è.
che poi i cluster occupano di più o di meno è un altro discorso.
non è che siccome formatti a fat16 avrai disponibili 4GB mentre se formatti a ntfs ne avrai 5GB.

cmq non vorrei dire cappellate ma mi pare che con la fat16 il limite massimo era 2GB e non 4.
almeno io ricordavo così.

pietro84
29-12-2005, 12:28
si ok e allora?
non ho capito dove vuoi arrivare.
le cose che hai detto le sanno tutti.
se un hd è da 4GB o ci metti fat 16 o fat 32 o ntfs sempre da 4GB è.
che poi i cluster occupano di più o di meno è un altro discorso.
non è che siccome formatti a fat16 avrai disponibili 4GB mentre se formatti a ntfs ne avrai 5GB.

cmq non vorrei dire cappellate ma mi pare che con la fat16 il limite massimo era 2GB e non 4.
almeno io ricordavo così.

aspetta se ricordo bene il calcolo è semplice....
con la fat16 hai 16bit per indirizzare un blocco(CLUSTER) quindi puoi indirizzare 2^16 blocchi. se prendi blocchi molto grandi 32KB per esempio,puoi indirizzare solo 2GB,quindi una fat16 non può essere usata in maniera efficiente con un hard disk da 4GB.

se prendi una fat32,con cui puoi indirizzare 2^32 blocchi non hai nessun problema.... puoi arrrivare fino all'ordine dei TB

ps:il limite fisico con la fat16 è 2GB perchè è buona norma scelgliere bolcchi di dimensione non superiore a 32KB

^TiGeRShArK^
30-12-2005, 02:18
si ok e allora?
non ho capito dove vuoi arrivare.
le cose che hai detto le sanno tutti.
se un hd è da 4GB o ci metti fat 16 o fat 32 o ntfs sempre da 4GB è.
che poi i cluster occupano di più o di meno è un altro discorso.
non è che siccome formatti a fat16 avrai disponibili 4GB mentre se formatti a ntfs ne avrai 5GB.

cmq non vorrei dire cappellate ma mi pare che con la fat16 il limite massimo era 2GB e non 4.
almeno io ricordavo così.
ecco un semplice articolo che spiega meglio come stanno le cose......
http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/en-us/Default.asp?url=/resources/documentation/Windows/XP/all/reskit/en-us/prkc_fil_tdrn.asp

FAT16 volumes larger than 2 GB are not accessible from computers running MS-DOS, Windows 95, Windows 98, Windows Me, and many other operating systems. This limitation occurs because these operating systems do not support cluster sizes larger than 32 KB, which results in the 2 GB limit.

in pratica il limite è di 2 GB per la fat 16 con quei sistemi operativi poichè si è limitati a 32768 byte come grandezza massima del cluster....
cmq io intendevo proprio dire che utilizzand cluster della dimensione di 32 KB si spreca molto + spazio di cluster con la dimensione di 4 KB...
quindi alla fine con fat 16 si avrà si una dimensione massima di 4 GB ma al prezzo di usare 64KB come dimensione del cluster che è uno spreco non indifferente di spazio su disco...
inoltre stando a quando dice microsoft con FAT 32 sotto win xp professional possono essere formattati fino a 32 GB mentre con ntfs si arriva a 256 terabytes meno 64 KB....

^TiGeRShArK^
30-12-2005, 02:25
ps:il limite fisico con la fat16 è 2GB perchè è buona norma scelgliere bolcchi di dimensione non superiore a 32KB
+ che altro sotto ms-dos windows 95 e 98 non è possibile scegliere dimensioni maggiori....
ma credo che in diversi dispositivi che utilizzano fat 16 ci siano delle dimensioni del cluster pari a 64K....

pietro84
10-01-2006, 11:36
ho dovuto rivedere gli appunti di misure elettroniche proprio qualche ora fa e mi sono ricordato alcuni concetti IT con questo post.

non esistono standard in proposito ma la IEEE (Institute of Electrical and Electronics Engineers) consiglia l'uso della seguente notazione:

1KB=1024B=1024byte (la parola byte non va scritta per esteso)
1kB=1000B

1Kb=1024b=1024 bit
1kb=1000b=1000 bit


quindi K(maiuscola) = 2^10
k(minuscola) =10^3


inoltre non c'è alcuna domostrazione da fare,sono pure convenzioni che si adottano.


edit: per indicare 2^10 si utilizza la K maiuscola proprio per distinguerla dalla k minuscola utilizzata nel sistema internazionale per indicare 10^3.

d@vid
11-01-2006, 19:49
ho dovuto rivedere gli appunti di misure elettroniche proprio qualche ora fa e mi sono ricordato alcuni concetti IT con questo post.

non esistono standard in proposito ma la IEEE (Institute of Electrical and Electronics Engineers) consiglia l'uso della seguente notazione:

1KB=1024B=1024byte (la parola byte non va scritta per esteso)
1kB=1000B

1Kb=1024b=1024 bit
1kb=1000b=1000 bit


quindi K(maiuscola) = 2^10
k(minuscola) =10^3


inoltre non c'è alcuna domostrazione da fare,sono pure convenzioni che si adottano.


edit: per indicare 2^10 si utilizza la K maiuscola proprio per distinguerla dalla k minuscola utilizzata nel sistema internazionale per indicare 10^3.
ok ma con i mega, giga, ...?

nel SI (decimale) 1 M=1 mega=10^6
in informatica (sitema binario) 1 M=1 mega=2^20

pietro84
11-01-2006, 19:55
ok ma con i mega, giga, ...?

nel SI (decimale) 1 M=1 mega=10^6
in informatica (sitema binario) 1 M=1 mega=2^20


coi mega e coi giga l'ambiguità è inevitabile purtroppo,però quando si parla di informatica nel 99% dei casi per 1 M =(1 K)^2=2^20

Morpheus_/_Neo
13-01-2006, 00:04
discussione spassosissima: molto divertente che dei maghi dell'IT si affannino cosi' tanto su una cosa tanto piccola...

facciamo un po' di chiarezza.

allora, come molti hanno detto, in informatica si preferisce, per ragoini di convenienza, usare le potenze di 2 invece che di 10.

semplicemente, a qualcuno a un certo punto nella storia e' tornato utile lavorare con 16, 32, 64, 128,... 1024 byte e si e' deciso di BATTEZZARLI KB

e poi per estensione MB, GB, ecc.

NON c'e' dimostrazione, non perche' sia una cosa straordinaria, ma perche' e' una definizione, e in quanto tale una definizione non si dimostra, SI ASSUME.

inoltre, non e' vero che 1 byte e' sempre formato da 8 bit: se prendete un manuale di C c'e' scritto che il tipo BYTE e' dipendente dalla macchina!!! solo che ormai la maggior parte delle macchine adotta byte da 8 bit. punto e basta, nessuna stranezza.

Infine, dal leggendario Tanenbaum: nel gergo informatico Kb (b minuscola = bit) = 1024 bit [perche' gli informatici amanno le potenze di 2]; nel gergo dei telecomunicazionisti kb = 1000 bit, perche' ai telecomunicazionisti le potenze di 2 non servono e preferiscono non fare gli sboroni e pensare come comuni mortali in potenze di 2

in tutti questi discorsi, la base di numerazione non c'entra nulla!!!

FINE

mithos65
13-01-2006, 10:56
Morpheus scrive:
"inoltre, non è vero che 1 byte è sempre formato da 8 bit: se prendete un manuale di C c'e' scritto che il tipo BYTE e' dipendente dalla macchina!!! solo che ormai la maggior parte delle macchine adotta byte da 8 bit. punto e basta, nessuna stranezza."

Caro Morpheus, se tu solo provassi ad accennare il concetto che racchiudi in queste tue righe durante un esame universitario il prof, come minimo, ti tirerebbe dietro la prima cosa che gli arrivasse a portata di mano (di solito è il registro...e credimi l'ho visto fare in almeno due occasioni, ci sono dei prof molto eccentrici e sensibili a certe affermazioni).

Il byte (e lo ripeto per la tua incolumità universitaria...scherzo ;o)) indica un insieme di OTTO bit, e venne usato, tempo fa, come unità di misura informatica.
L'acronimo è questo: BinarY digiT Eight (binario cifra otto).

Quando parli di manuale C, e quindi di programmazione C, e quindi di macchine e tipo byte, sbagli nell'interpretare lo scritto.
Se una macchina elabora 10 bit alla volta non significa che consideri un byte = 10 bit, ma solo che un pacchetto di 10 bit è l'informazione con cui la macchina gestisce le sue funzioni (potrebbe essere ad esempio che utilizza due bit per lo start e lo stop di un evento e otto bit per il codice evento, e diventa 10 bit = 1 byte + due bit).

Morpheus scrive ancora:
"Infine, dal leggendario Tanenbaum: nel gergo informatico Kb (b minuscola = bit) = 1024 bit [perché gli informatici amano le potenze di 2]; nel gergo dei telecomunicazionisti kb = 1000 bit, perche' ai telecomunicazionisti le potenze di 2 non servono e preferiscono non fare gli sboroni e pensare come comuni mortali in potenze di 2"

Morpheus, non è questione di "amore" o di essere "sboroni"...gli informatici usano le potenze di 2 perché utilizzano il sistema binario che possiede due soli stati, quindi quale miglior sistema di calcolo poteva adattarsi se non le potenze di due ?!? mentre in telecomunicazioni dove i segnali sono per la maggior parte analogici (quindi “continui” e non “discreti” come i segnali digitali) e possibile utilizzare numerazioni e basi diverse.

paditora
13-01-2006, 11:16
Infine, dal leggendario Tanenbaum: nel gergo informatico Kb (b minuscola = bit) = 1024 bit [perche' gli informatici amanno le potenze di 2]; nel gergo dei telecomunicazionisti kb = 1000 bit, perche' ai telecomunicazionisti le potenze di 2 non servono e preferiscono non fare gli sboroni e pensare come comuni mortali in potenze di 2

Cmq in teoria potrebbe essere vero.
Perchè ragioniamo per un secondo in base 2.
Abbiamo:

0
1
10
11
100
101
110
111
1000

Per cui in base 2 il Kilo dovrebbe essere 8 giusto?
Cioè manco io ho capito bene come si arriva a sto 1024.
Perchè non 512, 256 o 64 ad esempio?
Secondo me hanno scelto il 1024 perchè è quello che si avvicina di più al 1000.
Dal dizionario Kilo significa 1000.

paditora
13-01-2006, 11:22
Dal dizionario:

scient. kilo-, primo elemento di parole composte indicanti unità di misura, dal gr. chílioi 'mille' attrav. il fr. kilo; moltiplica per 10^3 (mille) il valore indicato...

Mettiamo il 2 al posto del 10 e abbiamo che il chilo in ambito binario dovrebbe essere 2^3
O sbaglio?

paditora
13-01-2006, 11:24
Morpheus, non è questione di "amore" o di essere "sboroni"...gli informatici usano le potenze di 2 perché utilizzano il sistema binario che possiede due soli stati, quindi quale miglior sistema di calcolo poteva adattarsi se non le potenze di due ?!? mentre in telecomunicazioni dove i segnali sono per la maggior parte analogici (quindi “continui” e non “discreti” come i segnali digitali) e possibile utilizzare numerazioni e basi diverse.
Si ma perchè proprio 1024.
E non chessò 2048 o 512?
Non capisco perchè si sia preso il 1024 per indicare il Kilo.

pietro84
13-01-2006, 11:24
inoltre, non e' vero che 1 byte e' sempre formato da 8 bit: se prendete un manuale di C c'e' scritto che il tipo BYTE e' dipendente dalla macchina!!! solo che ormai la maggior parte delle macchine adotta byte da 8 bit. punto e basta, nessuna stranezza.
FINE


su quale manuale di C l'hai letto? io studiai il C sul Kernighan-Ritchie e non ho mai letto questa affermazione.
semmai ho letto che il mumero di bit impiegati per rappresentare i tipi int,short,float,double.. ecc può essere variabile in alcuni casi.

pietro84
13-01-2006, 11:27
Cmq in teoria potrebbe essere vero.
Perchè ragioniamo per un secondo in base 2.
Abbiamo:

0
1
10
11
100
101
110
111
1000

Per cui in base 2 il Kilo dovrebbe essere 8 giusto?
Cioè manco io ho capito bene come si arriva a sto 1024.
Perchè non 512, 256 o 64 ad esempio?
Secondo me hanno scelto il 1024 perchè è quello che si avvicina di più al 1000.
Dal dizionario Kilo significa 1000.

il Kilo(K maiuscola) è 2^10 , si è stato scelto perchè si avvicina al 1000.

solo che in un sistema digitale non puoi indirizzare mai 1000 elementi,se per un elemento intendi 1B con 10 fili puoi indirizzare 2^10 elementi , con 9 fili 2^9,non ottieni vie di mezzo.

paditora
13-01-2006, 11:31
L'uso corretto delle unità di misura
2^10 kibi Ki kilobinary: (2^10)^1 kilo: (10^3)1
2^20 mebi Mi megabinary: (2^10)^2 mega: (10^3)2
2^30 gibi Gi gigabinary: (2^10)^3 giga: (10^3)^3
2^40 tebi Ti terabinary: (2^10)^4 tera: (10^3)^4
2^50 pebi Pi petabinary: (2^10)^5 peta: (10^3)^5
2^60 exbi Ei exabinary: (2^10)^6 exa: (10^3)^6

2^10 in pratica non sono 10 bit?

0000000000
0000000001
0000000010
0000000011
..
..
1111111111

1024 è il valore in decimale di 1111111111
però i bit sono 10.
boh.
è un casino.

pietro84
13-01-2006, 11:37
2^10 in pratica non sono 10 bit?

0000000000
0000000001
0000000010
0000000011
..
..
1111111111

1024 è il valore in decimale di 1111111111
però i bit sono 10.
boh.
è un casino.


2^10 = 1024 è un numero,non sono bit
questo numero è rappresentabile nel sistema decimale con quattro cifre,nel sistema binario con 10 cifre,in un calcolatore ad ogni cifra binaria è associato un bit.

i bit e i numeri sono due concetti diversi:
il bit misura la quantità di informazione che una certa sorgente contiene,è una unità di misura della quantità di informazione.

ogni cifra binaria contiene 1 bit di informazione.

paditora
13-01-2006, 11:57
2^10 = 1024 è un numero,non sono bit
questo numero è rappresentabile nel sistema decimale con quattro cifre,nel sistema binario con 10 cifre,in un calcolatore ad ogni cifra binaria è associato un bit.

si ma non capisco perchè proprio 1024 bit corrispondono a 1kbit.
secondo me è solo per un fatto di comodità.
perchè se avessero scelto chessò il 512 come kilo sarebbe stato molto più complicato calcolare le potenze successive.
non centra nulla il 1024 col fatto che siamo in base binaria.

paditora
13-01-2006, 12:02
ipotizziamo per assurdo che fossimo invece che in base 2 in base 3.
il kilo quanto sarebbe?
in teoria
3^10 = kilo
3^20 = mega
3^30 = giga
giusto?

ok allora ritorniamo alla base 10
abbiamo

10^10 = kilo
10^20 = mega
10^30 = giga
(mega castroneria dato che kilo, mega e giga sono 10^3, 10^6, 10^9 ecc.)

mpattera
13-01-2006, 12:09
Si ma perchè proprio 1024?
Se era per prendere un numero qualunque si poteva usare 1000 byte = 1KB allora.

perchè poi nell'indirizzare ci sarebbero 24 locazioni di memoria sprecate ogni 1024, dato che si indirizza in binario. con 9 bit si rappresentano 512 combinazioni, con 10 se ne rappresentano 1024, ne vuoi sprecare 24 solo in segno della comodità?

pietro84
13-01-2006, 12:10
si ma non capisco perchè proprio 1024 bit corrispondono a 1kbit.
secondo me è solo per un fatto di comodità.
perchè se avessero scelto chessò il 512 come kilo sarebbe stato molto più complicato calcolare le potenze successive.
non centra nulla il 1024 col fatto che siamo in base binaria.

te l'ho scritto sopra:

[QUOTE=pietro84]
il Kilo(K maiuscola) è 2^10 , si è stato scelto perchè si avvicina al 1000.
solo che in un sistema digitale non puoi indirizzare mai 1000 elementi,se per un elemento intendi 1B con 10 fili puoi indirizzare 2^10 elementi , con 9 fili 2^9,non ottieni vie di mezzo."
[QUOTE]

1024=2^10 , si è scelto il 10 perchè 2^10 si avvicina a 1000

paditora
13-01-2006, 12:24
1024=2^10 , si è scelto il 10 perchè 2^10 si avvicina a 1000
Ecco appunto.
Quindi è solo un fatto convenzionale.
Non centra na sega che siamo in base 2.
Kilo Mega e Giga in realtà hanno un significato diverso.
Kilo = base^3
Mega = base^6
Giga = base^9
ecc.

paditora
13-01-2006, 12:31
Se era per prendere un numero qualunque si poteva usare 1000 byte = 1KB allora.
eeee?
ma dove avrei detto questa cosa?
io ho detto che si è preso il 1024 perchè il più vicino al 1000.
è logico che essendo in base 2 bisognava scegliere un multiplo di 2.
multiplo però non nel senso di 2, 4, 6, 8, 10, 12 ecc.
ma 2, 4, 8, 16, 32, 64 ecc.

pietro84
13-01-2006, 12:38
Ecco appunto.
Quindi è solo un fatto convenzionale.
Non centra na sega che siamo in base 2.
Kilo Mega e Giga in realtà hanno un significato diverso.
Kilo = base^3
Mega = base^6
Giga = base^9
ecc.

no... ce ne frega e come! :D
il fatto è che indicando con 1KB 1000B i calcoli sarebbero statio molto più scomodi,perchè,come ho detto sopra,nei sistemi digitali ogni filo porta un bit di informazione.
quindi se si prende 1B alla volta(può essere un qualsiasi altro elemento) si possono indirizzare solo 2^n byte dove n è il numero di fili usati per l'indirizzamento.
non possiamo costruire ad es una memoria di 1000B perchè per indirizzare tutti i 1000 elementi ci vogliono 10 fili di indirizzo,e quindi si possono indirizzare 2^10 elementi,che sono 1024B,quindi un 1 KB.
non so se sono stato chiaro,la memoria(è uno dei tanti esempi) o si fa di 2^9 elementi o di 2^10 o di 2^11 se non si vuole buttare via spazio inutilmente....sempre per potenze di 2 perchè gli elementi massimi indirizzabili sono potenze di 2.

pietro84
13-01-2006, 12:40
è logico che essendo in base 2 bisognava scegliere un multiplo di 2.

non un multiplo di 2 una potenza di 2 :D
cmq mi sempbra hai capito bene il concetto

paditora
13-01-2006, 12:47
non un multiplo di 2 una potenza di 2 :D
cmq mi sempbra hai capito bene il concetto
vabbè moh non fare il pignolo :D
si cmq intendevo quello.
potenze di 2.

pietro84
13-01-2006, 12:49
vabbè moh non fare il pignolo :D
si cmq intendevo quello.
potenze di 2.


:D :mano:

CONFITEOR
16-01-2006, 10:25
Eppure mi ricordo (e qualche amico conferma, magari ci sbagliamo tutti) che 1 Gb = 1000 Mb... Boh!
non proprio, ma quasi.... :fagiano:

secondo me la dimensione degli hd non è data in miliardi di bytes(10^9),

ma.....UDITE UDITE.... in milioni di kbytes, eccioè 2^10 x 10^6 :stordita:

tu dici:
1 Kb = 1024 byte
1 Mb = 1024 Kb = 1 048 576 Byte
1 Gb = 1000 Mb = 1 048 576 000 (invece di 1 073 741 824)

invece è(per quanto riguarda la misura degli hd)
1 Kb = 1024 byte
1 Mb = 1000 Kb = 1 024 000 Byte
1 Gb = 1000 Mb = 1 024 000 000 (invece di 1 073 741 824)

Quindi la dimensione in gigabytes è data moltiplicando la dimensione dichiarata per 1 024 000 000/1 073 741 824 = 95,37

allora un hd da 80 avrà una capacità di 76,2 gigabyte, che può diminuire ulteriormente a motivo della formattazione.

e tutto questo intruglio secondo me perchè la dimensione dei clusters è data in kbytes(1024)

cioè i fabbricanti di hd computano i clusters in maniera 'corretta', e poi ti dichiarano tot milioni di clusters :fagiano:

Detto ciò aggiungiamo ke Bill Gates è uno stronzo. :read:

Morpheus_/_Neo
18-01-2006, 09:23
Morpheus scrive:
"inoltre, non è vero che 1 byte è sempre formato da 8 bit: se prendete un manuale di C c'e' scritto che il tipo BYTE e' dipendente dalla macchina!!! solo che ormai la maggior parte delle macchine adotta byte da 8 bit. punto e basta, nessuna stranezza."

Caro Morpheus, se tu solo provassi ad accennare il concetto che racchiudi in queste tue righe durante un esame universitario il prof, come minimo, ti tirerebbe dietro la prima cosa che gli arrivasse a portata di mano (di solito è il registro...e credimi l'ho visto fare in almeno due occasioni, ci sono dei prof molto eccentrici e sensibili a certe affermazioni).

Il byte (e lo ripeto per la tua incolumità universitaria...scherzo ;o)) indica un insieme di OTTO bit, e venne usato, tempo fa, come unità di misura informatica.
L'acronimo è questo: BinarY digiT Eight (binario cifra otto).

Quando parli di manuale C, e quindi di programmazione C, e quindi di macchine e tipo byte, sbagli nell'interpretare lo scritto.
Se una macchina elabora 10 bit alla volta non significa che consideri un byte = 10 bit, ma solo che un pacchetto di 10 bit è l'informazione con cui la macchina gestisce le sue funzioni (potrebbe essere ad esempio che utilizza due bit per lo start e lo stop di un evento e otto bit per il codice evento, e diventa 10 bit = 1 byte + due bit).

Morpheus scrive ancora:
"Infine, dal leggendario Tanenbaum: nel gergo informatico Kb (b minuscola = bit) = 1024 bit [perché gli informatici amano le potenze di 2]; nel gergo dei telecomunicazionisti kb = 1000 bit, perche' ai telecomunicazionisti le potenze di 2 non servono e preferiscono non fare gli sboroni e pensare come comuni mortali in potenze di 2"

Morpheus, non è questione di "amore" o di essere "sboroni"...gli informatici usano le potenze di 2 perché utilizzano il sistema binario che possiede due soli stati, quindi quale miglior sistema di calcolo poteva adattarsi se non le potenze di due ?!? mentre in telecomunicazioni dove i segnali sono per la maggior parte analogici (quindi “continui” e non “discreti” come i segnali digitali) e possibile utilizzare numerazioni e basi diverse.





allora, il discorso di amore e sboroni era volutamente ironico, mi spiace che non si sia capito, chiedo scusa a tutti.

ora passiamo al punto dolente, visto che sembro aver dato scandalo.
Ma credo di aver ragione affermando che il byte NON e' sempre di 8 bit.
DIMOSTRAZIONE:
nel sito (direi autorevole) :
http://it.tldp.org/HOWTO/Unix-Internet-Fundamentals-HOWTO-10.html

si legge:
"
Il paragrafo precedente, però, non è completamente corretto, per due ragioni. Quella minore è che il termine `ottetto' è formalmente corretto ma raramente utilizzato; la maggior parte delle persone si riferisce a un ottetto come a un byte e ritiene che i byte siano lunghi otto bit. Per essere corretti, il termine `byte' è più generale; per esempio, ci sono state macchine a 36 bit con byte di 9 bit (anche se probabilmente non capiterà più in futuro).
"

ora non credo che un prof davvero competente mi tirerebbe qualcosa, degli altri prof, meno informati, non mi preoccupo :-)
M_/_N

Morpheus_/_Neo
18-01-2006, 09:52
per quanto riguarda il fatto che i telecomunicazionisti usino segnali analogici o discreti, terrei a precisare il fatto che il termine bit e' utilizzato da essi ANCHE con il significato di unita' di informazione (vedi teoria dell'informazione), ben diverso dal concetto di binary digit usato in informatica. Inoltre le misurazioni di velocita' di un modem qualsiasi si misurano in bit di dati trasmessi, e questa volta si si intende bit = binary digit.

per il resto, 1024 e' 1024 perche' si avvicina a 1000, e basta. E' PURA CONVENZIONE, e le convenzioni sono guidate dalla convenienza e comodita'.
ora i motivi storici non li so, ma sono sicuramente da ricercare nella struttura dell'hardware.
Vi prego, non tirate in ballo calcoli strani con potenze di 10 sostituite da potenze di 2, sono solo fuorvianti.
in base dieci le unita' K,M,G sono 10^3, ^6, ^9
in base 2, K = 2^10, M=2^20, G=2^30

se qualcuno vede una corrispondenza me lo dica...

non c'etra niente che un byte e' di otto bit con il fatto che 1K = 1024 byte, sono discorsi distinti

pensate a una memoria, a livello hardware viene molto comodo usare sistemi che sono prodotti con questa filosofia:
ho costruito una cella minima di 64 byte (per esempio),
ne faccio una piu' grande con 2 moduli piccoli -> 128 byte
idem -> 256 -> 512 -> 1024, eccetera

perche' e' comodo? pensate all'indirizzamento:
per indirizzare 1024 celle serve un indirizzo da 10 bit
ora pensiamo al blocchetto di partenza da 64 byte e immaginiamo che io abbia costruito la circuiteria di accesso a quei 64 byte. tale circuiteria fara' uso di indirizzi a 6 bit.
ora pensiamo al blocco di 256 byte ricavato con 4 blocchetti da 64:
invece di rifare da capo tutta la circuiteria di accesso per farle usare tutti i 256 byte, sfrutto il fatto che gia' possiedo un dispositivo di accesso per ognuno dei 4 blocchetti. allora cosa faccio: collego i 4 dispositivi di accesso ad un super-dispositivo di accesso che interpreta indirizzi da 8 bit (indirizzando potenzialmente tutti i 256 byte). ora quando arriva un indirizzo, il super-dispositivo ne legge i 2 bit piu' significativi selezionando uno dei 4 blocchetti da 64 (infatti 2 bit codificano 4 valori distinti). una volta selezionato un blocco,, ad esso vengono passati gli ultimi 6 bit dell'indirizzo di partenza: sara' ora il dispositivo di accesso locale al blocco che si prendera' l'incarico di accedere al bute corretto (per contestualizzare il tutto pensate ad esempio ai segnali RAS, CAS in una DRAM)

come si vede, questo tipo di struttura annidata e' molto conveniente a livello produttivo, e la facilita' con cui si manipolano le porzioni dell'indirizzo non fa che aumentarne la convenienza. ecco perche' in informatica si ricorre spesso a questi raddoppi o dimezzamenti ed ecco perche' le potenze di 2 sono cosi' comode!

PS: ricordate pero' che questo descrive solo la stragrande maggioranzadelle macchine. esistono macchine molto particolari che lavorano in base 10 invece che in base 2, a causa della necessita' di precisione numerica

mithos65
20-01-2006, 10:49
Morpheus, non c'è bisogno di scuse, figurati. La tua battuta s'era capita, e la mia risposta voleva essere altrettanto ironica.
Ti reputo una persona in gamba, e dai tuoi scritti si denota passione e interesse per la scienza informatica, e questo è degno di rispetto.
L'obbiettivo di un forum è discutere un argomento cercando di arrivare a conclusioni intelligenti (anche se a volte discordanti).

Ho letto con attenzione il tuo intervento, in particolare quando scrivi;
"...per il resto, 1024 e' 1024 perche' si avvicina a 1000, e basta. E' PURA CONVENZIONE, e le convenzioni sono guidate dalla convenienza e comodita'."

queste righe racchiudono la risposta al quesito iniziale di questa discussione, ed è la stessa risposta che anch'io avevo scritto nei miei interventi precedenti.

Speriamo di aver chiarito un poco le idee a coloro che navigando dell'immenso oceano chiamato internet cercassero una risposta al fatidico "1024KB".

ciao, alla prossima discussione