logo

Addizione e sottrazione utilizzando il complemento a 2

Nella sezione precedente abbiamo imparato come eseguire operazioni aritmetiche come addizioni e sottrazioni utilizzando il complemento a 1. In questa sezione impareremo a eseguire queste operazioni utilizzando il complemento a 2.

shehzad poonawala

Addizione utilizzando il complemento a 2

Ci sono tre diversi casi possibili quando aggiungiamo due numeri binari usando il complemento a 2, che è il seguente:

Caso 1: aggiunta del numero positivo con un numero negativo quando il numero positivo ha una grandezza maggiore.

Inizialmente trova il complemento a 2 del numero negativo indicato. Riassumi con il numero positivo indicato. Se otteniamo il riporto finale 1, il numero sarà un numero positivo e il bit di riporto verrà scartato e i bit rimanenti saranno il risultato finale.

Esempio: 1101 e -1001

  1. Innanzitutto, trova il complemento a 2 del numero negativo 1001. Quindi, per trovare il complemento a 2, cambia tutto 0 in 1 e tutto 1 in 0 o trova il complemento a 1 del numero 1001. Il complemento a 1 del numero 1001 è 0110 e aggiungi 1 all'LSB del risultato 0110. Quindi il complemento a 2 del numero 1001 è 0110+1=0111
  2. Aggiungi entrambi i numeri, cioè 1101 e 0111;
    1101+0111=1 0100
  3. Sommando entrambi i numeri, otteniamo il riporto finale 1. Scartiamo il riporto finale. Quindi, la somma di entrambi i numeri è 0100.

Caso 2: aggiunta del valore positivo con un valore negativo quando il numero negativo ha una grandezza maggiore.

Inizialmente, aggiungi un valore positivo al valore del complemento a 2 del numero negativo. Qui non viene trovato alcun carry end-around. Quindi, prendiamo il complemento a 2 del risultato per ottenere il risultato finale.

Nota: il risultato è un valore negativo.

Esempio: 1101 e -1110

  1. Per prima cosa, trova il complemento a 2 del numero negativo 1110. Quindi, per trovare il complemento a 2, aggiungi 1 all'LSB del suo valore del complemento a 1 0001.
    0001+1=0010
  2. Aggiungi entrambi i numeri, ovvero 1101 e 0010;
    1101+0010= 1111
  3. Trova il complemento a 2 del risultato 1110 che è il risultato finale. Quindi, il complemento a 2 del risultato 1110 è 0001 e aggiungi un segno negativo prima del numero in modo da poter identificare che si tratta di un numero negativo.

Caso 3: addizione di due numeri negativi

In questo caso, per prima cosa, trova il complemento a 2 di entrambi i numeri negativi, quindi aggiungeremo entrambi i numeri del complemento. In questo caso, otterremo sempre il carry end-around, che verrà aggiunto all'LSB, e dimenticando il risultato finale, prenderemo il complemento a 2 del risultato.

Nota: il risultato è un valore negativo.

Esempio: -1101 e -1110 nel registro a cinque bit

  1. Innanzitutto trova il complemento a 2 dei numeri negativi 01101 e 01110. Quindi, per trovare il complemento a 2, aggiungiamo 1 all'LSB del complemento a 1 di questi numeri. Il complemento a 2 del numero 01110 è 10010 e 01101 è 10011.
  2. Aggiungiamo entrambi i numeri del complemento, cioè 10001 e 10010;
    10010+10011= 1 00101
  3. Sommando entrambi i numeri, otteniamo il riporto finale 1. Questo riporto viene scartato e il risultato finale è il complemento a 2 del risultato 00101. Quindi, il complemento a 2 del risultato 00101 è 11011 e aggiungiamo un valore negativo segno prima del numero in modo da poter identificare che si tratta di un numero negativo.

Sottrazione utilizzando il complemento a 2

Questi sono i seguenti passaggi per sottrarre due numeri binari utilizzando il complemento a 2

  • Nel primo passaggio, trova il complemento a 2 del sottraendo.
  • Aggiungi il numero del complemento con il minuendo.
  • Se otteniamo il carry sommando entrambi i numeri, allora scartiamo questo carry e il risultato è positivo altrimenti prendiamo il complemento a 2 del risultato che sarà negativo.

Esempio 1: 10101 - 00111

Prendiamo il complemento a 2 del sottraendo 00111, che è 11001. Ora sommali. COSÌ,

10101+11001 =101110.

Nel risultato precedente, otteniamo il bit di riporto 1. Quindi scartiamo questo bit di riporto e il rimanente è il risultato finale e un numero positivo.

Esempio 2: 10101 - 10111

Prendiamo il complemento a 2 del sottraendo 10111, che dà come risultato 01001. Ora aggiungiamo entrambi i numeri. COSÌ,

10101+01001 =11110.

Nel risultato sopra, non abbiamo ottenuto la parte di riporto. Quindi calcola il complemento a 2 del risultato, ovvero 00010. È il numero negativo e la risposta finale.