Nand
est connu comme une porte logique «universelle», car il vous permet de définir toutes les autres portes logiques booléennes:
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)))
Ceci est connu sous le nom de logique nand , et est couramment utilisé dans les ordinateurs modernes car un transistor peut être fait pour se comporter comme une porte nand.
Je me demande s'il est possible de faire quelque chose de similaire avec les opérations au niveau du bit. Un peut par exemple au niveau du bit nand (bnand) être utilisé pour définir bnot
, bor
, band
, bnor
, bxor
? Existe-t-il une opération universelle au niveau du bit?