Diferencia entre revisiones de «or bit a bit»
De ArduWiki
(→Referencias) |
(→Ejemplo) |
||
Línea 31: | Línea 31: | ||
== Ejemplo == | == Ejemplo == | ||
− | < | + | <syntaxhighlight lang="c++"> |
byte var = 1; | byte var = 1; | ||
− | var |= B00000110; // Ahora var vale 7 debido a que establecí esos bits | + | var |= B00000110; //Ahora var vale 7 debido a que establecí esos bits |
− | </ | + | </syntaxhighlight> |
== Vea también == | == Vea también == |
Revisión del 23:05 14 jun 2019
Descripción
El operador binario OR bit a bit es representado por el carácter barra |. OR establece (pone en 1) un bit sí y solo si el bit de esa posición está establecido (en 1) en al menos uno de los operandos.
a | b | a | b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Nota: Esta operación también es usada para establecer (poner en uno) uno o varios bits específicos en una variable. Todo bit en 1 en el segundo operando, se establecerá; mientras que todo bit en cero se se quedará como está.
Sintaxis
op1 | op2
- op1
- primer operando, es la variable (de cualquier tipo) a modificar.
- op2
- segundo operando, es quien va a relizar las modificaciones pertinentes.
Retorno
El valor resultante, donde cada bit se establece sólo si lo está en al menos uno de los operandos.
Advertencias
- No confundir este operador OR bit a bit | con el boleano or ||
- Idealmente ambos operandos deberían ser del mismo tipo (tamaño); en caso de no ser así, solo se operará con los bytes menos significativos del más grande.
Ejemplo
byte var = 1;
var |= B00000110; //Ahora var vale 7 debido a que establecí esos bits
Vea también
- not (!)
- and (&&)
- or (||)
- not bit a bit (~)
- and bit a bit (&)
- xor bit a bit (^)
- bitshift right (>>)
- bitshift left (<<)