Přeskočit obsah

Bitové operace¤

Přehled¤

Bitové posuny zachází s hodnotou jako se sérií bitů, binární číslice hodnoty jsou posunuty doleva nebo doprava.

  • !SHL, !SHR: Logické posuny doleva a doprava.
  • !SAL, !SAR: Aritmetické posuny doleva a doprava.
  • !ROL, !ROR: Kruhové posuny doleva a doprava.

Existují také bitové výrazy !AND, !OR a !NOT, viz kapitolu Logické výrazy.


!SHL¤

Logický posun doleva.

Typ: Mapping.

!SHL
what: <...>
by: <...>

Tip

Levý posun lze použít jako rychlé násobení čísly 2, 4, 8 atd.

Příklad

!SHL
what: 9
by: 2

9 je reprezentována binární hodnotou 1001. Levý logický posun posune bity doleva o 2 pozice. Výsledkem je 100100, což je v desítkovém zápise 36. To je stejný výsledek jako 9 * (2^2).


!SHR¤

Logický posun doprava.

Typ: Mapping.

!SHR
what: <...>
by: <...>

Tip

Pravý posun lze použít jako rychlé dělení čísly 2, 4, 8 atd.

Příklad

!SHR
what: 16
by: 3

16 je reprezentovaná 10000. Logický posun posune bity doprava o 3. Výsledkem je 10, tedy 2 v desítkovém zápisu. To je stejný výsledek jako 16 / (2^3).


!SAL¤

Aritmetický posun doleva.

Typ: Mapping.

!SAL
what: <...>
by: <...>

Příklad

!SAL
what: 60
by: 2

!SAR¤

Pravý aritmetický posun.

Typ: Mapping.

!SAR
what: <...>
by: <...>

!ROL¤

Kruhový posun doleva.

Typ: Mapping.

!ROL
what: <...>
by: <...>

!ROR¤

Kruhový posun doprava.

Typ: Mapping.

!ROR
what: <...>
by: <...>