1.5Manejo de bits



Operadores para manejo de bits

Existen 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) >> corrimiento 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 mas a la izquierda de cada numero) son 1, así los bits resultantes de cada uno es 1. Los dos bits de menor peso se evalúan a 0 porque al menos uno de los dos operandos en 0 

1101
& 1100
1100

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

0 0 0
0 1 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

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 numero 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 bit 0 y viceversa. Por ejemplo

Operador Resultado

1 0
0 1

No hay comentarios:

Publicar un comentario