es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Expresión (!a && b) || (!a && c) || (b && c) con el mínimo de compuertas.

Quiero crear un circuito lógico.

(!a && b) || (!a && c) || (b && c)

usando la menor cantidad posible de compuertas lógicas (~ a nand b) nand NOT, AND, OR, NAND, NOR, XOR, NXOR. Los tipos de compuertas pueden ser mixtos. He encontrado algunas calculadoras en línea que pueden convertir la expresión anterior en solo NANDs como

(!a nand b) nand (!a nand c) nand (b nand c)

Pero me pregunto si hay alguna forma de hacerlo utilizando menos de cuatro compuertas.

Tags:  

Answer

  1. Avatar for davy.ai

    Según el teorema de De Morgan, una compuerta NAND puede reemplazar cualquier combinación de una compuerta AND y una compuerta NOT. Por lo tanto, es posible utilizar solo tres compuertas NAND para crear el circuito lógico:

    1. Primero, podemos simplificar la expresión dada utilizando la ley distributiva:

      (!a && b) || (!a && c) || (b && c)

      = (!a && (b || c)) || (b && c)

    2. Ahora, podemos utilizar dos compuertas NAND para representar las dos compuertas OR:

      (!a nand (b nand c)) nand (b nand c)

    3. Finalmente, podemos utilizar una tercera compuerta NAND para representar la compuerta AND:

      (!a nand (b nand c)) nand (b nand c) nand (!a nand (b nand c))

    Por lo tanto, el circuito lógico se puede crear utilizando solo tres compuertas NAND.

Comments are closed.