Sottrazione con il Complemento
- La sottrazione con il complemento è un metodo efficiente per eseguire operazioni di sottrazione nei sistemi digitali.
- Utilizza il complemento a 2 per trasformare la sottrazione in un'operazione di somma.
- Il risultato della sottrazione può essere positivo o negativo, a seconda dei valori di
e . - La sottrazione con il complemento può essere applicata sia a numeri decimali che binari.
- La sottrazione con il complemento a 1 è un metodo alternativo che utilizza il complemento a (r - 1) e richiede un riporto circolare finale.
Sottrazione con i Complementi
Il metodo diretto di sottrazione insegnato nelle scuole elementari usa il concetto di riporto. In questo metodo, si prende in prestito un 1 da una posizione più significativa quando la cifra del minuendo è più piccola della cifra del sottraendo. Il metodo funziona bene quando una sottrazione viene svolta con carta e matita. Tuttavia, quando la sottrazione è implementata con hardware digitale, il metodo è meno efficiente del metodo che usa i complementi.
La sottrazione di due numeri senza segno (ossia maggiori o uguali a zero) a
-
Aggiungere il minuendo
al complemento a del sottraendo . Matematicamente il tutto si trasforma in:
-
Se
, la somma produrrà un riporto finale , che può essere scartato; quello che rimane è il risultato . - Se
, la somma non produce un riporto finale ed è uguale a , che è il complemento a di .
Proviamo a dimostrare quest'ultima affermazione. Se
Ma poiché
Adesso, proviamo a calcolare in pratica la sottrazione con i complementi.
Usando il complemento a 10, sottrarre i due numeri decimali 72532 - 3250.
Per prima cosa, osserviamo che
Calcoliamo il complemento a 10 di
Successivamente, sommiamo il minuendo e il complemento del sottraendo:
Il numero che abbiamo ottenuto ha 6 cifre, quindi possiamo scartare il riporto finale
Il risultato della sottrazione 72532 - 3250 è quindi 69282. Questo è lo stesso risultato che si ottiene sottraendo 3250 da 72532 usando il metodo diretto di sottrazione.
Si noti che
Usando il complemento a 10, sottrarre 3250 - 72532.
Notiamo tre cose:
e , ossia . - Il risultato sarà negativo.
ha quattro cifre e ne ha cinque, quindi dobbiamo scrivere come 03250.
Calcoliamo il complemento a 10 di
Sommiamo il minuendo e il complemento del sottraendo:
Non c'è riporto finale, infatti il risultato è minore di
E, successivamente, aggiungiamo il segno negativo:
Questo è proprio il risultato della sottrazione
Si noti che poiché 3250 < 72532, il risultato è negativo. Poiché stiamo trattando con numeri senza segno, non c'è davvero modo di ottenere un risultato senza segno per questo caso. Quando si sottrae con i complementi, riconosciamo la risposta negativa dall'assenza del riporto finale e dal risultato complementato. Quando si lavora con carta e matita, possiamo cambiare la risposta in un numero negativo con segno per ottenere il risultato corretto.
Se lavoriamo con i numeri binari, la sottrazione con i complementi è fatta in modo simile, usando la procedura delineata precedentemente. Vediamo qualche esempio.
Dati i due numeri binari:
eseguire le due sottrazioni:
usando il complemento a 2.
Partiamo con la prima sottrazione:
- I due numeri hanno lo stesso numero di cifre, quindi non dobbiamo fare alcuna modifica.
-
Calcoliamo il complemento a 2 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo ottenuto ha 8 cifre, quindi possiamo scartare il riporto finale
(ossia il bit più significativo):
La presenza del riporto finale indica che
Passiamo alla seconda sottrazione:
- I due numeri hanno lo stesso numero di cifre, quindi non dobbiamo fare alcuna modifica.
-
Calcoliamo il complemento a 2 di
: -
Sommiamo
e il complemento di :
Non c'è riporto finale. Pertanto, la risposta è:
Sottrazione con Complemento a 1
La sottrazione di numeri senza segno può anche essere fatta per mezzo del complemento a (r - 1). Si ricordi che il complemento a (r - 1) è uno meno del complemento a r. A causa di questo, il risultato dell'aggiunta del minuendo al complemento del sottraendo produce una somma che è uno meno della differenza corretta quando si verifica un riporto finale. Rimuovere il riporto finale e aggiungere 1 alla somma è chiamato riporto circolare finale.
Per chiarire questo, consideriamo qualche esempio.
Dati i due numeri binari:
eseguire le due sottrazioni:
stavolta usando il complemento a 1.
Partiamo con la prima sottrazione:
- I due numeri hanno lo stesso numero di cifre, quindi non dobbiamo fare alcuna modifica.
-
Calcoliamo il complemento a 1 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo ottenuto ha 8 cifre, quindi possiamo scartare il riporto finale
(ossia il bit più significativo). Questo bit è il riporto circolare finale, che deve essere aggiunto al risultato:
Adesso punto, possiamo notare che il risultato è lo stesso che abbiamo ottenuto usando il complemento a 2. La presenza del riporto finale indica che
Passiamo alla seconda sottrazione:
- I due numeri hanno lo stesso numero di cifre, quindi non dobbiamo fare alcuna modifica.
-
Calcoliamo il complemento a 1 di
: -
Sommiamo
e il complemento di :
Non c'è riporto finale. Pertanto, la risposta è il complemento a 1 di
Si noti che il risultato negativo si ottiene prendendo il complemento a 1 della somma, poiché questo è il tipo di complemento usato. La procedura con riporto circolare finale è anche applicabile alla sottrazione di numeri decimali non segnati con il complemento a 9.
Esempi
Dati
-
Calcoliamo il complemento a 2 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo ottenuto ha 8 cifre, quindi possiamo scartare il riporto finale
(ossia il bit più significativo):
Dati
-
Calcoliamo il complemento a 2 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo non ha riporto finale. Pertanto, la risposta è il complemento a 2 di
:
Dati
-
Calcoliamo il complemento a 1 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo ottenuto ha 8 cifre, quindi possiamo scartare il riporto finale
(ossia il bit più significativo). Questo bit è il riporto circolare finale, che deve essere aggiunto al risultato:
Dati
-
Calcoliamo il complemento a 1 di
: -
Sommiamo
e il complemento di : -
Il risultato che abbiamo non ha riporto finale. Pertanto, la risposta è il complemento a 1 di
: