Hvordan bruke en toerkomplementet i en Bit Shift

To komplement notasjon er en metode for å uttrykke negative tall ved hjelp av binære bits. Fordi data instruksjoner er i binært, er nødvendig programmering toerkomplement. Det er betydelig raskere enn andre former av aritmetiske fordi ingen oversettelse er påkrevd. Følgende trinn viser hvordan du bruker en toerkomplementet i litt skift.

Bruksanvisning

1 Studer vanlig binær notasjon. Lengst til høyre stedet representerer 2 ^ 0 eller 1, og hver påfølgende sted til venstre representerer en ekstra kraft 2. Derfor andreplassen til høyre er 2 ^ 1 eller 2, den tredje plassen til høyre er 2 ^ 2 eller 4 .

2 Konverter en binær verdi til en desimal verdi. Vi vil oppsummere alle de krefter 2 som har en 1 i den tilsvarende plasseringen av den binære verdien. For eksempel, hvis den binære verdien er 1101, da desimalekvivalenten er 1x2 ^ 3 + 1x2 + 0x2 ^ 2 ^ 1 + 1x2 ^ 0 = 8 + 4 + 0 + 1 = 13.

3 Undersøke to-komplement-representasjon. Lengst til venstre sted er et tegn litt med en 1 indikerer et negativt tall, og de andre bitene er størrelsesbiter.

4 Beregn en verdi i to-komplement-representasjon på samme måte som en vanlig binær verdi hvis lengst til venstre siffer er 0. Hvis lengst til venstre siffer er en 1, 2 ^ n trekkes fra den ordinære binære verdien der n er antall sifre i verdi. For eksempel, i trinn 2, 1101 er 13 på vanlig binær notasjon. I to-komplement-representasjon, men 1101 = 13 - 2 ^ 4 = 13-16 = -3.

5 Observere effekten av en toerkomplementet verdi på litt skift. Den bit tegn er bevart, så en rett bit skift av n steder av en toerkomplementet verdi vil dele på at verdien av 2 ^ n og avrunde nedover. Tilsvarende vil en venstre litt skifte av en toerkomplementet verdi multiplisere denne verdien med 2 ^ n forutsatt at det er ingen overløp.

6 Tenk litt skift på en bestemt toerkomplement verdi. For en venstre litt skift, 1101 (-3) blir 1010 (-6). En riktig bits skift vil gjøre 1101 (-3) blir 1110 (-2).