Diferencia entre revisiones de «and bit a bit»

De ArduWiki
Saltar a: navegación, buscar
(Referencias externas)
 
(No se muestran 8 ediciones intermedias de 2 usuarios)
Línea 27: Línea 27:
  
 
== Advertencias ==
 
== Advertencias ==
* No confundir el '''operador bit a bit and''' con el boleano [[and]] <nowiki>&&</nowiki>
+
* No confundir el '''operador bit a bit and''' (&) con el boleano [[and]] ('''<nowiki>&&</nowiki>''').
* Idealmente ambos operandos deberían ser del mismo tipo (tamaño); en caso de no ser así, se podrían borrar bits si el segundo es el más pequeño.
+
* 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 segundo, o se podrían borrar bits si este es el más pequeño.
  
 
== Ejemplo ==
 
== Ejemplo ==
<pre>
+
<syntaxhighlight lang="c++">
 
char n = -64;
 
char n = -64;
n &= B01111111; // Con esto lo acabo de convertir en positivo; mientras que los demás bits no me interesan, por eso no los toco.
+
n &= B01111111;   //Con esto lo acabo de convertir en positivo; mientras que los demás bits no me interesan, por eso no los toco.
</pre>
+
</syntaxhighlight>
  
 
== Vea también ==
 
== Vea también ==
* [[and]]
+
<categorytree mode=all>Operador bit a bit</categorytree>
* [[or]]
+
<categorytree mode=all>Operador logico</categorytree>
* [[not bit a bit]]
+
<categorytree mode=all>Funciones bit y byte</categorytree>
* [[or bit a bit]]
 
  
== Referencias ==
+
== Referencias externas ==
 
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino]
 
* [https://www.arduino.cc/reference/es/language/functions/time/millis/ Guia de referencia de Arduino]
 +
* [https://playground.arduino.cc/Code/BitMath/#bitwise_and Bitwise AND] - Playground
  
[[Category:Estructura]]
+
[[Category:Operador bit a bit]]

Revisión actual del 23:27 26 sep 2019

Descripción

El operador binario bit a bit AND es representado por el caracter et (ampersand) &. AND establece (pone en 1) un bit sí y solo si el bit de esa posición está establecido (en 1) en ambos operandos.

a b a & b
0 0 0
1 0 0
0 1 0
1 1 1

Nota: esta operación también es utilizada para borrar (poner en cero) uno o varios bits específicos en una variable. Todo bit en 1 en el segundo operando, se quedará como está; mientras que todo bit en cero se borrará


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 ambos operandos.

Advertencias

  • No confundir el operador bit a bit and (&) con el boleano and (&&).
  • 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 segundo, o se podrían borrar bits si este es el más pequeño.

Ejemplo

char n = -64;
n &= B01111111;    //Con esto lo acabo de convertir en positivo; mientras que los demás bits no me interesan, por eso no los toco.

Vea también

  and
  not
  or
  xor


Referencias externas