Nand
è noto come porta logica "universale", perché consente di definire tutte le altre porte logiche booleane:
not(x) = nand(x,x)
and(x, y) = not(nand(x, y))
or(x, y) = nand(not(x), not(y))
nor(x, y) = not(or(x, y))
xor(x, y) = nand(nand(a, nand(a, b)), nand(b, nand(a, b)))
Questo è noto come nand-logic , ed è comunemente usato nei computer moderni perché un transistor può essere fatto per comportarsi proprio come un nand-gate.
Mi chiedo se sia possibile fare qualcosa di simile con le operazioni bit a bit. Può ad es. bit nand (bnand) essere utilizzato per definire bnot
, bor
, band
, bnor
, bxor
? Esiste un'operazione universale bit a bit?