Fara í innihald

Rökaðgerð

Úr Wikipediu, frjálsa alfræðiritinu
(Endurbeint frá Rökaðgerðir)

Rökaðgerð (Boolean Operations) heitið er dregið af nafni stærðfræðings sem var frumkvöðull á þessu sviði, George Boole. Einn biti er minnsta eining sem við getum haft og getur annaðhvort verið 0 eða 1 (sem stendur fyrir nei og já eða ósatt og satt), rökaðgerðir eru aðgerðir sem má nota á þennan bita hvort sem hann er einn eða í hópi annarra (1 eða 0 eða 10).

Frumaðgerðirnar

[breyta | breyta frumkóða]
Nokkur algeng rökhliða tákn

Frumaðgerðirnar eru NOT (ekki), AND (og) og OR (eða).

NOT er aðgerð sem er framkvæmd á aðeins einum bita og er útkoman andstæðan við upprunalega bitann.
Bitann köllum við a

NOT
a ~a
0 1
1 0

AND er aðgerð sem er framkvæmd á tveimur bitum, þegar útkoman er 1 þá þurfa báðir bitarnir að vera 1 en í öllum öðrum tilvikum verður útkoman 0.
Bitanna köllum við a og b.

AND
a b a and b
0 0 0
1 0 0
0 1 0
1 1 1

OR er aðgerð sem er framkvæmd á tveimur bitum eins og AND, þegar útkoman úr or er 1 þá er 1 tilstaðar í öðrum hvorum bitanum eða báðum og útkoman verður 0 þegar báðir bitarnir eru 0.
Bitanna köllum við a og b.

OR
a b a or b
0 0 0
1 0 1
0 1 1
1 1 1


Aðrar rökaðgerðir

[breyta | breyta frumkóða]

Til eru aðgerðir sem eru gerðar út frá hinum aðgerðunum, t.d. XOR, NAND og NOR

XOR er aðgerð sem er notuð á tvo bita og er samsett úr AND, OR og NOT, þegar útkoman er 1 þá er 1 í öðrum hvorum bitanum en ekki báðum.
Notum tvo bita og köllum þá a og b, ! merkir NOT.

XOR
a b !a !b a and !b !a and b XOR((a and !b) or (!a and b))
0 0 1 1 0 0 0
1 0 0 1 1 0 1
0 1 1 0 0 1 1
1 1 0 0 0 0 0

NAND er aðgerð sem er notuð á tvo bita og er samsett úr OR og NOT, aðeins þegar báðir bitarnir eru 1 þá er útkoman 0 annars er hún 1.
Notum tvo bita og köllum þá a og b, ! merkir NOT.

NAND
a b !a !b NAND(!a or !b)
0 0 1 1 1
1 0 0 1 1
0 1 1 0 1
1 1 0 0 0

NOR er aðgerð sem er notuð á tvo bita og er samsett úr AND og NOT, útkoman verður 0 þegar einhver bitana er 1.
Notum tvo bita og köllum þá a og b, ! merkir NOT.

NOR
a b !a !b NOR(!a and !b)
0 0 1 1 1
1 0 0 1 0
0 1 1 0 0
1 1 0 0 0

George Bool(en)
Boolean algebra(en)
Sanntöflur (Truth table)
Boolean logic)