Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/09/2012, 11:56
Avatar de Dradi7
Dradi7
 
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 9 meses
Puntos: 220
Respuesta: Operación lógicas con signos negativos (bit a bit)

Cita:
Iniciado por Dradi7 Ver Mensaje
Se sobreentiende que se esta realizando operaciones bit a bit, en la primera parte del CASO 1 el signo menos influye bastante porque al tratar de convertir 73 a bits es muy diferente que convertir -73 a bits puedes tu mismo realizar la prueba

Código Javascript:
Ver original
  1. var num = 73;
  2. console.log(73.toString(2));
  3. num = -73;
  4. console.log(73.toString(2));

En el otro caso el operador ~ esta realizando el calculo de esta funcion -(x + 1) devolviendo entonces esto

Código Javascript:
Ver original
  1. -74&255

Al realizar el calculo veras que te dara lo mismo

Saludos
Pero te acabo de explicar como funciona mira en tu primer ejemplo es así

-73&255

el segundo ejemplo

~73&255 pero como esta con el operador debe realizar este calculo -(x+1) entonces al final te va a quedar

-74&255 la cual es diferente que el CASO 1 entonces por logica se entiende que los resultados son diferentes
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones