Codifica e decodifica esadecimale
Ciao ragazzi, mi chiamo Andrea e sebbene non abbia mai avuto altissimi voti in matematica, ne sono comunque un grande appassionato. Il fatto di non aver avuto altissimi voti probabilmente lo potrete riscontrare dalla domanda che vengo a porvi, e che spero possa trovare qui una risposta (mi scuso per eventuali errori di offtopic etc.).
Poniamo di avere tre coppie di valori esadecimali (es. 3c 3f 78), esiste un'operazione per cui sia possibile avere come risultato una sola coppia (anche di tre cifre o quattro) e che permetta successivamente di risalire esattamente alle tre originali? Una sorta di compressione basata solo sui tre valori esadecimali.
Spero di essere stato chiaro e di non star facendo una figura pessima.
Saluti e grazie,
Andrea.
Poniamo di avere tre coppie di valori esadecimali (es. 3c 3f 78), esiste un'operazione per cui sia possibile avere come risultato una sola coppia (anche di tre cifre o quattro) e che permetta successivamente di risalire esattamente alle tre originali? Una sorta di compressione basata solo sui tre valori esadecimali.
Spero di essere stato chiaro e di non star facendo una figura pessima.
Saluti e grazie,
Andrea.
Risposte
Le possibili 3 coppie di valori esadecimali sono (16^2)^3 = 2^24 = 16777216.
Non ci possono essere 2 combinazioni che abbiano la stessa codifica, perciò le possibili codifiche non possono essere meno di quante sono le possibili 3 coppie di valori esadecimali.
Non ci possono essere 2 combinazioni che abbiano la stessa codifica, perciò le possibili codifiche non possono essere meno di quante sono le possibili 3 coppie di valori esadecimali.
Ovviamente è possibile farlo se si ammettono numeri con 3 cifre. Un esempio è quello in cui costruisci le coppie di numeri attraverso un "riordino" di quelle dei tre numeri. Ad esempio:
3c 3f 78 -> 3c3 f78
3c 3f 78 -> 3c3 f78