Vai al contenuto
Home

Rappresentazione dei numeri relativi

Le rappresentazioni Signed Number sono usate per risolvere il problema di rappresentare gli interi negativi in binario. Il problema di cercare di memorizzare il segno negativo (-) di un numero binario è che non ci sono più stati da usare per rap…

Le rappresentazioni Signed Number sono usate per risolvere il problema di rappresentare gli interi negativi in binario. Il problema di cercare di memorizzare il segno negativo (-) di un numero binario è che non ci sono più stati da usare per rappresentare l'assegnazione negativa. Non è possibile usare semplicemente 'off' per il meno e 'on' per il più perché il computer non avrebbe modo di sapere se si tratta di una cifra o di un segno.

Per superare questo problema i progettisti di computer hanno inventato due metodi per memorizzare i numeri binari negativi: segno-e-magnitudine e complemento a 2. Questi producono rappresentazioni alternative per i numeri firmati.

Segno e magnitudine

Sign and Magnitude funziona cambiando il bit più significativo (MSB - la prima cifra) in un 1 se il numero è negativo, e ridurre il numero di uno, per esempio:

0000 0010 (2)

diventerà...

1000 0010 (-2)

Questo metodo di memorizzazione dei numeri binari negativi non funziona perché:

  • L'aritmetica binaria non funziona.
  • Dobbiamo prima sapere quale meccanismo di memorizzazione usa il compilatore di un particolare linguaggio.

Complemento 1

Il complemento di 1 funziona scambiando gli 1 con gli 0 e gli 0 con gli 1, per esempio:

0000 0010 (2)

diventerà...

1111 1101 (-2)

Molto simile al metodo sign-and-magnitude questo è facilmente definito come un numero negativo perché il suo bit più significativo è 1

complemento a 2

Il complemento a 2 è un modo più difficile di memorizzare i negativi. Ci sono tre passaggi per esso:

  1. Trova il numero binario positivo (per esempio 8base 10 = 0000 1000base 2).
  2. Scambiate gli 1 con gli 0 e gli 0 con gli 1 (per esempio 0000 1000base 2 diventa 1111 0111base 2).

Questo è noto come "capovolgere i bit", o applicare il NOT logico alla rappresentazione originale in base 2.

  1. Aggiungere 1 (per esempio 1111 0111base 2 + 1base 2 = 1111 1000base 2).

Questo metodo piace perché:

  • È come il segno e la grandezza; un numero negativo inizia con un 1 e un numero positivo inizia con uno 0.
  • L'aritmetica binaria funzionerà.
  • C'è solo un valore per 0 (0000 0000base 2).

Articoli correlati

Autore

AlegsaOnline.com Rappresentazione dei numeri relativi

URL: https://it.alegsaonline.com/art/90333

Condividi