AND &&

Operador binario del producto lógico utilizado en expresiones y condiciones.

La palabra reservada AND y el símbolo && son sinónimos.

AND lógico: Se evalúan, primero, las condiciones de la derecha e izquierda del operador y, si ambas son ciertas, este operador devolverá cierto, en caso contrario el operador devolverá siempre falso.

  FALSO AND FALSO = FALSO
  FALSO AND CIERTO = FALSO
  CIERTO AND FALSO = FALSO
  CIERTO AND CIERTO = CIERTO

Se utiliza para comprobar que se cumplan obligatoriamente más de una condición, por ejemplo:

  (x>0 AND x<100)

Para comprobar que la variable sea mayor que 0 Y que sea menor que 100.

AND binario: Evalúa los bit de los resultados de las expresiones anterior y posterior al operador generando, como resultado, un valor que tendrá a uno únicamente los bit que tuvieran a uno ambas expresiones.

  0 AND 0 = 0
  0 AND 1 = 0
  1 AND 0 = 0
  1 AND 1 = 1

Esta regla se aplicará a todos los bits de los operandos (en el lenguaje son enteros de 32 bits).


Nota: Este operador funciona indistintamente como lógico y binario debido a que en el lenguaje se interpretan las expresiones lógicas ciertas como las que tienen el último bit a 1 (el bit 0, de peso 1), es decir, los números impares (1, -1, 3, -3, ... ), y como expresiones lógicas falsas las que tienen el último bit a 0 (los números pares: 0, 2, -2, 4, -4, ...).

El operador AND únicamente dejará a 1 el último bit (sólo devolverá cierto como resultado} cuando lo tuvieran a 1 ambos operandos (cuando los dos fueran expresiones ciertas).


Nota: El símbolo & también puede utlizarse como un sinónimo más de AND y &&.


Ver: Sintaxis - Expresión - Condición