Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Comprimere 4 byte in 1 byte

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[21] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto Utentealdofad » 11 mag 2015, 0:40

Altra confusione tra hashing e compressione, il primo non garantisce l'univocita'
Avatar utente
Foto Utentealdofad
853 4 5
Sostenitore
Sostenitore
 
Messaggi: 689
Iscritto il: 21 gen 2014, 1:07
Località: Treviso

2
voti

[22] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto UtenteIsidoroKZ » 11 mag 2015, 0:41

4 byte per descrivere un numero vuol dire che ne puoi avere piu` di 4 miliardi. Un byte per lo hash vuol dire che al piu` hai 256 combinazioni.

Supponi di avere tanti granelli di riso, ciascuno rappresenta uno dei diversi codici rappresentati su 4 byte, e 256 contenitori per tenere il riso. Se hai piu` di 257 granelli ci sara` di sicuro un contenitore che ne contiene almeno due, e quindi con 257 parole di 4 byte, QUALUNQUE SIA L'ALGORITMO, avrai almeno due hash uguali.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
121,2k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 21059
Iscritto il: 17 ott 2009, 0:00

0
voti

[23] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto Utentedaniele1996 » 11 mag 2015, 0:47

hai ragione, meglio usare i i block-value con magari una eeprom esterna se non mi basta. la sicurezza prima di tutto! mi è venuta in mente poco prima che scrivevi questa situazioni delle combinazioni... in sostanza usando 4 byte si hanno meno probabilità di avere un tag con lo stesso valore al posto di usare solo 1 byte. Grazie comunque di tutto :)
Avatar utente
Foto Utentedaniele1996
610 3 8 11
Sostenitore
Sostenitore
 
Messaggi: 1554
Iscritto il: 29 ago 2011, 11:29

4
voti

[24] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto Utentefairyvilje » 11 mag 2015, 1:50

Aggiungo una nota. Gli algoritmi di hashing funzionano sul principio che l'oggetto da comprimere esiste in uno spazio "naturale" molto più grande di quello degli oggetti ammissibili.
Un caso tipico sono i testi in linguaggio naturale, dove, dato un alfabeto, le possibili k-stringhe di senso compiuto sono molte meno rispetto a tutte le possibili k-stringhe. In questo caso si può costruire una relazione fra un insieme grande. In base a come questa relazione è definita si sta costruendo un algoritmo di compressione lossy/loss-less o un digest.
In questo ultimo caso la speranza è che non si verifichino troppe collisioni.

Il problema è che tu non hai a che fare con un insieme di dati "rarefatto" ma numeri seriali, il cui dominio occupa tutto lo spazio naturale di definizione. La compressione è quindi impossibile perché determinerà sempre una perdita di informazione, indipendentemente dal codice che scegli :). Idem per le collisioni.

Nota che la principale differenza fra un algoritmo di compressione con perdita e un digester sono le specifiche di reversibilità.
"640K ought to be enough for anybody" Bill Gates (?) 1981
Qualcosa non ha funzionato...

Lo sapete che l'arroganza in informatica si misura in nanodijkstra? :D
Avatar utente
Foto Utentefairyvilje
15,0k 4 9 12
G.Master EY
G.Master EY
 
Messaggi: 3047
Iscritto il: 24 gen 2012, 19:23

1
voti

[25] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto UtenteGionatan » 16 mag 2015, 9:16

Se il micro che usi lo permette, puoi memorizzare i dati oltre che sulla eeprom anche sulla flash.
Inoltre, a secondo il tipo di micro, puoi memorizzare due byte in ogni word della flash in modo da dimezzare lo spazio occupato.
Avatar utente
Foto UtenteGionatan
5 1
 
Messaggi: 3
Iscritto il: 12 mag 2015, 16:26

0
voti

[26] Re: Comprimere 4 byte in 1 byte

Messaggioda Foto Utentedaniele1996 » 20 mag 2015, 22:43

Grazie per il consiglio, ma ho optato per una eeprom esterna: SST25VF016B
Avatar utente
Foto Utentedaniele1996
610 3 8 11
Sostenitore
Sostenitore
 
Messaggi: 1554
Iscritto il: 29 ago 2011, 11:29

Precedente

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti