ciao,
sto cercando di implementare il calcolo della parità binaria, che manca tra le funzioni di OO.
A dire il vero a OO mancano anche tutte le funzioni di manipolazione a bit.
Quelle poco male, basta implementarle in Basic e funziona.

In ogni caso il calcolo della parità necessita solo di
BITRSHIFT, BITXOR e BITAND.
Dato che l'argomento del mio foglio è decimale, vorrei prima invocare la DEC2BIN nel codice Basic. Googlando ho trovato come fare. Mi funziona ma poi mi da errore quando applico la NOT:

"Inadmissible value or data type. Data type mismatch"

P.S. la print riporta il valore corretto, e se faccio la NOT di val già in binario, tutto funziona.

So che l'errore sarà una cosa banale, sono un completo novellino del Basic, per cui scusate.

Valerio


Function BitNOT (val)
svc = createUnoService ("com.sun.star.sheet.FunctionAccess")
arg1 = array (val, 10)
arg2 = svc.callFunction ("DEC2BIN" , arg1)
print arg2
BitNOT = NOT (arg2)
End Function

Rispondere a