A riesgo de equivocarme diría que no existen.
La forma es que hagas una AND y luego la niegues, eso ya lo sabes.
NOR lo mismo
EXNOR no se, para mi no existe EXOR sino XOR pero es semántica. una XOR negada es lo mismo.
Sñr Surbyte, creo que has dado con la solución a mi problema.
¿Podrías decirme cómo puedo hacer para negar una AND?
Darte las gracias Metaconta por la aportación, ya busqué información en esa página antes de hacer la consulta, es muy útil la página, pero no consiguió resolver mi duda.
miguelpereira:
Encontre cierta información por internet, estaria bien hecha la negación de la siguiente forma:
((pulsador1!=true) && (pulsador2!=true)): NAND
((pulsador1!=true) ^ (pulsador2!=true)): XNOR
((pulsador1!=true) || (pulsador2!=true)): NOR
No es exactamente asi,por ejemplo,una puerta NAND es el inverso de hacer un AND de dos entradas(Segun tu ejemplo pulsador1 y pulsador2),osea haces el and del estado de las dos entradas y el resultado se invierte.Entonces tienes 4 combinaciones segun el estado de los pulsadores:
//ejemplo NAND
#define pulsador1 2
#define pulsador2 3 //
void setup() {
Serial.begin(9600);
pinMode(pulsador1,INPUT);
pinMode(pulsador2,INPUT);
}
void loop() {
int estado_pulsador1 = digitalRead(pulsador1);
int estado_pulsador2 = digitalRead(pulsador2);
int resultado = ! (estado_pulsador1 && estado_pulsador2); // Negar el resultado de hacer un AND con las dos entradas.
Serial.println(resultado);
}
A riesgo de equivocarme diría que no existen.
La forma es que hagas una AND y luego la niegues, eso ya lo sabes.
NOR lo mismo
EXNOR no se, para mi no existe EXOR sino XOR pero es semántica. una XOR negada es lo mismo.
C = !(A & B); // NAND
C = !(A | B); // NOR
C = !(A^B); // NXOR