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 originalvar num = 73;
console.log(73.toString(2));
num = -73;
console.log(73.toString(2));
En el otro caso el operador ~ esta realizando el calculo de esta funcion
-(x + 1) devolviendo entonces esto
Al realizar el calculo veras que te dara lo mismo
Saludos