Probabilmente ho scoperto l'acqua calda. Quello che segue è il frutto di un mio ragionamento e deduzione (ho usato qualche foglio di carta e una penna per arrivare alla soluzione) e quello che sono riuscito a pensare è una formula sicuramente un po' complessa ma funzionante. Ci tengo a condividerla con voi:
- Codice: Seleziona tutto
=bin2dec(ASS(STRINGA.ESTRAI(dec2bin(X2;8);1;1)-STRINGA.ESTRAI(dec2bin(X3;8);1;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);2;1)-STRINGA.ESTRAI(dec2bin(X3;8);2;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);3;1)-STRINGA.ESTRAI(dec2bin(X3;8);3;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);4;1)-STRINGA.ESTRAI(dec2bin(X3;8);4;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);5;1)-STRINGA.ESTRAI(dec2bin(X3;8);5;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);6;1)-STRINGA.ESTRAI(dec2bin(X3;8);6;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);7;1)-STRINGA.ESTRAI(dec2bin(X3;8);7;1))&ASS(STRINGA.ESTRAI(dec2bin(X2;8);8;1)-STRINGA.ESTRAI(dec2bin(X3;8);8;1)))
Premetto che nelle celle X2 e X3 vanno inseriti dei valori compresi tra 0 e 255.
In pratica la formula trasforma i due valori in stringa binaria a 8 bit, effettua una sottrazione algebrica del bit n. 7 dei due valori, poi del n.6 e così via fino al bit n. 0. Dove si ottiene differenza 0 viene trascritto "0", dove ottengo 1 o -1, trascrivo il valore assoluto "1". Così viene effettuato per tutti gli 8 bit che comporranno il numero binario. Alla fine il tutto viene convertito in un numero in base 10.