tvåkomplementnotation är en metod för att uttrycka negativa tal med binära bitar . Eftersom datorn instruktioner är i binärt är tvåkomplement nödvändig programmering . Det är betydligt snabbare än andra former av aritmetiska eftersom ingen översättning krävs . Följande steg visar hur man använder en två -komplement i lite skift . Instruktioner
1
Studie vanlig binär notation . Den längst till höger plats representerar 2 ^ 0 eller 1 , och varje efterföljande plats till vänster representerar en ytterligare effekt av 2 . Därför är den andra platsen till höger 2 ^ 1 eller 2 , är den tredje platsen till höger 2 ^ 2 eller 4 .
2
Konvertera ett binärt värde till ett decimaltal . Vi kommer att sammanfatta alla de befogenheter 2 som har en 1 på motsvarande plats i det binära värdet . Till exempel, om det binära värdet är 1101 , då den decimala motsvarigheten är 1x2 ^ 3 + 1x2 ^ 2 + 0x2 ^ 1 + 1x2 ^ 0 = 8 +4 +0 +1 = 13 .
3
Undersök tvåkomplementnotation . Den vänstra platsen är en skylt lite med en 1 indikerar ett negativt tal och de andra bitarna anger .
4
Beräkna ett värde i tvåkomplementnotation detsamma som en vanlig binär värde om siffran längst till vänster är 0 . Om siffran längst till vänster är en 1 , 2 ^ n subtraheras från den vanliga binära värdet där n är antalet siffror i värdet . Till exempel , i steg 2 , är 1101 13 i vanlig binär notation . I tvåkomplementnotation dock 1101 = 13-2 ^ 4 = 13 - 16 = -3
5
observera effekten av en två -komplement värde på lite skift . . Skylten bit bevaras , så kommer en rätt bitskift av n platser en tvåkomplement värde dividera detta värde med 2 ^ n och avrunda nedåt . På samma sätt kommer en vänster bitskift av en två -komplement värde multiplicerar detta värde med 2 ^ n förutsatt att ingen overflow .
6
Tänk lite skift på en specifik tvåkomplementform värde . För en vänster bitskift blir 1101 ( -3 ) 1010 ( -6 ) . En rätt bitskift kommer att göra 1101 ( -3 ) blir 1110 ( -2 ) .