Ver Mensaje Individual
  #6 (permalink)  
Antiguo 23/02/2009, 15:11
AlvaradoGunner
 
Fecha de Ingreso: enero-2009
Mensajes: 67
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Que hace este código?

Hola bueno, lo que puedo ver a simple vista es que usa corrimiento de bits despues compara el numero que diste con un numero nuevo que salio apartir del corrimiento de bits y usa el operador AND, que es una tabla de verdad de bits:

1 1 1
1 0 0
0 1 0
0 0 0
Donde ves el opderador "&" es que los compara para crear de ahi un hilo de bits
Ejemplo:

10 & 01= 00
11 &10 = 10

Si te fijas siempre que los dos bits esten encendidos ( osea sean 1) dara como resultado un bit encendido (1), encambio si los bits son diferentes, dara un resultado 0(bit apagado).

Ah, me olvidaba donde ves el operador << es que tu tienes un hilo de bits por ejemplo 000000101010, el operador << n indica que ese hilo se movera n posiciones a la izquierda y donde habia bits antes de correrlos se agregaran ceros: Ejemplo:

000000101010 << 2 (Se mueve 2 bits a la izquierda 000010101000 y si lo cambias a decimal, el segundo numero es mayor.

otros operadores de corrimiento: (<< >> >>>)

Espero verte ayudado :)