title: Rappresentazione dei numeri relativi
text: # Rappresentazione dei numeri relativi
  
  In matematica, i numeri negativi in qualunque base vengono rappresentati normalmente ma viene prefisso il segno "-"; nei computer, però, vi sono vari metodi per estendere il sistema numerico binario per rappresentare i numeri relativi:
  
  * Rappresentazione in segno e modulo
  * Complemento a uno
  * Complemento a due
  * Eccesso N
  
  Per vari motivi i moderni computer usano principalmente la rappresentazione a complemento a due, anche se le altre rappresentazioni vengono usate in altre circostanze.
  
  ## Tipi di rappresentazione
  
  ### Eccesso N
  
  La rappresentazione dei numeri a Eccesso N è una convenzione per permettere il calcolo in base 2 con numeri negativi. Si definisce un "eccesso" N, solitamente determinato come $N=2^{k-1},$ con k:=numero di bit della parola, in modo che la parola con tutte le cifre uguali a 0 valga -N, e lo zero sia rappresentato dalla parola che in notazione binaria non a eccesso vale proprio N.
  
  Dato un numero da rappresentare su N bit, la sua rappresentazione in eccesso 2^(N-1) è data dalla somma tra 2^(N-1) e il numero stesso.
  
  8 bit excess-128 :
  
  | Parola in codice binario | Interpretazione a Eccesso-128 | Interpretazione unsigned |
  | - | - | - |
  | 00000000 | −128 | 0 |
  | 00000001 | −127 | 1 |
  | 01111111 | -1 | 127 |
  | 10000000 | 0 | 128 |
  | 11111111 | +127 | 255 |
  
  ## Tavola comparativa
  
  La seguente tavola mette a confronto la rappresentazione degli interi compresi fra otto e meno otto, usando 4 bit.
  
  Rappresentazione di interi con 4 bit :
  
  | Decimale | Senza segno | Segno e modulo | Complemento a uno | Complemento a due | Eccesso 8 |
  | - | - | - | - | - | - |
  | +8 | 1000 | n/d | n/d | n/d | n/d |
  | +7 | 0111 | 0111 | 0111 | 0111 | 1111 |
  | +6 | 0110 | 0110 | 0110 | 0110 | 1110 |
  | +5 | 0101 | 0101 | 0101 | 0101 | 1101 |
  | +4 | 0100 | 0100 | 0100 | 0100 | 1100 |
  | +3 | 0011 | 0011 | 0011 | 0011 | 1011 |
  | +2 | 0010 | 0010 | 0010 | 0010 | 1010 |
  | +1 | 0001 | 0001 | 0001 | 0001 | 1001 |
  | (+)0 | 0000 | 0000 | 0000 | 0000 | 1000 |
  | (−)0 | n/d | 1000 | 1111 | n/d | n/d |
  | −1 | n/d | 1001 | 1110 | 1111 | 0111 |
  | −2 | n/d | 1010 | 1101 | 1110 | 0110 |
  | −3 | n/d | 1011 | 1100 | 1101 | 0101 |
  | −4 | n/d | 1100 | 1011 | 1100 | 0100 |
  | −5 | n/d | 1101 | 1010 | 1011 | 0011 |
  | −6 | n/d | 1110 | 1001 | 1010 | 0010 |
  | −7 | n/d | 1111 | 1000 | 1001 | 0001 |
  | −8 | n/d | n/d | n/d | 1000 | 0000 |
  