tvåkomplement är ett system för att representera negativa binära tal . Det kan också användas för att implementera subtraktion - att subtrahera " A " från " B " konvertera " A " till ett negativt tal och tillsätt Detta sparar behöva bygga hårdvara för addition och subtraktion Så länge systemet för konvertering från en . . binärt tal till tvåkomplementet - och tillbaka igen - tvåkomplement kan förenkla negativt tal representation och subtraktion samt konvertera från tvåkomplement till decimal tar två steg : konverterar från tvåkomplement till binär och sedan konvertera från binärt till decimalt Instruktioner . .
1
Föreställ decimaler som binära tal genom att kontinuerligt dela 2 in numret och insamling resterna . för att till exempel konvertera 13 till binär , dividera 13 med 2 för att få 6 och första återstoden av 1 . Divide 2 till 6 för att få 3 och den andra resten 0 . Dela 2 till 3 för att få en och tredje återstoden av 1 . Divide 2 in 1 för att få 0 och påminnelse om 1 . resterna , i omvänd ordning för produktionen , är 1101 och decimal 13 = binärt 1101 . det är lättare att känna igen ett binärt tal än det är att producera det . från höger , lägg d X 2 ^ p , där d är den binära siffran och p är läget , så 1101 = ( 1 x 1 ) + ( 0 x 2 ) + ( 1 x 4 ) + ( 1 x 8 ) = 13 .
2
Förändring från binära till tvåkomplement genom att vända bitarna och lägga 1 . Så binär 7 kan vara 00000111 och negativa 7 skulle vara 11.111.001 eftersom 00.000.111 omvända är 11.111.000 och 11.111.000 + 1 = 11.111.001 . siffran längst till vänster är skylten lite . Positiva tal har en noll tecken bitars och negativa tal har en 1 teckenbit . en av de trevliga sakerna med två s komplement är att konvertera från tvåkomplement till binärt är exakt samma som process som konverterar från binära till två s komplimang . för att till exempel konvertera tvåkomplement -7 till binärt 7 , vända siffrorna och tillsätt 1 . är 00000110 och 00000110 11.111.001 omvända + . 1 = 00.000.111
3
konvertera från tvåkomplement till decimal i två steg : tvåkomplement till binär och sedan från binär till decimal till exempel vill konvertera -21 i tvåkomplement - . 11101011 - till decimal , först konvertera det till binär och sedan omvandla den binära till decimal .. Omvänd 11101011 för att få 00010100 och tillsätt 1 för att få 00.010.101 vilket är 21 i binär sedan avkoda binära använda positionella notation för att få ( 0 X . 128 ) + ( 0 X 64 ) + ( 0 X 32 ) + ( 1 X 16 ) + ( 0 X 8 ) + ( 1 X 4 ) + ( 0 X 2 ) + ( 1 X 1 ) = 21 .
Addera ditt