è un sistema di codifica dei numeri interi relativi, in cui il bit più significativo dà indicazione del segno (0+, 1-), mentre i bit rimanenti vengono sottoposti a un’operazione di complementazione se rappresentano un valore negativo.

come interpretare il risultato

  1. se il MSB è 1 complemento
  2. decodifico i bit restanti usando il binario e considero il valore o positivo o negativo
3 bitbincomplemento a 1
00000
00111
01022
01133
1004-3
1015-2
1106-1
1117-0
2-2=0                2-3=-1             3-1=2
  v                    v                  v
2+(-2)=0            2+(-3)=-1          3+(-1)=2

010 +               010 +              011 +
101 =               100 =              110 =
111 = -0            110 = -1           001 = 1 > sbagliato

Questa rappresentazione ha un problema:

  • se il risultato è negativo allora è corretto,
  • se il risultato è positivo allora è decrementato di uno e va corretto, quindi serve un controllo ulteriore che impiega più potenza computazionale. L’addizione quindi non è efficiente perché bisogna verificare se il risultato va corretto.