Reference   Language (extended) | Libraries | Comparison | Changes

Operadores bit a bit compuestos: AND (&=) y OR (|=)

Los operadores bit a bit compuestos realizan sus calculos a nivel de bit de las variables. Son usados, normalmente, para fijar un valor a bits específicos de una variable.

Lee las explicaciones de los operadores AND (&) y OR (|) para conseguir más detalles de como operan. Lee también el Tutorial de matemática lógica(en inglés) para más información acerca de los operadores bit a bit.

Operador compuesto AND (&=)

Descripción

Este operador compuesto es usado, generalmente, con una varible y una constante, para forzar el valor de un bit (o bits) concreto a un nivel bajo (LOW). Esto es conocido entre los programadores como limpiado o reseteo de bits.

Sintaxis:

x &= y;   // es equivalente a x= x & y; 

Parámetros

x: una variable (char, int o long). y: una constante entera o variable (char, int o long).

Note: because we are dealing with bits in a bitwise operator - it is convenient to use the binary formatter with constants. The numbers are still the same value in other representations, they are just not as easy to understand. Also, B00000000 is shown for clarity, but zero in any number format is zero (hmmm something philosophical there?)

Ejemplo:

myByte =  10101010;

myByte &= B1111100; // myByte ahora vale B10101000

Operador compuesto OR (|=0)

Descripción

Este operador compuesto se usa, normalmente, para asignar el valor alto (HIGH, 1) a un bit (o varios) dentro de una variable.

Sintaxis:

x |= y;   // equivale a x = x | y; 

Parámetros

x: una variable tipo char, int o long . y: una constante o variable tipo char, int o long.

Ejemplo:

myByte =  B10101010;

myByte |= B00000011; //Ahora myByte vale B10101011

Ver también

Página principal Referencia

Correcciones, sugerencias, y nueva documentación deberán ser publicadas en el Foro (castellano) o en el Foro (inglés).

El texto de la referencia de Arduino está publicado bajo la licencia Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0. Los ejemplos de código de la referencia están liberados al dominio público.

Share