23/02/2009, 15:11
|
| | Fecha de Ingreso: enero-2009
Mensajes: 67
Antigüedad: 16 años 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 :) |