ho notato che facendo il complemento a 2 di un numero binario, il risultato era l'opposto dopo aver incontrato 1

Es.

01010 //Numero binario
10101 //Complemento a 1 (cambio di numeri)
10110 //Complemento a 2

Se notate il risultato è l'opposto dei numeri dopo aver incontrato 1

Era questo il mio intento

Quando cambia=1 vuol dire che ha già incontrato 1 se 0 ancora no.

Spero abbiate capito