Page 2 sur 2

Re: Petite astuce pour inverser une valeur booléenne.

Publié : mer. 03/juil./2019 9:13
par Zorro

Code : Tout sélectionner

flag = flag ! 1 
pourquoi t'embeter avec du binaire ?

Re: Petite astuce pour inverser une valeur booléenne.

Publié : mer. 03/juil./2019 10:40
par microdevweb
Vieille habitude pour les microcontrôleurs en c je fait mes masques en hexa et la j'ai pas réfléchi. Mais tu as tout à fait raison :roll:

Voici donc la meilleur solution

Code : Tout sélectionner

; MEILLEUR SOLUTION
flag.b = #False
Debug flag ;0
flag = flag ! 1
Debug flag ;1
flag = flag ! 1
Debug flag ;0

;EXPLICATION 
; EN BINAIRE 
;FLAG = 00000000  si #FALSE
;FLAG = 00000001  si #TRUE
; 1   = 00000001
; ********************************
; TABLE DE VERITE XOR
; ********************************
; 0 0 -> 0
; 0 1 -> 1
; 1 0 -> 1
; 1 1 -> 0
; *********************************
; DONC
; *********************************
; 00000000 ! 00000001 -> retourne 1
; 00000001 ! 00000001 -> retourne 0
;
; Ce qui est exactement se que l'on voulait