crear una tabla de verdad de subfunciones basada en la tabla de verdad de la función principal

0

Tengo una pregunta sobre la siguiente tabla de verdad y funciones lógicas.

Necesito crear las tablas de verdad de las subfunciones en función de la información proporcionada. No hay información sobre qué puertas se están utilizando, así que no estoy seguro de cómo construir las tablas de verdad.

$$ \ begin {array} {| cccc | c | cccc | c |} a & b & c & húmedo; H & a & b & c & húmedo; H \\ \ hline 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 0 & 1 & 1 \\ 0 & 0 & 1 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 1 & 1 & 1 & 0 & 1 & 1 & 1 \\ 0 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 1 & 0 & 1 & 1 & 0 & 1 & 0 \\ 0 & 1 & 1 & 0 & 1 & 1 & 1 & 1 & 0 & 1 \\ 0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ \ end {array} $$

    
pregunta dmnte

3 respuestas

3

Para empezar, creo que es un problema pobre, porque no está muy claro cuál es el propósito general y, en general, no tiene una solución única como lo ha señalado BlueSky.

$$ \ begin {array} {ccc | ccc | ccl} a & b & c & e & c & húmedo; H & &erio; \\ \ hline \ hline 0 & 0 & 0 & &erio; 0 & 0 & 0 & &erio; \\ 0 & 0 & 0 & &erio; 0 & 1 & 0 & &erio; \\ 0 & 0 & 1 & &erio; 1 & 0 & 0 & &erio; ⬅ \\ 0 & 0 & 1 & &erio; 1 & 1 & 1 & &erio; \\ 0 & 1 & 0 & &erio; 0 & 0 & 0 & &erio; \\ 0 & 1 & 0 & &erio; 0 & 1 & 0 & &erio; \\ 0 & 1 & 1 & &erio; 1 & 0 & 1 & &erio; \\ 0 & 1 & 1 & &erio; 1 & 1 & 1 & &erio; \\ 1 & 0 & 0 & &erio; 0 & 0 & 0 & &erio; \\ 1 & 0 & 0 & &erio; 0 & 1 & 1 & &erio; ⬅ \\ 1 & 0 & 1 & &erio; 1 & 0 & 1 & &erio; \\ 1 & 0 & 1 & &erio; 1 & 1 & 1 & &erio; \\ 1 & 1 & 0 & &erio; 0 & 0 & 0 & &erio; \\ 1 & 1 & 0 & &erio; 0 & 1 & 0 & &erio; \\ 1 & 1 & 1 & &erio; 1 & 0 & 1 & &erio; \\ 1 & 1 & 1 & &erio; 1 & 1 & 1 & &erio; \\ \ end {array} $$

Estas son tablas de verdad una al lado de la otra, es decir, a la izquierda $$ e = G (a, b, c) $$ y a la derecha $$ H = F (e, c, d) $$

Ahora, es inmediatamente obvio que F no puede ser una puerta simple, es decir, no es un and , or , nand , nor , xor , not xor (biconditional) , H = 1 porque algunas líneas donde H = F(e,c,d) = c contienen ceros, por ejemplo línea 7.

Ahora, mirando la tabla un poco más, la mayoría de las veces, not c . De hecho, solo dos líneas no muestran este comportamiento, que marqué con ⬅.

Ahora, las líneas marcadas aparecen solo una vez con c y en cualquier otro lugar están e . Esto significa que la diferencia debe estar en la entrada F a e en esas líneas, es decir, 1 debe ser 0 para ambos grupos de líneas y e = 1 para todos los demás o viceversa. La elección de qué líneas tienen e = 0 y cuáles tienen e es arbitraria, por lo tanto, la solución a este problema no es única. Tenga en cuenta que los grupos de dos líneas comparten el mismo e = G(a,b,c) , porque las entradas a e = 1 son las mismas.

$$ \ begin {array} {ccc | ccc | ccl} a & b & c & e & c & húmedo; H & &erio; \\ \ hline \ hline 0 & 0 & 0 & 0 & 0 & 0 & 0 & &erio; \\ 0 & 0 & 0 & 0 & 0 & 1 & 0 & &erio; \\ 0 & 0 & 1 & 1 & 1 & 0 & 0 & &erio; ⬅ \\ 0 & 0 & 1 & 1 & 1 & 1 & 1 & &erio; \\ 0 & 1 & 0 & 0 & 0 & 0 & 0 & &erio; \\ 0 & 1 & 0 & 0 & 0 & 1 & 0 & &erio; \\ 0 & 1 & 1 & 0 & 1 & 0 & 1 & &erio; \\ 0 & 1 & 1 & 0 & 1 & 1 & 1 & &erio; \\ 1 & 0 & 0 & 1 & 0 & 0 & 0 & &erio; \\ 1 & 0 & 0 & 1 & 0 & 1 & 1 & &erio; ⬅ \\ 1 & 0 & 1 & 0 & 1 & 0 & 1 & &erio; \\ 1 & 0 & 1 & 0 & 1 & 1 & 1 & &erio; \\ 1 & 1 & 0 & 0 & 0 & 0 & 0 & &erio; \\ 1 & 1 & 0 & 0 & 0 & 1 & 0 & &erio; \\ 1 & 1 & 1 & 0 & 1 & 0 & 1 & &erio; \\ 1 & 1 & 1 & 0 & 1 & 1 & 1 & &erio; \\ \ end {array} $$

Por lo tanto, hemos etiquetado las líneas "especiales" con e = 0 y todas las líneas "regulares" con F , por lo tanto

$$ \ text {Líneas regulares:} \ quad \ quad \ overline {e} c \ quad \ quad \ text {Nuestra observación de que para la mayoría de las líneas $ H = c $} $$ $$ \ text {Línea 4:} \ quad \ quad \ quad ecd \ quad \ quad \ text {Primer grupo etiquetado, segunda línea.} $$ $$ \ text {Línea 10:} \ quad \ quad e \ overline {c} d \ quad \ quad \ text {Segundo grupo etiquetado, primera línea.} $$

Por lo tanto, podemos escribir F como $$ F (e, c, d) = \ bar {e} c \ vee ecd \ vee e \ bar {c} d $$ Con la tabla de verdad para G (lado derecho de la tabla) hecho, podemos leer %code% como $$ G (a, b, c) = \ overline {a} \ overline {b} c \ vee a \ overline {b} \ overline { c} $$

Problema resuelto. Reitero que creo que es una mala pregunta / problema, porque ambas puertas de hecho no son puertas lógicas simples "obvias". Sin embargo, espero que pueda quitar algo de mi solución a este problema.

    
respondido por el FRob
1

No estoy dispuesto a resolver este problema por completo porque es probable que aprendas poco del ejercicio. Pero comenzaría por construir primero un K-Map para la función H general y escribir la ecuación lógica para la representación mínima de H como una función de a, b, c y d. Luego puede comenzar a factorizar la expresión resultante para llegar a funciones secundarias que pueden producir una parte independiente de la expresión que es una función de a, b y c para producir el término e.

    
respondido por el Michael Karas
0

Es matemáticamente imposible calcular las subfunciones de una función conocida simplemente teniendo la tabla de verdad de la función.

si:

$$ h (a, b, c, d) = f (g (x), c, d) $$

Y si no conoce una de las subfunciones, no puede calcular la otra función.

En tu caso, solo sabes h (a, b, c, d). por lo tanto, no puedes saber cuáles son sus subfunciones.

    
respondido por el AHB

Lea otras preguntas en las etiquetas