Convertitore del complemento a due
Converti un numero intero nel suo pattern di bit di complemento a due con la larghezza prescelta, o decodifica i bit per ottenere un numero.
Convertitore del complemento a due
I computer memorizzano numeri negativi utilizzando il complemento a due, non un semplice segno meno — lo stesso pattern di bit rappresenta un valore diverso a seconda che venga letto come numero con segno o senza segno. Questo strumento converte in entrambe le direzioni: digita un numero intero per riga e produce il pattern di bit di complemento a due corrispondente alla larghezza scelta, o cambia direzione e incolla i pattern di bit per ottenere il valore decimale con segno (o senza segno) che ciascuno rappresenta.
Scegli una larghezza di bit di 8, 16, 32 o 64 e un formato di output binario o esadecimale. L'opzione "Con segno" controlla come viene interpretato un valore: quando è attivata, un pattern di bit viene letto come complemento a due (quindi il bit superiore significa negativo) e un numero deve rientrare nell'intervallo con segno per quella larghezza; quando è disattivata, entrambe le direzioni trattano gli stessi bit come un ordinario numero intero senza segno. Alternare la direzione scambia la codifica per la decodifica senza perdere l'input, quindi verificare una conversione andata e ritorno è un solo clic.
L'overflow è il punto in cui il complemento a due diventa confuso, quindi questo strumento lo rende visibile invece di nasconderlo: un numero al di fuori dell'intervallo di larghezza scelto si avvolge comunque nel modo in cui lo fa l'hardware reale — questo avvolgimento è il pattern di complemento a due corretto, non un bug — ma le righe interessate sono anche contrassegnate e conteggiate nel riepilogo, quindi un overflow involontario in un lotto di valori non passa inosservato. Disattiva questo contrassegno se stai deliberatamente esplorando il comportamento di avvolgimento e non desideri che venga indicato.
Incolla un'intera colonna di numeri o pattern di bit in una volta; ogni riga viene convertita indipendentemente e le righe vuote vengono preservate in modo che il risultato rimanga allineato con l'input. Tutto viene eseguito localmente nel tuo browser — nulla che inclli, incluse costanti proprietarie o valori del firmware, viene mai caricato da nessuna parte.