1. kamerák
  2. Car Audio & Electronics
  3. Home Audio
  4. Personal Audio
  5. TV-k
  6. Okos otthon
  >> Elektronikai Technológia Online >  >> TV-k >> távirányító

Mit jelent az eltolási és forgatási utasítás?

Shift utasítások

A Shift utasítások egy regiszter bitjeit balra vagy jobbra mozgatják. Ez számos célra hasznos lehet, például:

* Szorzás vagy osztás 2 hatványával

* Adott bitek kinyerése vagy beillesztése egy regiszterből

* A bitek sorrendjének megfordítása egy regiszterben

Az eltolási utasításoknak két fő típusa van:logikai eltolás és aritmetikai eltolás.

* Logikai váltások eltolja az összes bitet egy regiszterben, beleértve az előjelbitet is. Ez azt jelenti, hogy a regiszter értéke logikai eltolódás után változhat.

* Aritmetikai eltolások csak az adatbiteket tolja el egy regiszterben, az előjelbitet nem. Ez azt jelenti, hogy a regiszter értéke nem változik egy aritmetikai eltolódás után.

Az alábbi táblázat a legtöbb processzorban elérhető különböző váltási utasításokat mutatja be:

| Utasítás | Leírás |

|---|---|

| "SHL" | Eltolás balra logikai |

| "SHR" | Eltolás jobbra logikai |

| "SAR" | Eltolás jobbra aritmetika |

| "ROL" | Forgatás balra |

| "ROR" | Forgatás jobbra |

Az utasítások elforgatása

A forgatási utasítások hasonlóak a shift utasításokhoz, azzal a különbséggel, hogy eltolás helyett elforgatják a regiszter bitjeit. Ez azt jelenti, hogy a regiszter egyik végén lévő bitek a másik végére kerülnek.

A forgatási utasítások számos célra hasznosak lehetnek, például:

* Kör alakú pufferek generálása

* Két regiszter tartalmának felcserélése

* Bizonyos kriptográfiai algoritmusok megvalósítása

Az alábbi táblázat a legtöbb processzorban elérhető különböző forgatási utasításokat mutatja be:

| Utasítás | Leírás |

|---|---|

| "ROL" | Forgatás balra |

| "ROR" | Forgatás jobbra |

Példák

Íme néhány példa az eltolási és elforgatási utasítások használatára:

* Ha egy számot meg szeretne szorozni 2-vel, használja a Shift balra utasítást. Például a következő kód megszorozza az "EAX" regiszterben lévő értéket 2-vel:

```

shl eax, 1

```

* Egy szám 2-vel való osztásához használhatja a Shift jobbra utasítást. Például a következő kód elosztja az "EAX" regiszterben lévő értéket 2-vel:

```

shr eax, 1

```

* Ha egy regiszterből a legkisebb jelentőségű bájtot szeretné kivonni, használhat egy shift jobbra utasítást. Például a következő kód kivonja a legkisebb jelentőségű bájtot az "EAX" regiszterből, és eltárolja az "AL" regiszterben:

```

shr eax, 8

mov al, eax

```

* Egy adott bájt regiszterbe történő beillesztéséhez használhat egy shift balra utasítást. Például a következő kód beszúrja a 0x12 értéket az "EAX" regiszter legkisebb jelentőségű bájtjába:

```

mov al, 0x12

shl eax, 8

```

* A regiszterben lévő bitek sorrendjének megfordításához használhat egy forgatás balra utasítást. Például a következő kód megfordítja a bitek sorrendjét az "EAX" regiszterben:

```

rol eax, 8

```

  1. Hogyan fogja a digitális sugárzott jelek Közép- Oregon
  2. Hogyan Csatlakoztasson egy fejhallgatót Mini Jack Into RCA kapcsolat?
  3. Hogyan építsünk egy vezeték nélküli távirányító Booster
  4. Típusai Műanyag használni, hogy a TV távirányító
  5. Hogyan tudom megjavítani a Pioneer vetítővászon TV ?