INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia 1994. Febrero, primera semana. 2001. Febrero, primera semana (Gestión). ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: (A + B) C + A + B + C + D ⋅ C B Solución: [ ] ( A + B) ⋅ C ⋅ A ⋅B ⋅ C ⋅ D ⋅ (C + B) = ( A + B) ⋅ C ⋅ A ⋅ B ⋅ C ⋅ D ⋅ C + A ⋅ B ⋅ C ⋅ D ⋅ B = ( A + B) ⋅ C[0 + 0]= 0 ✎ Se desea diseñar un circuito lógico que permita realizar la tabla de verdad mostrada (las x simbolizan indiferencias). Encuentre la función booleana más simple que lo caracteriza. A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 f(A, B, C, D) X 1 1 1 0 0 0 0 1 0 1 0 0 0 0 0 Solución : CD AB 00 01 00 01 x 1 11 1 10 1 11 10 1 1 f(A, B, C, C, D) = A B + B D Comprobación mediante computadora (programa Electronics WorkBench) Situación tras definir la tabla. Respuesta tras pulsar el botón SIMP Como curiosidad, podemos ver el circuito con puertas AND, OR y NOT: Ejercicios de Funciones Lógicas 1 José Garzía 1994. Febrero. Segunda semana. ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: (A B + C) (A B + C D) + C + B Solución: A B + C + (A B + C D) + C B = A B ⋅ C + A B C D + C B = ( A + B)C + ( A + B )(C + D) + C B = A C + B C + A C + A D + B C + B D + C B = = A C + B C + A C + A D + B C + B D + C B + C B = A (C + C) + B(C + C) + C(B + B ) + A D + B D = A + B + C + A D + B D = A + B + C Comprobación mediante computadora Situación tras definir la expresión original Como paso intermedio, le pedimos la tabla de la verdad de la expresión original. La simplificación la realiza a partir de la tabla de la verdad. Ejercicios de Funciones Lógicas 2 INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia ✎ Se desea diseñar un circuito lógico que permita realizar la tabla de verdad mostrada. Encuentre la función booleana más simple que lo caracteriza. A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 f(A, B, C, D) 1 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 Solución : CD AB 00 00 01 11 1 10 1 01 11 10 1 1 1 1 f(A, B, C, C, D) = B D + A B C 1994. Septiembre. ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: A ⋅ (A + B + C) ⋅ (A + B + C) ⋅ (A + B + C) ⋅ (A + B + C) Solución: (A + B + C) ⋅ A ⋅ ( A + B + C) ⋅ (A + B + C) ⋅ (A + B + C) = (A + B + C)(A B + A C)(A + B + C)(A + B + C) = = (AB + AB + ABC + AC + ABC + AC)(A + B + C)(A + B + C) = (AB + ABC + AC)(A + AB + A C + BA + 0 + B C + AC + BC + 0) = = (AB + AC)(A + B C + B C) = AB + A B B C + A B B C + AC + A C B C + ABC = AB + AC + ABC = AB + AC = A(B + C) ✎ Simplifique al máximo la siguiente función expresada en los minterms de las variables A, B, C y D (el orden de mayor a menor significativo es este mismo): f = m0 + m1 + m3 + m5 + m7 + m8 + m9 + m11 + m13 + m15 Solución: CD AB 00 00 01 1 11 1 1 01 1 1 11 1 1 1 1 10 1 10 f =BC + D 1995. Febrero. Primera semana; y examen modelo de Sistemas. ✎ Simplifique la siguiente expresión utilizando el método que crea más conveniente: A C + A B (C D + C + D) + A B C D + A B C D + A B C D Solución: A C = A B C+ A B C = A BCD+ A BCD+ A B CD+ A B CD A B( C D + C + D) = A B C D + A B C + A B D = A B C D + A B C D + A B C D + A B C D + A B C D A B CD+ A B CD+ A B CD+ A B CD+ A B CD+ A BCD+ A BCD+ A BCD+ A BCD+ A B CD+ A B CD+ A B CD Estoy dando pasos hacia atrás, pues la expresión actual es más compleja que la inicial. Pero lo que voy buscando en primer lugar es llegar a un punto en el cual pueda aplicar algún método sistemático de simplificación (el basado en los diagramas de Karnaugh, en este caso). CD AB 00 01 11 00 01 1 1 1 1 11 10 Ejercicios de Funciones Lógicas 1 10 1 1 1 f = A B + A C + A C D = A (B + C) + A C D 3 José Garzía 1995. Febrero. Segunda semana. ✎ Simplifique la siguiente expresión utilizando el método que crea más conveniente: B (A C + C D) + A(B D + B C) + B C D Solución: B A C+B CD+ A BD+ A BC+B CD = A B CD+ A B CD+ A B CD+ A B CD+ A B CD+ A B CD+ A BCD+ A BCD+ A BCD+ A BCD C A D 00 01 11 10 1 1 1 1 1 1 1 1 1 B 00 01 11 10 f = A (B + D) + C D 1995. Septiembre. ✎ Sea un sistema de representación numérica en binario sin signo de cuatro bits b3b2b1b0 (dados de mayor a menor peso). Construya una función lógica que valga ‘1’ cuando un número dado en dicho código sea 0 o múltiplo de 4; y que valga ‘0’ en caso contrario. Solución : Número b3 b2 b1 b0 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Ejercicios de Funciones Lógicas f(b3, b2 , b1 , b0) 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 b1 b0 00 b3, b2 00 1 01 1 11 1 10 1 01 f = b1 b0 4 11 10 INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia 1997. Febrero. Primera semana. 2001. Febrero. Segunda semana (gestión). ✎ Dada la siguiente función lógica de cuatro variables: f = A + B ⋅ C + A + B ⋅ D + C ⋅ D a) Obtenga su tabla de la verdad, dando valores a cada una de las variables, sin necesidad de simplificar previamente. b) A partir de la tabla de la verdad, obtenga la expresión en maxterms de la función; y simplifíquela mediante el método de Karnaugh. Solución: a) A B C D 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 f A +B A +B⋅C A BD CD 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 1 0 1 0 0 1 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 f b) CD 00 01 10 (C + D) 0 0 (B + D) 0 0 0 0 11 AB 00 0 01 0 11 10 0 0 0 0 A f = A ⋅ (C + D) ⋅ (B + D) Ejercicios de Funciones Lógicas 5 José Garzía 1997. Septiembre (reserva), Sistemas. ✎ Sea un computador con un juego de quince instrucciones, cuyos códigos de operación se reseñan en la tabla. Se asegura que en un programa es imposible que aparezca una instrucción con un código de operación no válido. a) b) Encuentre la tabla de la verdad de una función lógica que valga ‘1’ si la instrucción en el registro de instrucción es aritmética, lógica, de comparación o de desplazamiento; y devuelva ‘0’ en caso contrario. Obtenga la expresión más simplificada posible de la función usando el método de Karnaugh por maxterms. nemotécnico move branch halt shift add sub mult div nop in out cmp and or not Código de operación 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 Solución: a) nemotécnico Tipo move branch halt shift add sub mult div nop in out cmp and or not Transferencia Salto Miscelánea Desplazamiento Aritmética Aritmética Aritmética Aritmética Miscelánea E-S E-S Comparación Lógica Lógica Lógica Código de operación A B C D 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 f 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 - f = ( A + B + C + D )⋅( A + B + C + D )⋅ ( A + B + C + D )⋅( A + B + C + D )⋅( A + B + C + D )⋅( A + B + C + D ) b) (B + D) CD AB 00 00 01 11 - 01 0 0 0 11 0 0 0 10 f = (B + D) ⋅ (B + C) = B + C ⋅ D Ejercicios de Funciones Lógicas 10 6 (B + C) INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia 1998. Febrero. Primera semana. Sistemas. ✎ Construir la función lógica f(b3, b2, b1, b0) más simple que valga 1 cuando la entrada sea el código Aiken correspondiente a una cifra decimal prima. Solución: b3 b2 b1 b0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 Valor Aiken 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 b 1 b0 0 1 2 3 4 5 6 7 8 9 f 0 1 1 1 0 1 0 1 0 0 00 01 11 10 1 - 1 - - 1 1 - 1 - b 3 b2 00 01 11 10 b2 ⋅ b1 b1 ⋅ b0 1998. Febrero. Segunda semana. Sistemas. ✎ Simplifique la siguiente expresión, usando el método que crea más conveniente: A ⋅B⋅C + A ⋅B⋅C⋅D + A ⋅C⋅D + A + C + A ⋅B⋅C⋅D Solución: Por Morgan: A ⋅B ⋅C + A ⋅B ⋅C ⋅D + A ⋅C ⋅D + A ⋅C + A ⋅B ⋅C ⋅D Desdoblando en minterms: A ⋅B ⋅C = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D A ⋅C ⋅D = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D A ⋅C = A ⋅B ⋅C + A ⋅B ⋅C = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D Eliminando términos repetidos: f = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D C A D 00 01 1 1 1 1 1 1 11 10 B 00 01 11 10 A ⋅C Ejercicios de Funciones Lógicas C ⋅D 7 José Garzía 1998. Septiembre, original (sistemas). ✎ Encuentre las expresiones canónicas de la función f (A, B, C, D) = A ⋅ B + C . Solución: Desdoblando en minterms: A ⋅B = A ⋅B ⋅C + A ⋅B ⋅C = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D C = A ⋅C + A ⋅C A ⋅C = A ⋅B ⋅C + A ⋅B ⋅C = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D A ⋅C = A ⋅B ⋅C + A ⋅B ⋅C = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D Eliminando términos repetidos: f = A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D + A ⋅B ⋅C ⋅D f = m2 + m3 + m6 + m7 + m8 + m9 + m10 + m11 + m14+ m15 Para pasar a la expresión en maxterms, llevamos acabo estos dos pasos: m1 + m4 + m5 + 1.- Encontrar los minterms ausentes: m0 + 2.- Complementar a 15 los subíndices: 15 14 11 10 m12 + 3 m13 2 f = M2 ⋅ M3 ⋅ M10 ⋅ M11 ⋅ M14 ⋅ M15 1999. Febrero. Segunda semana. ✎ Encuentre cuál de las cuatro funciones lógicas de tres variables f(A, B, C) dadas a continuación representa una función lógica diferente de las otras tres. a) m1 + m3 + m4 b) (A + C) ⋅ (A + B + C) c) A ⋅ (B + C) + A ⋅ C d) A⋅C + B⋅C Solución: Las transformaremos a suma de productos, para poder compararlas: a) m1 + m3 + m4 b) (A + C) ⋅ ( A + B + C) = A + C + A + B + C = A ⋅ C + A ⋅ B ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m1 + m3 + m4 A ⋅ (B + C) + A ⋅ C = A ⋅ (B + C) ⋅ A ⋅ C = ( A + (B + C)) ⋅ (A + C) = ( A + B ⋅ C) ⋅ (A + C) = A ⋅ A + A ⋅ C + A ⋅ B ⋅ C + C ⋅ B ⋅ C b) A ⋅C + A ⋅B ⋅C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m1 + m3 + m 4 c) A ⋅ C + B ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m0 + m1 + m3 + m4 Esta es la diferente. Ejercicios de Funciones Lógicas 8 INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia 1999. Septiembre, Sistemas. ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: (A ⋅ B + A ⋅ C ⋅ C + A ⋅ B + A ⋅ B ⋅ C ⋅ B + A ⋅ B)(A ⋅ C + A ⋅ C + C) Solución: Suprimiendo los productos de una variable por su negación: (A ⋅ B + A ⋅ B + A ⋅ B )(A ⋅ C + A ⋅ C + C) [ ][ Aplicando la propiedad distributiva (sacando factor común): A ⋅ (B + B ) + A ⋅ B (A + A ) ⋅ C + A C + C ] Cualquier variable más su negada produce un 1: [A ⋅ (1) + A ⋅ B][(1) ⋅ C + AC + C] = [A + A ⋅ B][C + AC + C] = (A + A ⋅ B)(1 + AC) = (A + A ⋅ B)(1) = A + A ⋅ B 1999. Septiembre, original (gestión). ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: ( A ⋅ B ⋅ C + B + C) ⋅ ( A ⋅ C + B) + A Solución: ( A ⋅ B ⋅ C + B + C) ⋅ ( A ⋅ C + B) + A = ( A ⋅ B ⋅ C + B + C) ⋅ ( A ⋅ C + B) ⋅ A = (( A ⋅ B ⋅ C + B + C) + ( A ⋅ C + B)) ⋅ A = (( A ⋅ B ⋅ C ⋅ B ⋅ C) + A ⋅ C ⋅ B ) ⋅ A = (A ⋅ B ⋅ C ⋅ B ⋅ C + A ⋅ C ⋅ B ) ⋅ A = A ⋅ A ⋅ B ⋅ C ⋅ B ⋅ C + A ⋅ A ⋅ C ⋅ B = A ⋅ B ⋅ C + A ⋅ B ⋅ C 2000. Febrero, primera semana (sistemas). ✎ Simplifique la siguiente expresión utilizando los teoremas del álgebra de Boole: (A + C + D) ⋅ (B + C + D) ⋅ (A ⋅ B + C + D) Solución: A ⋅ C ⋅ D + B ⋅ C ⋅ D + (A ⋅ B ) ⋅ C ⋅ D = A ⋅ C ⋅ D + B ⋅ C ⋅ D + ( A + B) ⋅ C ⋅ D = A ⋅ C ⋅ D + B ⋅ C ⋅ D + A ⋅ C ⋅ D + B ⋅ C ⋅ D Por una parte A ⋅C ⋅D + A ⋅C ⋅D = A ⋅C Por otra parte B ⋅C ⋅D + B ⋅C ⋅D = C ⋅D Así pues: (A + C + D) ⋅ (B + C + D) ⋅ (A ⋅ B + C + D) = A ⋅ C + C ⋅ D = C ⋅ ( A + D) 2000. Febrero, primera semana (gestión). ✎ Obtenga la expresión en minterms de la función f(A, B, C, D) = M1 ⋅ M2 ⋅ M4 ⋅ M5 ⋅ M7 ⋅ M9 ⋅ M10 ⋅ M11 ⋅ M13 ⋅ M15 Solución : Para pasar a la expresión en minterms, llevamos acabo estos dos pasos: M3 ⋅ M4 ⋅ M6 ⋅ 1.- Encontrar los maxterms ausentes: M0 ⋅ 2.- Complementar a 15 los subíndices: 15 12 11 9 M7 ⋅ 8 M8 ⋅ 7 M10 ⋅ 5 M11 ⋅ 4 M14 1 f = m1 + m4 + m5 + m7 + m8 + m9 + m11 + m12 + m15 Ejercicios de Funciones Lógicas 9 José Garzía 2000. Febrero, segunda semana (sistemas). ✎ Se desea diseñar un circuito lógico que permita realizar la tabla de la verdad mostrada a la derecha (donde ‘-‘ significa que la función f puede tomar cualquier valor). Encuentre la función booleana que permite hacerlo. A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 f(A, B, C, D) 1 1 0 0 1 1 0 0 0 0 0 0 0 CD 00 01 11 10 1 1 1 - 1 - AB 00 01 11 10 A ⋅C A ⋅B - f(A, B, C, D) = A ⋅ B + A ⋅ C 2000. Febrero, segunda semana (gestión). ✎ Obtenga la expresión en maxterms de la función f(A, B, C, D) = m0 + m3 + m7 + m9 + m12 + m15. Solución : Para pasar a la expresión en maxterms, llevamos acabo estos dos pasos: m2 + m4 + m5 + 1.- Encontrar los minterms ausentes: m1 + 2.- Complementar a 15 los subíndices: 15 13 11 10 m6 + 9 m8 + 7 m10 + 5 m11 + 4 m13 + 2 m14 1 f = M1 ⋅ M2 ⋅ M4 ⋅ M5 ⋅ M7 ⋅ M9 ⋅ M10 ⋅ M11 ⋅ M13 ⋅ M15 2000. Septiembre, original (sistemas). ✎ Minimice la función lógica f(A,B,C,D)=m0 + m1 + m2 + m3 + m4 + m5 + m6. Solución : A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 f(A, B, C, D) 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 Ejercicios de Funciones Lógicas CD AB 00 01 00 01 11 10 1 1 1 1 1 1 1 A ⋅D 11 10 A ⋅B A ⋅C f(A, B, C, D) = A ⋅ B + A ⋅ C + A ⋅ D = A ⋅ (B + C + D) 10 INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia La comprobación la hacemos con Electronics Workbench: 2000. Septiembre, original (Gestión). ✎ Escriba la función f(A, B, C) = A ⋅ B + C como suma de minitérminos (minterms). Solución: f(A, B, C) = A + B ⋅ (B + C) = A + B + B + C = ( A + B) + (B ⋅ C) = A + B + B ⋅ C Por una parte: A ⋅ B = A ⋅ B ⋅ (C + C) = A ⋅ B ⋅ C + A ⋅ B ⋅ C = m2 + m3 Por otra parte: C = ( A + A) ⋅ (B + B) ⋅ C = ( A ⋅ B + A ⋅ B + A ⋅ B + A ⋅ B) ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m1 + m3 + m5 + m7 Por tanto: f = m1 + m2 + m3 + m5 + m7 = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C 2000. Septiembre, original (Gestión). 2001. Febrero, primera semana (Gestión). ✎ ¿Cuánto vale la función lógica f(A,B,C,D)=m0 + m5 + m8 + m15 cuando A=B=C=D=1?. Solución: Como m15=A⋅B⋅C⋅D, f(1, 1, 1, 1)= m0 + m5 + m8 + m15 = 0 + 0 + 0 + 1 = 1 2001. Febrero, primera semana (Gestión). ✎ Escriba la función f(A, B, C) = A + B ⋅ B + C como suma de minitérminos (minterms). Solución: f(A, B, C) = A + B ⋅ (B + C) = A + B + B + C = ( A + B) + (B ⋅ C) = A + B + B ⋅ C Por una parte: A = A ⋅ (B + B) ⋅ (C + C) = A ⋅ (B ⋅ C + B ⋅ C + B ⋅ C + B ⋅ C) = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m 4 + m5 + m6 + m7 Por otra parte: B = B ⋅ ( A + A) ⋅ (C + C) = B ⋅ ( A ⋅ C + A ⋅ C + A ⋅ C + A ⋅ C) = B ⋅ A ⋅ C + B ⋅ A ⋅ C + B ⋅ A ⋅ C + B ⋅ A ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = m2 + m3 + m6 + m7 Por otra parte: B ⋅ C = ( A + A) ⋅ B ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C = m0 + m4 Ejercicios de Funciones Lógicas 11 José Garzía f = m0 + m2 + m3 + m4 + m5 + m6 + m7 Por tanto: 2001. Febrero, primera semana (sistemas). ✎ Simplifique la función lógica f(A,B,C,D)= M0 ⋅ M2 ⋅ M4 ⋅ M5 ⋅ M6 ⋅ M7 ⋅ M8 ⋅ M10 ⋅ M12⋅M13 ⋅ M14 ⋅ M15: Solución: f(A, B, C, D) = ( A + B + C + D) ⋅ ( A + B + C + D) ⋅ ( A + B + C + D) ⋅ ( A + B + C + D) ⋅ ( A + B + C + D) ⋅ ( A + B + C + D) ⋅ (A + B + C + D) ⋅ (A + B + C + D) ⋅ (A + B + C + D) ⋅ (A + B + C + D) ⋅ (A + B + C + D) ⋅ (A + B + C + D) A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 f(A, B, C, D) 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 CD AB C+D C+D C+D C+D A +B 0 A +B A +B 0 0 0 0 0 0 0 0 0 0 A +B 0 B D f(A, B, C, D) = B + D 2001. Febrero, segunda semana (sistemas). ✎ Sea la función lógica de tres variables f(A,B,C)= A ⋅ B + C ⋅ A ⋅ B + B ⋅ C . Encuentre una forma canónica. Solución: A ⋅ B + C ⋅ A ⋅ B + B ⋅ C = A ⋅ B ⋅ C ⋅ A ⋅ B + B ⋅ C = (A + B) ⋅ (C + A + B) + B ⋅ C = (A + B + B ⋅ C) ⋅ (C + A + B + B ⋅ C) = [(A + B + B ) ⋅ (A + B + C)]⋅ [(C + A + B + B ) ⋅ ((C + A + B + C)]= [(A + B + B ) ⋅ (A + B + C)]⋅ [1⋅ 1] = (A + B ) ⋅ (A + B + C) = (A + B + 0 ) ⋅ (A + B + C) = (A + B + C ⋅ C) ⋅ (A + B + C) = (A + B + C ) ⋅ (A + B + C) ⋅ (A + B + C) = (A + B + C ) ⋅ (A + B + C) = M4 ⋅ M5 2001. Febrero, segunda semana (Gestión). ✎ ( )( )( )( Dada la función A + C + D ⋅ A + B + D ⋅ A + B + C ⋅ A + B + C Solución: ) (A + C + D) = (A + C + D) + (B ⋅ B) = (A + C + D + B)⋅ (A + C + D + B) = (A + B + C + D)⋅ (A + B + C + D) (A + B + D) = (A + B + D) + (C ⋅ C) = (A + B + D + C)⋅ (A + B + D + C) = (A + B + C + D)⋅ (A + B + C + D) (A + B + C) = (A + B + C) + (D ⋅ D) = (A + B + C + D)⋅ (A + B + C + D) (A + B + C) = (A + B + C) + (D ⋅ D) = (A + B + C + D)⋅ (A + B + C + D) Por tanto: (A + C + D)⋅ (A + B + D)⋅ (A + B + C)⋅ (A + B + C) = (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D)⋅ (A + B + C + D) = M0 ⋅ M4 ⋅ M1 ⋅ M3 ⋅ M8 ⋅ M9 ⋅ M12 ⋅ M13 = M0 ⋅ M1 ⋅ M3 ⋅ M4 ⋅ M8 ⋅ M9 ⋅ M12 ⋅ M13 2001. Septiembre, original (sistemas). ✎ ( )( ) Sea la función lógica de tres variables f(A,B,C)= A ⋅ B + C ⋅ A ⋅ B ⋅ B + C . Encuentre una forma canónica. Solución: Ejercicios de Funciones Lógicas 12 INGENIERÍA TÉCNICA en INFORMÁTICA de SISTEMAS y de GESTIÓN de la UNED ASIGNATURA: ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I Tutoría del Centro Asociado de Plasencia A ⋅ B ⋅ B + A ⋅ B ⋅ C + C ⋅ A ⋅ B ⋅ B + C ⋅ A ⋅ B ⋅ C = A ⋅ B + A ⋅ B ⋅ C + 0 + 0 = A ⋅ B ⋅ (C + C) + A ⋅ B ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C + A ⋅ B ⋅ C = A ⋅ B ⋅ C + A ⋅ B ⋅ C = m2 + m3 2002. Febrero, primera semana (sistemas). ✎ Hallar la 2ª forma canónica de la siguiente función f(A,B): f(A, B) = A + A·B Solución: f(A, B) = A + A·B = A·A·B = A·( A + B) = ( A + 0)·( A + B) = ( A + B·B)·( A + B) = ( A + B)·(A + B)·( A + B) = M2·M3 ·M1 2002. Febrero, primera semana (gestión). ✎ Obtener la expresión en minterms de la función: f(A, B, C, D) = M1 · M2 · M5 · M9 · M12 · M13 Solución: Para pasar a la expresión en minterms, llevamos acabo estos dos pasos: M3 ⋅ M4 ⋅ M6 ⋅ 1.- Encontrar los maxterms ausentes: M0 ⋅ 2.- Complementar a 15 los subíndices: 15 12 11 9 M7 ⋅ 8 M8 ⋅ 7 M10 ⋅ 5 M11 ⋅ 4 M14 ⋅ 1 M15 0 f = m0 + m1 + m4 + m5 + m7 + m8 + m9 + m11 + m12 + m15 ✎ a) b) c) d) Simplifique la siguiente expresión utilizando las leyes de Morgan y los teoremas del álgebra de Boole: ( A + B)·(B + C)·(C + D) A + B´+C. AB + B´. B´+C. A´+B´+C. Solución: ( A + B)·(B + C)·(C + D) = ( A + B) + (B + C) + (C + D) = ( A + B) + (B + C) + (C + D) = ( A·B) + (B + C) + (C + D) = ( A·B) + (B + C) + (C·D) = ( A·B) + B + C + C·D = ( A·B) + (B + C) = ( A + B + C)·(B + B + C ) = ( A + B + C)·(1 ) = A + B + C 2002. Febrero, segunda semana (sistemas). ✎ Simplifique la siguiente función f(A, B, C): f(A, B, C) = (A + A·B ) (B + A·C·(B + A·C) + B Solución: f(A, B, C) = (A + A·B ) + (B + A·C·(B + A·C) + B = (A + A·B ) + (B + B + A·C·(B + A·C) = (A + A·B ) + (1 + A·C·(B + A·C) = (A + A·B ) + 1 = (A + A·B ) + 0 = (A + A·B ) = A·( A·B ) = A·( A + B) = A · A + A·B = A + A·B = A ·1 + A·B = A·(1 + B) = A·(1) = A Ejercicios de Funciones Lógicas 13 José Garzía