OVH Cloud OVH Cloud

Formule AND bit à bit

4 réponses
Avatar
Michel NOLF
Bonjour tout le monde
En fouillant sur le net, j'ai trouvé des formules pouvant faire un OR ou un
AND,etc bit à bit à cette adresse:
http://www.mcgimpsey.com/excel/bitwise.html
Par contre un nom <Bits> est défini dans la feuille comme
"=2^(16-ROW(INDIRECT("1:16")))". Je ne comprend pas comment opére ce nom.
Il y a certainement des cracks parmi vous, susceptibles de me l'expliquer
Merci d'avance

4 réponses

Avatar
AV
Par contre un nom <Bits> est défini dans la feuille comme
"=2^(16-ROW(INDIRECT("1:16")))". Je ne comprend pas comment opére ce nom.


Avec XL français :
=2^(16-LIGNE(INDIRECT("1:16")))
Il s'agit de la définition d'une matrice de constantes que tu peux "voir" en
allant dans la barre de formule et en sélectionnant toute la formule puis >> F9
Résultat :
32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1

AV

Avatar
Michel NOLF
Merci beaucoup. Je mourrais moins c..
fichier exemple dans le lien
http://cjoint.com/?eCpQcD0QWP
Merci encore
Amicalement michel

"AV" a écrit dans le message de news:
ucx0SM$
Par contre un nom <Bits> est défini dans la feuille comme
"=2^(16-ROW(INDIRECT("1:16")))". Je ne comprend pas comment opére ce nom.


Avec XL français :
=2^(16-LIGNE(INDIRECT("1:16")))
Il s'agit de la définition d'une matrice de constantes que tu peux "voir"
en
allant dans la barre de formule et en sélectionnant toute la formule puis
F9
Résultat :


32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1

AV






Avatar
MichDenis
Bonjour Michel,

Comme il s'agit de transformer par formule une information binaire en décimale, je me permets un petit rappel spécialement pour JPS.
Ça aide à comprendre les formules !

En binaire En décimal
1 1 1 1 15

A ) En binaire, chaque position peut prendre 2 valeurs 0 ou 1
B ) En débutant par l'extrème droite, il faut identifier la position de chaque "digit" en débutant par zéro
C ) La Valeur respective de chaque digit à sa position

La formule est donc :

2 (Possibilités) ^ Position du digit * La valeur du digit à cette position

A ^ B * C

2 ^ 0 * 1 = 1 = Premier digit à partir de la droite
2 ^ 1 * 1 = 2 = deuxième
2 ^ 2 * 1 = 4 = troisième
2 ^ 3 * 1 = 8 = quatrième

Pour obtenir la valeur décimale, il s'agit d'aditionner : 1 + 2 + 4 + 8 = 15



Salutations!



"Michel NOLF" a écrit dans le message de news: %236ZQQq%
Bonjour tout le monde
En fouillant sur le net, j'ai trouvé des formules pouvant faire un OR ou un
AND,etc bit à bit à cette adresse:
http://www.mcgimpsey.com/excel/bitwise.html
Par contre un nom <Bits> est défini dans la feuille comme
"=2^(16-ROW(INDIRECT("1:16")))". Je ne comprend pas comment opére ce nom.
Il y a certainement des cracks parmi vous, susceptibles de me l'expliquer
Merci d'avance
Avatar
Michel NOLF
Tout à fait exact.
Ces formules m'interessent car elles permettent de récupérer de maniere
adaptée le status word de certaines applications en utilisant AND ou OR
suivant le cas positionner ou lire
Merci encore

"MichDenis" a écrit dans le message de news:
uA%23nly$
Bonjour Michel,

Comme il s'agit de transformer par formule une information binaire en
décimale, je me permets un petit rappel spécialement pour JPS.
Ça aide à comprendre les formules !

En binaire En décimal
1 1 1 1 15

A ) En binaire, chaque position peut prendre 2 valeurs 0 ou 1
B ) En débutant par l'extrème droite, il faut identifier la position de
chaque "digit" en débutant par zéro
C ) La Valeur respective de chaque digit à sa position

La formule est donc :

2 (Possibilités) ^ Position du digit * La valeur du digit à cette
position

A ^ B * C

2 ^ 0 * 1 = 1 = Premier digit à partir de la droite
2 ^ 1 * 1 = 2 = deuxième
2 ^ 2 * 1 = 4 = troisième
2 ^ 3 * 1 = 8 = quatrième

Pour obtenir la valeur décimale, il s'agit d'aditionner : 1 + 2 + 4 + 8 =
15



Salutations!



"Michel NOLF" a écrit dans le message de
news: %236ZQQq%
Bonjour tout le monde
En fouillant sur le net, j'ai trouvé des formules pouvant faire un OR ou
un
AND,etc bit à bit à cette adresse:
http://www.mcgimpsey.com/excel/bitwise.html
Par contre un nom <Bits> est défini dans la feuille comme
"=2^(16-ROW(INDIRECT("1:16")))". Je ne comprend pas comment opére ce nom.
Il y a certainement des cracks parmi vous, susceptibles de me l'expliquer
Merci d'avance