and,or,et xor sont des opérateurs "bits à bits", c'est-à-dire qu'il faut appliquer les règles sur ls bits de même ordre de chaque opérande.
Pour chaque bit tu fais :
0 and 0 = 0
0 and 1 = 0
1 and 0 = 0
1 and 1 = 1
0 or 0 = 0
0 or 1 = 1
1 or 0 = 1
1 or 1 = 1
0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0
Mais ça n'empêche pas de travailler avec des entiers. Il faut simplement garder à l'esprit que les opérations sont au niveau du bit. Par exemple (en représentation Intel) quand tu fais :
12 OR 7 <==> 1100 OR 0111 = 1111
12 AND 7 <==> 1100 AND 0111 = 0100
12 XOR 7 <==> 1100 XOR 0111 = 1011
Pour not, tu obtiens tous les bits inversés.
not 12 <==> not 1100 = 0011
not 7 <==> not 0111 = 1000
Pour neg, ca dépend du processeur. Ca transforme un nombre en son opposé. neg 12 = -12
neg -7 = 7
Mais la représentation en binaire des nombres négatifs varie suivant le processeur.
bistou
merci...
barbarella
slt,
Overflow s'active lors du dépassement de capacité d'un registre
ce flag est utuile pour des instrcution comme la multiplication
Carry : c'est le flag de retenu, lors d'opération d'addition ou de soustraction.
bistou
quelqu'un pourrait me dire ce que signifie (pour les calcules binnaires :
overflowflag et carryflag
et comment fonctionne ces operateur logiques:
and,or,xor,not,neg
Vous connaissez peut etre un site en français qui explique ça???
merci d'avance.