Opérations bit à bit

Les entiers Common Lisp sont codés en utilisant la repésentation binaire en complément à 2. On peut voir un entier comme une suite infinie de bits. Si le nombre est positif, le nombre est précédé d'une suite infinie de bits 0 et s'il est négatif, d'une suite infinie de bits 1. Voici les fonctions qui exploitent cette représentation :

nom fonction
logand et entre les arguments
logandc1 et entre complément du premier et deuxième argument
loganc2 et entre premier argument et complément du deuxième
logeql équivalence entre les arguments
logior ou inclusif entre les deux arguments
lognand complément du et entre les arguments
lognor complément du ou inclusif entre les arguments
lognot complément de l'argument
logorc1 ou inclusif entre complément du premier et deuxième argument
logorc2 ou inclusif entre premier argument et complément du deuxième
logxor ou exclusif entre les arguments
logbitp vrai si un bit est 1 dans l'argument
logcount nombre de bits à 1 ou à 0 dans l'argument
logtest vrai si des bits sont à 1

Irene DURAND
2011-10-14