Décodage formule de calcul ! Votre aide, svp

Elody -  
terro3 Messages postés 64 Statut Membre -
Salut,

ma question est la suivante :
que signifie EN FRANCAIS la formule suivante qui permet de calculer C ?
les variables A, B et V étant des nombres hexadécimaux

C = [not(B) and #A3A3A3A3] xor [#21 * A + int(A / 8)] xor V

Cela peut vous paraître élémentaire comme problème, sorry ! Mais je ne suis pas encore une geek de l'informatique et ne comprends pas cette formule et donc impossible de la traduire sous excel.
Merci de votre précieuse aide.
Elody
A voir également:

4 réponses

terro3 Messages postés 64 Statut Membre 13
 
hum les XOR et les not sont de l'algebre booleene, tu es sur que ce sont des nombres en hexa? ou as tu péché ta formule...?

Si ca peut t'aider le not(B) renvoi True quand B vaut False et inversement
le A Xor B , vaut false si A et B on la meme valeur (true or false) et true s'ils en ont des differentes.
le and ca devrait aller et le + ve dire OU.
Encore une fois je reflechis en algebre de bool car je n'ai jamais vu de xor avec de l'hexa.... Je peux me tromper!
0
Elody
 
effectivement, je dois convertir mes hexa en binaire. dans mon cas, cela me parait evident.

Pour XOR, c'est pigé,

mais pour la partie centrale de la formule : [#21 * A + int(A / 8)]

#21 doit etre de l'hexa ; à quoi peut correspondre le symbole #

int doit signifier partie entière je suppose

mais int (A/8) ( en posant A nombre binaire) ça va me donner quoi ???
diviser un nombre binaire par 8 ???
0
terro3 Messages postés 64 Statut Membre 13
 
ton int( A/8) c'est que tu cast ton resultat en integer (autrement dit un entier). mais meme si tu convertis ton hexa en binaire, ca vaudra 00111001010011010 (par exemple), donc encore trop de nombre (tres loin du boolen). diviser un nombre binaire par 8 c'est decaler la virgule vers la gauche éais encore la c'est tres loin du bool.

pour le # une petite recherche sur google t'aidera surement :)
0
Elody
 
merci Terro, je continue ma recherche !
Elody
0
terro3 Messages postés 64 Statut Membre 13
 
ok donc apres avoir regardé vite fait je pense que les XOR et NOT (ainsi que les or et and) s'effectuent bit a bit pour 2 nombres binaires (et donc par la pour des hexa c'est possible). du coup 01101 XOR 01001 vaut 00100. ca doit pouvoir se faire suivant les tables de verité des differentes fonctions pour des hexa de meme longueurs. et a la fin ce te fait un autre hexa :) reste a fixer tes conditions sur les variables. pour le # ca doit etre un cast en binaire ou hexa (je ne sais pas trop). par contre pour programmer ca excel je ne peux pas t'aider vu que mon niveau dans ce programme est nul.

bonne chance :)
0