Home » PHP » Operadores bit a bit

Operadores bit a bit

Las operaciones de bit son básicamente operaciones aritméticas realizadas mediante manipulación a nivel de bit. Internamente los datos se almacenan como ceros y unos. PHP no suministra operadores para que podamos trabajar con los datos en su nivel más bajo, es decir, en su representación binaria. Los operandos están limitados a variables enteras, un valor decimal 32 (2 elevado a la quinta potencia) internamente tiene este aspecto:
 
00000000000000000000000000010000
 
O escrito en hexadecimal: 0x20
 
Pero para comprender mejor estos operadores bit a bit es mejor observar la representación binaria.
Los operadores nos permiten activar o desactivar (poner 1 o poner 0, respectivamente) en cada posición de bit de una variable entera. En la siguiente tabla de operadores bit a bit,  se detallan los operadores bit a bit.
librophp001
Veamos los ejemplos y quedarán claras las distintas alternativas:
 
// Operador xOR
$var3 = $var1 ^ $var2;
echo "$var3 <BR>"; // el resultado es 4 (010))

// Operador negación
$var3 = ~$var1;
echo "$var3 <BR>"; // el resultado es -9 (111...011))

// Operador desplazamiento a la izquierda
$var3 = $var1 << 2; // 2 posiciones es como multiplicar por 4
echo "$var3 <BR>"; // el resultado es 32 (10000)

// Operador desplazamiento a la derecha
$var3 = $var1 >> 2; // 2 posiciones es como dividir por 4
echo "$var3 <BR>"; // el resultado es 2 (001)
?>

librophp002

izq sup der

Deja un comentario