Diferencia entre revisiones de «or bit a bit»

De ArduWiki
Saltar a: navegación, buscar
(Referencias)
(Ejemplo)
Línea 31: Línea 31:
  
 
== Ejemplo ==
 
== Ejemplo ==
<pre>
+
<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
</pre>
+
</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

Referencias