Skip to main content

Hvad er et aritmetisk skift?

Et aritmetisk skift er en måde at multiplicere eller dele numre på.Aritmetiske skift udføres typisk på binære tal.Konceptet gælder imidlertid for ethvert nummereringsskema.

Følgende er et eksempel ved hjælp af decimalnumre, der har ti som basen.Når 250 skiftes aritmetisk til venstre, er det resulterende antal 2500, hvilket er 250 ganget med ti.Når 250 repræsenteret ved hjælp af 4 cifre som 0250, skiftes aritmetisk til højre, det resulterende antal er 0025, som er 250 divideret med ti.Så det er mere korrekt at sige, at et aritmetisk skift er en måde at multiplicere eller dele numre med basen af nummerskemaet.

Binære tal har 2 som basen;De er repræsenteret ved hjælp af 0s og 1s og kan underskrives eller usigneret.I et aritmetisk venstre skift forskydes tallene med et rum til venstre med nul, der placeres til højre.I et aritmetisk højre skift forskydes tallene med et rum til højre med det venstre nummer, der bevares til venstre.Generelt kan et skift være for n mellemrum.

I usignerede binære tal er hver position en magt på 2, så binær 1 er decimal 1, binær 10 er decimal 2, binær 100 er decimal 4, og så videre.Så 0110 er decimal 6. Når et aritmetisk venstre skift udføres, er det resulterende antal 1100, der er decimal 12. Når et aritmetisk højre skift udføres, er det resulterende antal 0011, som er decimal 3.

som tal kan være begge delePositive og negative, underskrevne binære tal bruges, hvor den venstre bit er 0 for et positivt tal eller nul og 1 for et negativt tal.For 4-bit numre er 0111, som er decimal 7, det største positive tal.Den ordning, der oftest bruges til negative tal, har 1111 som decimal -1, og dette går helt ned til 1000, hvilket er decimal -8.

Et aritmetisk venstre skift på 1101, for eksempel, som er decimal -3, resulterer i1010, som er decimal -6.Et aritmetisk højre skift på 1010, som er decimal -6, resulterer i 1101, som er decimal -3.Bemærk, at den venstre bit er tilbageholdt.

Et aritmetisk skift svarer ikke altid til multiplikation og opdeling for hvert tal i nummerskemaet.Der er begrænsninger i hver ende af nummerordningen.F.eksudfør end normal multiplikation og opdeling.Så computere understøtter denne operation ved hjælp af en relativt enkel mekanisme kaldet et skiftenhed eller skiftregister.Kyndige programmerere bruger denne operation, så længe de ovennævnte begrænsninger enten undgås eller tages hånd om.