Operácie

Blabla1: Rozdiel medzi revíziami

Zo stránky SensorWiki

Chamraz (diskusia | príspevky)
Chamraz (diskusia | príspevky)
Riadok 129: Riadok 129:
Všetky tieto operácie sú binárne.
Všetky tieto operácie sú binárne.


Celočíselný súčet
 
=== Celočíselný súčet ===
 


Ak interpretujeme binárny obsah slova, ako zobrazenie dekadického čísla v pozičnej číselnej sústave so základom 2, ide o zobrazenie celých nezáporných čísel, t.j. celých čísel bez znamienka ( sú to celé čísla typu unsigned).
Ak interpretujeme binárny obsah slova, ako zobrazenie dekadického čísla v pozičnej číselnej sústave so základom 2, ide o zobrazenie celých nezáporných čísel, t.j. celých čísel bez znamienka ( sú to celé čísla typu unsigned).

Verzia z 10:25, 25. február 2009

Základné aritmeticko-logické operácie

Elementárne aritmeticko-logické operácie

Logické operácie sa uskutočňujú nad pamäťovými miestami obyčajne s registrami CPU, pričom operácia sa vykonávajú so všetkými dvojicami bitov (bitmi) pamäťových miest. Pamäťové miesta (slová) môžu byť jedno a viacbajtové. Bity v tychto slovách označujeme indexom, ktorého počiatočná hodnota je 0 a index narastá zprava doľava :

Označovanie bitov v 8-bitovom slove (v jednobajtovom slove)

Označovanie bitov v 16-bitovom slove (v dvojbajtovom slove)

LSB – Least Significant Bit ( bit s najmenšou váhou) MSB – Most Significant Bit ( bit s najväčšou váhou)


Operácie delíme ich na - unárne – vykonávajú sa s jedným pamäťovým miestom - binárne– vykonávajú sa s dvoma pamäťovými miestami Medzi elementárne operácie, ktoré vykonávajú takmer všetky CPU sú :

  • Negácia (NOT)

Patrí medzi unárne operácie: Pravidlá pre jednobitové operandy sú: Pre viacbitové ( budeme uvádzať príklady pre 8-bitové operandy ( jeden bajt)

  • logický súčet (OR)

Patrí medzi binárne operácie: Pravidlá pre jednobitové operandy sú:

Pre jednobajtové operandy:

Použitie: Vnútenie logickej jednotky do ľubovolnej pozície v byte, v bytoch tzv. maskou. Napr.: Vykonaním logického súčtu ľubovolného bytu s maskou, ktorá je reprezentovaná bytom s obsahom

bude v uvedenom byte v bitoch s indexom 7,6 a 2 vždy logická jednotka bez ohľadu na predchádzajúci obsah bytu.

kde X je obsah bitu pred vykonaním operácie.


  • logický súčin (AND)

Patrí medzi binárne operácie. Pravidlá pre jednobitové operandy sú:

Pre jednobajtové operandy:

Použitie: Vnútenie logickej nuly do ľubovolnej pozície v byte, v bytoch tzv. maskou. Napr.: Vykonaním logického súčtu ľubovolného bytu s maskou, ktorá je reprezentovaná bytom s obsahom


bude v uvedenom byte v bitoch s indexom 7,6 a 2 vždy logická nula bez ohľadu na predchádzajúci obsah bytu.

Pomocou masky môžeme testovať logickú hodnotu vybraného bitu, bitov, bajtu a bajtov. Použitím, napríklad, masky

po vykonaní logického súčinu s vybraným bajtom, bude výsledok operácie nulový, ak v bite s indexom 2 bola logická nula, a naopak nenulový, ako v danom bite bola logická jednotka. Nulový výsledok znamená, že bajt (bajty), do ktorých sa zapíše výsledok aritmeticko-logickej operácie obsahuje vo všetkých bitoch binárnu hodnotu nula.



  • neekvivalencia (XOR)

Patrí medzi binárne operácie. Nazýva sa tiež exluzívny súčet, súčet modulo 2, EOR. Pravidlá pre jednobitové operandy sú:

Pre jednobajtové operandy:

Použitie: Inverovanie logickej hodnoty v ľubovolnej pozícii bajtu ( bajtoch) maskou. Napríklad. Vykonaním logického súčtu ľubovolného bytu s maskou, ktorá je reprezentovaná bytom s obsahom

bude výsledok operácie



Posuny a rotácie

Medzi najzákladnejšie operácie ALU patria posuny a rotácie obsahov pamäťových miest. Patria medzi unárne operátory. Operácie sa vykonávajú posúvaním obsahov bitov doľava, alebo doprava, prípadne n-tica pamäťových bitov sa doplní formálne o pomocný bit na (n+1) –ticu ( pomocným bitom bývajú príznakové (stavové) bity CPU, napr. Carry bit)

Rotácie Rotácia obsahu pamäťového miesta doprava

Rotácia obsahu pamäťového miesta doľava

Posuny obsahu pamaťového miesta môžu byť:

  • logické
  • aritmetické

Logické posuny Logický posun obsahu pamäťového miesta doprava

Logický posun obsahu pamäťového miesta doľava

Aritmetické posuny Aritmetický posun obsahu pamäťového miesta doprava

ale pre bajt

Aritmetický posun obsahu pamäťového miesta doľava

ale pre bajt


Použitie :

  • cyklické testovanie obsahu bitov
  • vytváranie slov pri kódovaní
  • arimetické posuny
    • doprava

-je celočíselným delením číslom 2

- pri n posunoch ide o celočíselné delenie číslom 2n

    • doľava

- je násobením číslom 2

- pri n posunoch ide o násobenie číslom 2n


Celočíselná arimetika

Medzi základné celočíselné aritmetické operácie, ktoré realizuje ALU, patria - súčet - rozdiel - násobenie - delenie Všetky tieto operácie sú binárne.


Celočíselný súčet

Ak interpretujeme binárny obsah slova, ako zobrazenie dekadického čísla v pozičnej číselnej sústave so základom 2, ide o zobrazenie celých nezáporných čísel, t.j. celých čísel bez znamienka ( sú to celé čísla typu unsigned).