Operadores para manejo de bits

Exixten seis operadores para manejo de bits:

1. & AND de bits

2. | OR inclusivo de bits

3. ^ OR exclusivo de bits

4. << corrimiento a la izquierda

5. >> corrimineto a la derecha

6. ~ complemento a uno (unario)

AND (&)

La funci�n “AND” activa los bits resultantes cuando los bits de los dos operandos son 1, de otra forma el resultado es =. Entonces si se coloca en l�nea los dos operandos y se realiza la funci�n “AND”, se puede ver que los dos bits de mayor peso (los bits situados m�s a la izquierda de cada n�mero) son 1, as� los bits resultantes de cada uno es 1. Los dos bits de menor peso se eval�n a 0 porque al menos uno de los dos operandos es 0:

    1101

& 1100


    1100

OR

La operaci�n OR inclusiva (|) significa que si uno de los dos operandos es 1 el resultado es 1.

Tabla 6–1. Ejemplo de OR inclusivo Operador1 Operador2 Resultado 0 0 0 0 1 1 1 0 1 1 1 1

El OR exclusivo significa que si los dos operandos son diferentes el resultado es 1, de otra forma es resultado es 0

Tabla 6–2. Ejemplo de OR exclusivo Operador1 Operador2 Resultado 0 0 0 0 1 1 1 0 1 1 1 0 Corrimiento de bits

Tanto el operador de corrimiento a la izquierda («) como el operador de corrimiento a la derecha (»), solo desplazan los bits del operando de la izquierda el n�mero de posiciones indicadas por el operador de la derecha. Los desplazamientos ocurren en la direcci�n indicada por el propio operador. Por ejemplo

13 >> 1

desplaza los bits del entero 13 una posici�n a la derecha as�:

13 = 1101

1101 >> 1 = 0110

0110 = 6

Complemento a uno

El operador unario “~” da el complemento a uno de un entero; esto es, convierte cada bit 1 en un bir 0 y viceversa. Por ejemplo

Tabla 6–3. Complemento a Uno Operador Resultado 1 0 0 1a


Google