I vårt tidigare avsnitt lärde vi oss hur vi kunde utföra aritmetiska operationer som addition och subtraktion med hjälp av 1:s komplement. I det här avsnittet kommer vi att lära oss att utföra dessa operationer med hjälp av 2:s komplement.
vad är 10 av 60
Tillägg med 2:s komplement
Det finns tre olika fall möjliga när vi lägger till två binära tal med hjälp av 2:s komplement, vilket är följande:
Fall 1: Addering av det positiva talet med ett negativt tal när det positiva talet har en större magnitud.
Hitta först 2:ans komplement till det givna negativa talet. Summera med det givna positiva talet. Om vi får slut-around carry 1 kommer talet att vara ett positivt tal och carry biten kommer att kasseras och återstående bitar är det slutliga resultatet.
Exempel: 1101 och -1001
- Hitta först 2-komplementet till det negativa talet 1001. Så, för att hitta 2-komplementet, ändra alla 0 till 1 och alla 1 till 0 eller hitta 1-komplementet till talet 1001. 1-komplementet av talet 1001 är 0110, och lägg till 1 till LSB för resultatet 0110. Så 2:ans komplement till nummer 1001 är 0110+1=0111
- Lägg till båda siffrorna, dvs 1101 och 0111;
1101+0111=1 0100 - Genom att lägga till båda siffrorna får vi slut-around carry 1. Vi kasserar end-around carry. Så tillägget av båda talen är 0100.
Fall 2: Addering av det positiva värdet med ett negativt värde när det negativa talet har en högre magnitud.
Lägg först till ett positivt värde med 2:ans komplementvärde för det negativa talet. Här hittas ingen ändbärare. Så vi tar 2:ans komplement till resultatet för att få det slutliga resultatet.
Obs! Resultatet är ett negativt värde.
Exempel: 1101 och -1110
- Hitta först 2:ans komplement till det negativa talet 1110. Så, för att hitta 2:s komplement, lägg till 1 till LSB för dess 1:s komplementvärde 0001.
0001+1=0010 - Lägg till båda siffrorna, dvs 1101 och 0010;
1101+0010= 1111 - Hitta 2:ans komplement till resultatet 1110 som är slutresultatet. Så, 2:ans komplement till resultatet 1110 är 0001, och lägg till ett negativt tecken före talet så att vi kan identifiera att det är ett negativt tal.
Fall 3: Addering av två negativa tal
I det här fallet, hitta först 2:ans komplement till båda de negativa talen, och sedan adderar vi båda dessa komplementtal. I det här fallet kommer vi alltid att få den slutgiltiga bäraren, som kommer att läggas till i LSB, och om vi glömmer det slutliga resultatet kommer vi att ta 2:ans komplement till resultatet.
Obs! Resultatet är ett negativt värde.
Exempel: -1101 och -1110 i fembitarsregister
- Hitta först 2:ans komplement till de negativa talen 01101 och 01110. Så för att hitta 2:s komplement lägger vi till 1 till LSB för 1:ans komplement av dessa tal. 2:s komplement till talet 01110 är 10010 och 01101 är 10011.
- Vi adderar båda komplementnumren, dvs 10001 och 10010;
10010+10011= 100101 - Genom att lägga till båda siffrorna får vi slut-around carry 1. Denna carry kasseras och slutresultatet är 2.s komplementet av resultatet 00101. Så 2:ans komplement av resultatet 00101 är 11011, och vi lägger till ett negativt tecken före talet så att vi kan identifiera att det är ett negativt tal.
Subtraktion med 2:s komplement
Dessa är följande steg för att subtrahera två binära tal med hjälp av 2:s komplement
- I det första steget, hitta 2:ans komplement till subtrahenden.
- Lägg till komplementnumret med minuend.
- Om vi får bäret genom att lägga till båda siffrorna, så kasserar vi detta bärande och resultatet är positivt, annars ta 2:s komplement till resultatet som blir negativt.
Exempel 1: 10101 - 00111
Vi tar 2:s komplement av subtrahend 00111, vilket är 11001. Nu summera dem. Så,
10101+11001 =1 01110.
I resultatet ovan får vi bärbiten 1. Så vi kasserar denna bärbit och återstående är det slutliga resultatet och ett positivt tal.
Exempel 2: 10101 - 10111
Vi tar 2:s komplement av subtrahend 10111, som kommer ut 01001. Nu lägger vi till båda talen. Så,
10101+01001 =11110.
I resultatet ovan fick vi inte bärbiten. Så beräkna 2:ans komplement till resultatet, dvs 00010. Det är det negativa talet och det slutliga svaret.