logo

Differenza tra la rappresentazione del complemento a 1 e la tecnica di rappresentazione del complemento a 2

Prerequisito – Rappresentazione dei Numeri Binari Negativi

complemento di 1 di un numero binario è un altro numero binario ottenuto alternando tutti i bit in esso contenuti, ovvero trasformando il bit 0 in 1 e il bit 1 in 0. Esempi:



Let numbers be stored using 4 bits 1's complement of 7 (0111) is 8 (1000) 1's complement of 12 (1100) is 3 (0011)>

complemento a 2 di un numero binario è 1 aggiunto al complemento a 1 del numero binario. Esempi:

Let numbers be stored using 4 bits 2's complement of 7 (0111) is 9 (1001) 2's complement of 12 (1100) is 4 (0100)>

Queste rappresentazioni vengono utilizzate per i numeri con segno.

IL differenza principale tra il complemento 1 e Complemento a 2 è che il complemento a 1 ha due rappresentazioni di 0 (zero) — 00000000, che è zero positivo (+0), e 11111111, che è zero negativo (-0); mentre nel complemento a 2 c'è solo una rappresentazione per lo zero: 00000000 (0) perché se aggiungiamo 1 a 11111111 (-1), otteniamo 100000000, che è lungo nove bit. Poiché sono consentiti solo otto bit, il bit più a sinistra viene scartato (o va in overflow), lasciando 00000000 (-0) che equivale a zero positivo. Questo è il motivo per cui viene generalmente utilizzato il complemento a 2.



Un'altra differenza è che quando aggiungiamo numeri utilizzando il complemento a 1, prima eseguiamo l'addizione binaria, quindi aggiungiamo un valore di riporto finale. Ma il complemento a 2 ha un solo valore per zero e non richiede valori di riporto.

L'intervallo del complemento a 1 per il numero di n bit è compreso tra -2n-1-1 a 2n-1-1 mentre l'intervallo del complemento a 2 per n bit è compreso tra -2n-1a 2n-1-1.

convertire un oggetto Java in json

Ce ne sono 2n-1numeri validi nel complemento a 1 e 2Nnumeri validi nel complemento a 2.



Differenza tra la rappresentazione del Complemento a 1 e la rappresentazione del Complemento a 2 in forma tabellare:

Criteri Complemento a 1 Complemento a 2
Definizione Il complemento a 1 di un numero binario si ottiene invertendo tutti i suoi bit. Il complemento a 2 di un numero binario si ottiene aggiungendo 1 al complemento a 1 del numero.
Intervallo di valori che può essere rappresentato con n bit Da -2^(n-1) + 1 a 2^(n-1) – 1 Da -2^(n-1) a 2^(n-1) – 1
Numero di rappresentazioni per zero Può essere rappresentato in due modi (tutti 0 e tutti 1). Può essere rappresentato in un solo modo (tutti 0).
Somma di numeri positivi e negativi Uguale all'addizione binaria senza segno. Uguale all'addizione binaria senza segno.
Sottrazione di numeri Sottrai il numero più piccolo da quello più grande, quindi aggiungi un bit di segno al risultato. Aggiungi il numero negativo a quello positivo usando l'addizione binaria.