D.I.I.C.

C Arquitectura de Sistemas Computacionales

CAPITULO 6 .- ÁLGEBRA DE BOOLE INTRODUCCIÓN.

E

n 1854 George Boole introdujo una notación simbólica para el tratamiento de variables cuyo valor podría ser verdadero o falso (variables binarias) Así el álgebra de Boole nos permite manipular relaciones proposicionales y cantidades binarias. Aplicada a las técnicas digitales se utiliza para la descripción y diseño de circuitos más económicos. Las expresiones booleanas serán una representación de la función que realiza un circuito digital. En estas expresiones booleanas se utilizarán las tres operaciones básicas (AND, OR NOT) para construir expresiones matemáticas en las cuales estos operadores manejan variables booleanas (lo que quiere decir variables binarias).

El estudio de los sistemas numéricos nos ha permitido visualizar que el sistema binario tiene una implementación natural mediante algún dispositivo electrónico como por ejemplo, un interruptor que habilita o deshabilita una variable eléctrica como son Voltaje e Intensidad de corriente. El estudio de los códigos nos entregó una forma compacta para la representación de números y símbolos alfanuméricos de uso habitual en nuestro lenguaje. En lo que sigue, estudiaremos la base técnica en la cual se sustenta el funcionamiento de los diferentes circuitos electrónicos digitales, los cuales permiten desarrollar funciones específicas.

6.1 ÁLGEBRA DE BOOLE.
Un conjunto ℜ sobre el cual se han definido operaciones binarias (+, *), se llama álgebra de Boole, si cumple los postulados: Postulado 1: La multiplicación y la suma son conmutativas. i) a+b=b+a ii) a·b=b·a Postulado 2: ℜ contiene elementos neutros, 0 y 1, con respecto a la + y a la *, tal que: i) a+0=a ii) a·1=a

Capitulo 6.- Álgebra de Boole

Página 1

D.I.I.C.C Arquitectura de Sistemas Computacionales

Postulado 3: Cada operación es distributiva respecto a la otra, es decir: ∀ a, b, c ∈ ℜ se verifica que: i) a+b·c = (a+b)·(a+c) ii) a·(b+c) = a·b + a·c Postulado 4: Cada operación tiene elemento inverso, es decir: ∀ a ∈ ℜ ∃ a ∈ ℜ tal que: i) a+ a =1 ii) a· a =0 Un álgebra de boole satisface el principio de dualidad: "Todo teorema deducible de los 4 postulados de un álgebra Booleana sigue siendo válido si se intercambian los símbolos + y *, los elementos 0 y 1 entre si." En consecuencia basta demostrar uno de los enunciados para posteriormente deducir el otro por dualidad. Ejemplo 1: Demostrar que ∀ a ∈ ℜ a+a=a. Dem: (a+a) = (a+a)·1 = (a+a)(a+ a ) = a+(a· a ) = a+0 =a /por postulado 2 /por postulado 4 /por postulado 3 /por postulado 4 /por postulado 2

Ejemplo 2: Demostrar que ∀ a ∈ ℜ a·0=0. Dem: (a·0) = = = = = (a·0)+0 a·0+a· a a·( a +0) a· a 0 /por /por /por /por /por postulado postulado postulado postulado postulado 2 4 3 2 4

Ejemplo 3: Demostrar que ∀ a,b ∈ ℜ a+a·b=a Dem: a+a·b = a·1+a·b = a·(1+b) = a·1 =a Ejercicios. Demostrar: a) a·a = a b) a+1 = 1 c) a·(a+b) = a d) a·( a +b) = a·b /por /por /por /por postulado 2 postulado 3 demostración anterior postulado 2

Capitulo 6.- Álgebra de Boole

Página 2

1 Teoremas del Álgebra de Boole 1. Asociatividad a) asociatividad del “+” X + (Y + Z) = (X + Y) + Z b) asociatividad del “·” X · (Y · Z) = (X · Y) · Z 7.. Conmutatividad a) conmutatividad del “+” X+Y=Y+X b) conmutatividad del “·” X· Y=Y ·X 6.Álgebra de Boole Página 3 .I.1. Regla del cero y la unidad a) X + 0 = X b) X + 1 = 1 c) X · 1 = X d) X · 0 = 0 2.D. Complementación a) x + x=1 b) X * X = 0 4.I.C Arquitectura de Sistemas Computacionales 6. Idempotencia o potencias iguales a) X + X = X b) X · X = X 3. Distribuitividad a) distribuitividad del “+” X + (Y · Z) = (X + Y) · (X + Z) b) distribuitividad del “·” X · (Y + Z) = (X · Y) + (X · Z) 8.C. Involución 5. Leyes de absorción a) X · (X + Y)= X b) X · ( c) + Y)= X·Y ·Y )= X e) X + X·Y = X f) X + g) ·Y = X + Y + X·Y = +Y · (X + Y)= d) (X + Y) · (X + h) X·Y + X· = X Capitulo 6.

a+b ⇒ 2 variables x+ x ⇒ 1 variable Ejercicios: Simplificar: a) f(x.D.. Sea ℜ = {a. Nº de variables de una función: Es el número de elementos distintos que aparecen en una función. Por ejemplo dado el postulado 0+0 = 0 se obtiene el dual haciendo 1·1 = 1 6.C Arquitectura de Sistemas Computacionales 9. Teoremas de DeMorgan a) b) c) d) 10.c.y) = (x+y) + ( x + y ) · y = (x+y) + x · y + y · y = (x+y) + x · y = x+y+ x + y =1 Capitulo 6.I. considerándose que una variable y su complemento son una única variable..} un álgebra Booleana.I. Variable: Un símbolo que representa un elemento de ℜ . también lo será su dual.b. El dual de una expresión se obtiene intercambiando las ocurrencias de OR por AND. Función: Combinación finita de elementos de ℜ a través de los operadores “·” y “+”.C. 0 por 1 y viceversa.2 FUNCIONES BOOLEANAS.. En efecto siguiendo el dual de la demostración del teorema. definimos: Constante: Un valor dado que puede tomar un elemento de ℜ . se obtiene la demostración del dual del teorema. Teoremas generalizados de DeMorgan a) b) Dualidad Los postulados y teoremas presentados anteriormente están representados en pares... La razón es que cada teorema posee lo que llamamos un dual. como por ejemplo 0 y 1.Álgebra de Boole Página 4 .1. Si un teorema es valido.

D. Capitulo 6.I.C.y. C·A.z) = x + x·y·z + x ·y·z + w·x + w ·x + x ·y = = = = x + x ·y·z + x + x ·y x + yz + x+y x+y+y·z x+y 6. X. A+B. Como se mostró anteriormente una función puede tener infinidad de representaciones.3 Formas Canónicas Definiciones: Literal: se refiere a una variable o a su complemento (por ej. ·Y·Z ) Termino Suma (SOP): Es un grupo de literales que se encuentran relacionados entre si por un OR (por ej. Si es una suma se denominará maxtermino ( ∏ (M ) ). A·B.Álgebra de Boole Página 5 .C Arquitectura de Sistemas Computacionales b) f(w. se denominará mintermino ( ∑ (m) ).1. +Y+Z ) Termino Normal: Término producto o termino suma en el que un literal no aparece más de una vez Termino Canónico: Término en el que se encuentra exactamente uno de cada uno de los literales de la función. pero solo una representación en forma canónica. C+A. Forma Normal de una función: Es la que está constituida por términos normales.I.4 Forma canónica de funciones booleanas La importancia de la forma canónica estriba en el hecho de ser UNICA.. Puede estar en la forma suma de términos productos o productos de términos sumas.1.x. Forma Canónica de una función: Es aquella constituida exclusivamente por términos canónicos que aparecen una sola vez. A. 6. ) Termino Producto (POS): Es un grupo de literales que se encuentran relacionados entre si por un AND (por ej. Si el término canónico es un producto.

donde falte un literal para que 6. la función: F ( X .4.2 Forma canónica producto de sumas (POS): Es aquella constituida exclusivamente por términos canónicos sumas (maxterminos) multiplicados que aparecen una sola vez. Z ) = ( X + Y + Z )( X + Y + Z )( X + Y + Z ) Capitulo 6. De esta forma. Y . Y=0. Z=1 que representa el numero binario 001. (También de una manera mas formal Suma de minterminos o Producto de maxterminos) Para obtener algebraicamente la forma canónica de una función se puede utilizar los teoremas de expansión canónica: Teorema 1: Para obtener la forma canónica de una función suma de productos se multiplicará por un termino de la forma (X + que el termino sea canónico. Y . Así por ejemplo el mintermino Z corresponde a combinación X=0. Por ejemplo: F ( X .C. 4.5.I.7 m(1.4.4.6.Y.1.. cuyo valor decimal es 1. se utiliza una notación especial.1.7) que quiere decir la 6. Z ) = X Y Z + X Y Z + X Y Z + XY Z + XYZ Para simplificar la escritura en forma de suma canónica de productos.C Arquitectura de Sistemas Computacionales Existen dos formas canónicas de una función: Suma De Productos o Producto de Sumas.Álgebra de Boole Página 6 . Por ejemplo: F ( X . A este mintermino lo identificaremos entonces como m1. A cada mintermino se le asocia un número binario de n bits resultantes de considerar como 0 las variables complementadas y como 1 las variables no complementadas. Y . Z ) = X Y Z + X Y Z + X Y Z + XY Z + XYZ se puede expresar como: F(X.6. ) donde falte un literal para producto de Teorema 2: Para obtener la forma canónica de una función sumas se sumará un termino de la forma X · el termino sea canónico.I.Z) = sumatoria de los minterminos 1.1 Forma canónica suma de productos (SOP): Es aquella constituida exclusivamente por términos canónicos productos (minterminos) sumados que aparecen una sola vez.5.D.

Y=0. cuyo valor decimal es 4. Valor X Y Z Mintermino decimal 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 X Y Z =m0 X Y Z =m1 X Y Z =m2 X Y Z =m3 X Y Z =m4 X Y Z =m5 X Y Z =m6 X Y Z =m7 Maxtermino X +Y +Z =M0 X +Y +Z =M1 X +Y +Z =M2 X +Y +Z =M3 X +Y +Z =M4 X +Y +Z =M5 X +Y +Z =M6 X +Y +Z =M7 Ejemplo 1.2. Z ) = ( X + Y + Z )( X + Y + Z )( X + Y + Z ) Se puede expresar como: F(X. Capitulo 6. Así por ejemplo el maxtermino corresponde a combinación X=1. en este caso se hace al contrario de antes. y cada maxtérmino con la combinación para la que produciría un 0. A cada maxtermino se le asocia un número binario de n bits resultantes de considerar como 1 las variables complementadas y como 0 las + Y + Z variables no complementadas.C Arquitectura de Sistemas Computacionales Análogamente al caso anterior. indicando los maxterminos.YZ) = producto de los maxterminos 0. En la tabla de la derecha se muestran los minterminos y los maxterminos asociados con cada combinación en una tabla de verdad de 3 variables. Y .C.2. la función: F ( X . De esta forma. Z=0 que representa el numero binario 100. F = X + Y Z .3 M(0.D. A este maxtermino lo identificaremos entonces como M4..3) que quiere decir el En resumen.I. Exprese la siguiente función como una suma de minterminos: Hay dos formas de resolver este problema. Para los maxtérminos la regla es la inversa.Álgebra de Boole Página 7 . De acuerdo con esta tabla para determinar el término producto o suma se hace lo siguiente: para los minterminos cada variable no complementada se asocia con un 1 y cada variable complementada se asocia con 0. podemos simplificar la expresión de la función.I. Sin embargo. cada mintermino se asocia con la combinación de entrada para la que la función produciría un 1.

X Y Z F= X +YZ minterminos 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 1 0 0 1 1 1 1 XYZ XYZ XYZ XYZ XYZ Se evalúa la función para todas las combinaciones y se toman los minterminos de la tabla para los cuales la función vale 1. Exprese la siguiente función como un producto de maxterminos: _ F = X +YZ De nuevo. _ X + YZ _ _ _ _ X ( Y+ Y ) ( Z + Z ) + Y Z ( X + X ) _ _ _ _ _ ( X Y + X Y ) ( Z + Z ) + YZ X + Y Z X _ _ __ _ __ X Y Z + X YZ + X YZ + X YZ + X Y Z + X YZ __ __ _ _ X Y Z + X YZ + X YZ + X YZ + X Y Z Ejemplo 2.C Arquitectura de Sistemas Computacionales Forma 1.I.6. Capitulo 6.Álgebra de Boole Página 8 .7 Forma 2.4.5. 4.D..6. Aplicando los teoremas de expansión canónica para las variables faltantes.I. Se puede obtener la tabla de verdad de la expresión y entonces tomar los minterminos. __ __ _ _ La respuesta es :F= X Y Z + X Y Z + X Y Z + X Y Z + X Y Z Otra notación que podemos utilizar es: F= m(1. se puede resolver construyendo una tabla de verdad o con manipulación algebraica.7) que quiere decir la sumatoria de los minterminos 1.5.C.

.I.3) que quiere decir el producto de los maxterminos 0.C.D. Tomando los maxterminos desde la tabla de verdad. y Mi es el maxtermino.7) Capitulo 6.3. Aplicando el teorema de expansión canónica. (X+Y+Z) (X+Y+Z) _ _ _ La respuesta es: F = ( X + Y + Z ) ( X + Y + Z ) ( X + Y + Z ) Otra notación que podemos utilizar es: F= M(0.I.3 Forma 2.2. _ X +YZ _ ( X +Y ) ( X + Z ) _ _ _ ( X + Y + Z Z ) (X + Z + YY ) _ _ _ _ ( X +Y+ Z ) ( X +Y+ Z ) ( X + Z +Y ) ( X + Z +Y ) _ _ _ _ ( X +Y+ Z ) ( X +Y+ Z ) ( X +Y+ Z ) ( X +Y+ Z ) _ _ _ ( X +Y+ Z ) ( X +Y+ Z ) ( X +Y+ Z ) _ _ _ ( X +Y+ Z ) ( X +Y+ Z ) ( X +Y+ Z ) Note la simetría que existe entre la suma de productos y el producto de sumas de una expresión.4. Si mi es el mintermino para la combinación i. Se obtiene la tabla de verdad de la función. m i =M i Para convertir de una forma canónica a otra se intercambian los signos y y se reemplazan los números correspondientes a las combinaciones no incluidas el la forma original.1.2.5.Álgebra de Boole Página 9 .C Arquitectura de Sistemas Computacionales Forma 1.6) = m(0. la respuesta es: X Y Z F= X +YZ maxterminos 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 1 0 0 1 1 1 1 Se evalúa la función para todas las combinaciones y se (X+Y+Z) toman los maxtermino de la tabla para los cuales la función vale 0. Por ejemplo: M(2.

Un dígito binario se denomina un bit. Por ejemplo: La siguiente es una forma normal suma de productos: __ XY+XYZ La siguiente es una forma normal producto de sumas: _ (Y+X)(X+Z)(Y) A lo largo de este curso la forma que se utilizará con preferencia será la de suma de productos 6. los computadores funcionan más confiablemente si sólo utilizan dos estados equiprobables. cierto o falsa. los dígitos binarios o grupos de bits pueden utilizarse para desarrollar Capitulo 6.I. tales como dígitos decimales o letras de alfabeto. Debido al hecho que los componentes electrónicos atienden a dos estados (encendido / apagado) y que la lógica humana tiende a ser binaria (esto es. pero no se requiere que los términos sean minterminos o maxterminos. Los dígitos decimales por ejemplo... si o no) se utiliza el sistema binario y se dice que son binarias.1.3 Forma normal de funciones booleanas Otra manera importante de expresar expresiones booleanas es la forma normal.Álgebra de Boole Página 10 . Tiene la misma estructura básica suma de productos o producto de sumas. Utilizando diversas técnicas de codificación los grupos de bits pueden hacerse que representen no solamente números binarios sino también otros símbolos discretos cualesquiera. Los computadores digitales utilizan el sistema de números binarios. La palabra Digital implica que la información que se representa en el computador por medio de variables que toman un número limitado de valores discretos o cuantizados. proporcionan 10 valores discretos (0 . que tiene dos dígitos 0 y 1.C Arquitectura de Sistemas Computacionales 6. Estos valores son procesados internamente por componentes que pueden mantener un número limitado de estados discretos.4. como su nombre lo indica. es un sistema digital que realiza diversas operaciones de cómputo. Utilizando arreglos binarios y diversas técnicas de codificación.D. La información está representada en los computadores digitales en grupos de bits.C.I.5 Compuertas Lógicas: Un computador digital.1. Como sabemos en la práctica. 9).

.I.C. y tablas de verdad de ocho compuertas. La lógica binaria tiene que ver con variables binarias y con operaciones que toman un sentido lógico. A continuación se detallan los nombres. Las diversas compuertas lógicas se encuentran comúnmente en sistemas de computadores digitales. un sistema digital particular puede emplear una señal de 3 [volts ] para representar el binario “1” y 0. Las relaciones entrada salida de las variables binarias para cada compuerta pueden representarse en forma tabular en una tabla de verdad. La región intermedia entre las dos regiones permitidas se cruza solamente durante la transición de estado. Los terminales de entrada de un circuito digital aceptan señales binarias dentro de las tolerancias permitidas y los circuitos responden en los terminales de salida con señales binarias que caen dentro de las tolerancias permitidas. Cada compuerta tiene un símbolo gráfico diferente y su operación puede describirse por medio de una función algebraica. Por ejemplo. en forma algebraica o tabular. funciones algebraicas.Álgebra de Boole Página 11 . La siguiente ilustración muestra un ejemplo de una señal binaria. La información binaria se representa en un sistema digital por cantidades físicas denominadas señales. gráficos. cada valor binario tiene una desviación aceptable del valor nominal. Es utilizada para escribir.D.I. Las señales eléctricas tales como voltajes existen a través del sistema digital en cualquiera de dos valores reconocibles y representan un a variable binaria igual a 1 o 0. La manipulación de información binaria se hace por circuitos lógico que se denominan Compuertas.C Arquitectura de Sistemas Computacionales conjuntos completos de instrucciones para realizar diversos tipos de cálculos. Capitulo 6. símbolos. Como se muestra en la figura. Las compuertas son bloques del hardware que producen señales del binario 1 ó 0 cuando se satisfacen los requisitos de entrada lógica. La manipulación y procesamiento de información binaria.5 [volts ] para el binario ”0”.

similar a la operación de aritmética de suma.I. la salida es 0.. Es decir cambia los valores binarios 1 a 0 y viceversa. un separador puede excitar muchas otras compuertas que Capitulo 6. El círculo pequeño en la salida de un símbolo gráfico de un inversor designa un complemento lógico. Sin embargo.I. Podemos utilizar o un punto entre las variables o concatenar las variables sin ningún símbolo de operación entre ellas. El símbolo algebraico de la función OR es (+). Por ejemplo. la corriente suministrada en la entrada es mucho más pequeña que la corriente producida en la salida. Compuerta OR: La compuerta OR produce la función OR inclusiva. Este circuito se utiliza simplemente para amplificación de la señal. Produce el NOT. Las compuertas AND pueden tener más de dos entradas y por definición. Las compuertas OR pueden tener más de dos entradas y por definición la salida es 1 si cualquier entrada es 1. o función complemento. de otra manera. El símbolo algebraico utilizado para el complemento es una barra sobra el símbolo de la variable binaria. la salida es 0. Estas condiciones también son especificadas en la tabla de verdad para la compuerta AND. esto es. La compuerta AND produce la unión lógica AND: esto es: la salida es 1 si la entrada A y la entrada B están ambas en el binario 1: de otra manera. Compuerta Separador: Un símbolo triángulo por sí mismo designa un circuito separador no produce ninguna función lógica particular puesto que el valor binario de la salida es el mismo de la entrada.C Arquitectura de Sistemas Computacionales Compuerta AND: Cada compuerta tiene una o dos variables de entrada designadas por A y B y una salida binaria designada por x. la compuerta NOT cambia su estado al valor 1 y viceversa.Álgebra de Boole Página 12 .D. la salida es 1 si la entrada A o la entrada B o ambas entradas son 1. un separador que utiliza 3 volts para el binario 1 producirá una salida de 3 volts cuando la entrada es 3 volts.C. la salida es 1 si cualquier entrada es 1. De ésta manera. La tabla muestra que la salida x es 1 solamente cuando ambas entradas A y B están en 1. Compuerta NOT (Inversor): El circuito inversor invierte el sentido lógico de una señal binaria. Si la variable binaria posee un valor 0. El símbolo de operación algebraico de la función AND es el mismo que el símbolo de la multiplicación de la aritmética ordinaria (*).

La salida de esta compuerta es 1 si cada entrada es 1 pero excluye la combinación cuando las dos entradas son 1. La salida de ésta compuerta es 1 solamente si ambas entradas son tienen el mismo valor binario. Compuerta NOR exclusivo (XOR): El NOR exclusivo como se indica por el círculo pequeño en el símbolo gráfico. y la salida es siempre el complemento de las funciones AND u OR. esto es.. la salida es 1 si un número impar de entrada es 1. la salida es 1 si ninguna de las entradas son 0 (todas las entradas son 1) o si dos de las entradas son 0 (una entrada es 1).AND. La función OR exclusivo tiene su propio símbolo gráfico o puede expresarse en términos de operaciones complementarias AND.C. Puesto que las funciones OR exclusivo y funciones de equivalencia no son siempre el complemento la una de la otra. como se indica por el símbolo gráfico que consiste en un símbolo gráfico AND seguido por un pequeño círculo. Compuerta NAND: Es el complemento de la función AND. Compuerta OR exclusivo (XOR): La compuerta OR exclusiva tiene un símbolo gráfico similar a la compuerta OR excepto por una línea adicional curva en el lado de la entrada.D. Una investigación cuidadosa revelará que el OR exclusivo y las funciones de equivalencia son el complemento la una de la otra cuando las Capitulo 6. Compuerta NOR: La compuerta NOR es el complemento de la compuerta OR y utiliza un símbolo gráfico OR seguido de un círculo pequeño. Una designación más adecuada habría sido AND invertido puesto que Es la función AND la que se ha invertido. Así en una función OR (impar) exclusiva de tres entradas. OR. La función de equivalencia es una función par. Para un función de equivalencia de tres entradas.I. la salida es 1 si solamente la entrada es 1 o si todas las entradas son 1. respectivamente. Tanto las compuertas NAND como la NOR pueden tener más de dos entradas. Nosotros nos referiremos a la función NOR exclusivo como la función de equivalencia. La designación NAND se deriva de la abreviación NOT . Un nombre más adecuado para la operación OR exclusivo sería la de una función impar.I. su salida es 1 si un número par de entradas es 0. esto es.Álgebra de Boole Página 13 .C Arquitectura de Sistemas Computacionales requieren una cantidad mayor de corriente que de otra manera no se encontraría en la pequeña cantidad de corriente aplicada a la entrada del separador.

D.C..I. Estas dos compuertas están comúnmente disponibles con dos entradas y solamente en forma rara se encuentran con tres o más entradas. RESUMEN COMPUERTAS LÓGICAS: Símbolo Algebraica Tabla de Verdad Función AND aA X = A * b ⇒ AB OR X = A+ B Inversor (Not) X = A' ⇒ A Separador X =A NAND X = ( AB )' Capitulo 6. pero las dos funciones son iguales cuando el número de entradas es impar.Álgebra de Boole Página 14 .C Arquitectura de Sistemas Computacionales compuertas tienen un número par de entradas.I.

Equivalencia) X = A ⊗ B⇒ A B + AB Tabla Resumen de Compuertas Lógicas NAND OR NOR Var Var AND (+) A B (*) aA OR EX ( ⊕ ) NOREX ( ⊗ ) A B + AB A B + AB 0 0 1 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 1 0 0 1 Retomemos el teorema DeMorgan: El teorema DeMorgan es muy importante al tratar compuertas NOR y NAND.I.D. Similarmente. una función NAND Capitulo 6.C Arquitectura de Sistemas Computacionales Símbolo Algebraico NOR Tabla de Verdad Función X = ( A + B)' OR (Exclusivo XOR) X = A ⊕ B ⇒ A B + AB NXOR (Exclusivo.C.. Expresa que una compuerta NOR que realiza la función (x + y)’ es equivalente a la expresión función xy’.Álgebra de Boole Página 15 .I.

El inversor AND para la compuerta NOR proviene del teorema DeMorgan y de la convención de que los círculos pequeños denotan complementación.C.. Similarmente la compuerta NAND también posee dos símbolos gráficos.I.Álgebra de Boole Página 16 . Para ver cómo se utiliza la manipulación del álgebra Booleana para simplificar circuitos digitales considere el diagrama lógico de la siguiente figura. La salida de la primera compuerta NAND es. obtenemos: x = ( A’ + B )’ + B = AB’ + B Note que el teorema DeMorgan ha sido aplicado tres veces ( para demostrar su utilización ) pero podría ser aplicado solamente una vez de la siguiente manera: x = [ ( AB’ )* B´ ] ‘ = AB’ + B La expresión para x puede simplificarse por aplicación de las relaciones mencionadas anteriormente: Capitulo 6. las compuertas NOR y NAND tienen dos símbolos gráficos distintos como se muestra en la figura: En vez de representar una compuerta NOR por el símbolo gráfico OR seguido por un círculo. por el teorema DeMorgan . Utilizando el teorema DeMorgan dos veces. La salida del circuito es la operación NAND de este término y B’.D. nosotros podemos representarla por un símbolo gráfico AND precedido por círculos en todas las entradas.I. (AB)’ = A’ + B.C Arquitectura de Sistemas Computacionales puede ser expresada bien sea por (xy)’ o por x’ + y’ por esta razón. x= ( A’ + B ) * B’ ]‘ Diagrama lógico.

DEFINICIONES BÁSICAS: Definición 1: Minterm de n variables (m) Es el producto Booleano de las n variables. Dentro de las representaciones esquemáticas de una función Booleana.z)=Σm(2.I.Álgebra de Boole Página 17 .5) F(x.C Arquitectura de Sistemas Computacionales x = AB’ + B = B + AB’ = ( B + A) ( B + B’ ) = ( B + A) * 1 =B+A=A+B El resultado final produce una función OR y puede ser implementado con una sola compuerta OR como se muestra en la figura parte (b) del diagrama lógico..xn) puede i) Como forma canónica de suma de producto.Salida simplemente obteniendo la tabla de verdad para cada uno de ellos.6.4. 6. donde cada variable está presente en su valor verdadero o falso. ésta es una de las más útiles. x2. Definición 2: Maxterm de n variables (M) Es la suma Booleana de las n variables donde cada variable está presente en su valor verdadero o falso.6 Mapas de Karnaugh. En otras palabras corresponde a un término producto normal.7) Capitulo 6.. ii) Como forma canónica de producto de sumas. Uno Puede demostrar que dos circuitos producen relaciones binarias idénticas Entrada .I...1. TEOREMA: Cualquier representarse: función Booleana f(x1. La función F puede describirse como: F(x.3.C.y.1.D.y. Se puede decir que corresponde a un término suma normal.z)= ΠM(0. La idea es representar en forma más compactas las tablas que representan a la función..

3.5.C Arquitectura de Sistemas Computacionales Obs: F (x. El método del mapa también se le conoce con el nombre de Mapa de Karnaugh y diagrama de Veitch.14) 6.2 Simplificación de circuitos lógicos: La complejidad del diagrama lógico que implementa una función Booleana está directamente relacionado con la complejidad de la expresión algebraica a partir de la cual la función se implementa.5) Esto es válido para cualquier nº de variables de entrada. La representación de la tabla de verdad de una función es única pero la función puede aparecer en muchas formas diferentes como se expresa algebraicamente.7) F (x.8. El método del mapa proporciona un procedimiento simple. La expresión puede simplificarse utilizando las relaciones básicas del álgebra Booleana.15) = Π M (2.11.7.y. Este procedimiento sin embargo.Álgebra de Boole Página 18 .y.w) = Σm (0.13. Este método puede mirarse como un arreglo gráfico de una tabla de verdad que permite una interpretación fácil para elegir el mínimo número de variables que se necesitan para expresar la función algebraicamente.4.z)=ΠM(2. Ejemplo para 4 variables F(x.1. Capitulo 6.1.3.y. Cada una de las combinaciones de la variable en una tabla de verdad se denomina un Miniterm..10.6. es algunas veces difícil porque carece de reglas específicas para predecir cada uno de los pasos sucesivos en el proceso de manipulación.4. Una función de “n” variables cuando se expresa por medio de una tabla de verdad tendrá 2n minterm.I.9.C.z)=Σm(0. tenemos la siguiente tabla de verdad: Esta tabla posee ocho miniterm.z.6.D.I. Por ejemplo.12. y directo para simplificar funciones Booleanas .

D.. Los miniterms que producen en la salida un 1 para la función se enumeran con su equivalente decimal respectivo. en que cada cuadrado representa un miniterm. a). Los mapas para las funciones de dos. Los miniterms que no aparecen en la lista son los que producen 0 para la función Booleana.Mapa de tres variables Capitulo 6.4..I. Los cuadrados a los miniterm que producen 1 para la función se marcan con un “1” y los restantes con “0” o se dejan vacíos.C Arquitectura de Sistemas Computacionales equivalente a 2n números binarios obtenidos de los n dígitos. a partir de las cuales se puede seleccionar la más conveniente. La información contenida en una tabla de verdad puede expresarse en forma compacta enumerando el decimal equivalente de aquellos. Para reconocer varios patrones y combinar cuadrados marcados por 1 en el mapa.C. miniterm que producen un 1 para la función Por ejemplo la tabla anterior puede expresarse de la siguiente forma: F (x. El símbolo “ ∑ “ se utiliza para la suma de los miniterms que siguen en el paréntesis..Álgebra de Boole Página 19 .Mapa de dos variables b). Una función Booleana será igual a 1 para algunos miniterm y a 0 para los otros.I.y.6. es posible derivar las expresiones algebraicas alternas para la función.5.z) = ∑ (1.7) Las letras en paréntesis enumeran las variables binarias en el orden que ellas aparecen en la tabla de verdad. tres y cuatro variables se muestran en la siguiente figura. El mapa es un diagrama hecho de cuadrados.

I.D. no siempre es necesaria. Toda la información que aparece en los mapas de la figura.I. Los nombres de las variables son listados a través de ambos lados de la línea diagonal en la esquina del mapa. Los números de miniterms son asignados en un arreglo ordenado de tal manera que los cuadrados adyacentes representen los miniterms que difieren solamente en una variable.C.Álgebra de Boole Página 20 . en ésta oportunidad se muestra solamente a modo explicativo.. La variable aparece con un comilla (complementada) en la mitad de los cuadrados. Cada variable debajo de los paréntesis contiene la mitad de los cuadrados en el mapa en donde aquella variable aparece sin comillas (no complementada).y) 0 1 0 1 x 0 y 0 0 0 1 1 1 1 2 0 3 1 Capitulo 6.. a) X 0 0 1 1 Mapa de Karnaugh para representar dos variables Y 0 1 0 1 F(x. El miniterm representado por un cuadrado es determinado de la asignación binaria de las variables a lo largo de los bordes izquierdo y superior del mapa. Los 1 y 0 marcados a lo largo de cada fila y de cada columna designan el valor de las variables. éste mapa representará los valores a minimizar cuando la función arroje un valor igual a 1.Mapa de cuatro variables El número de cuadrados en un mapa de “n” variables es 2n minitern y son listados por un número decimal equivalente para fácil referencia. A continuación se muestran algunos ejemplos de representación en mapa de Karnaugh de distintas funciones a partir de su tabla de verdad.C Arquitectura de Sistemas Computacionales C).

B.I.C Arquitectura de Sistemas Computacionales b) Mapa de Karnaugh para representar tres variables X 0 0 0 0 1 1 1 1 Y 0 0 1 1 0 0 1 1 Z 0 1 0 1 0 1 0 1 F(x.Álgebra de Boole Página 21 .C.I.D.D) 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Capitulo 6.C..y) 0 1 1 0 1 1 0 1 z xy 0 1 00 0 2 3 1 01 1 6 11 4 0 7 5 1 10 1 1 0 1 0 c) Mapa de Karnaugh para representar cuatro variables 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.

D. Lo que a continuación se estudia es la forma de obtener una expresión lo más simple posible para la representación de una función. cada variable será representativa de alguna condicionante que pudiera tener sólo 2 valores de verdad.C.6. En general.10. De esta forma podremos posteriormente obtener un circuito electrónico menos complejo.9. Nuestro estudio apunta a la realización de funciones Booleanas.13.1).Álgebra de Boole Página 22 .b.d) = Σ m (5.3 Minimizacion de funciones booleanas. 6. Una serie de condicionantes y la o las acciones que se deseen ejecutar de acuerdo al estado de dichas condiciones podrán ser representadas por una expresión Booleana. Veamos un ejemplo: F(a.C Arquitectura de Sistemas Computacionales Naturalmente hemos representado la forma más simple que corresponde a lo más 2 entradas.c.I. Dicha expresión Booleana podrá posteriormente implementarse mediante circuitos electrónicos capaces de reconocer 2 estados (0.I.14) = 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 · c · d · (b + b) + a · c · d · (b + b) = a · b· c ·d + a · b·c·d + a· c·d + a ·c·d = c · d · (a · b + a) + c · d · (a + a · b) = c · d · (a + b) + c · d · (a + b) (1) Capitulo 6..

2 OR de 2 entradas + 3 AND de 2 entradas.I. Ejemplo: A) Sea f(a. Un circuito como el (2) que corresponde a uno de mayor orden se dice un circuito factorizado.C. Definición: Una expresión suma de productos de 2º orden se dirá mínima si: a) No existe una expresión equivalente con menos productos b) No hay una expresión equivalente que contenga el mismo número de productos.D.OR / OR . Nota: Puede existir más de una representación mínima.4.c) = Σm (0. pero con menos cantidad de variables Igual enunciado vale para expresiones de producto de sumas.I. Este tipo de factorización se basa principalmente en prueba y error y en la habilidad para recordar que cierto tipo de productos tienen dicha factorización.Álgebra de Boole Página 23 . A continuación se desarrolla un proceso de minimización en el cual se obtienen expresiones de 2º orden.b.1. 4 AND de 3 entradas + 1 OR de 4 entradas.AND /NAND .. Cualquier suma de producto o producto de suma puede realizarse por circuitos de 2 niveles donde estos pueden ser AND . Observaciones: El circuito (2) es más simple pero debe notarse que las señales A y B en el caso (2) pasan a través de 3 niveles previo a procesar la salida. Este tipo de expresiones se dice una expresión de 2º orden o circuito de 2º orden.NAND/NOR .NOR.C Arquitectura de Sistemas Computacionales = (c · d + c · d) · (a + b) = a·c·d +a·c·d + b·c·d + b·c·d (1) (2) (3) (2) (3) 6 AND de 4 entradas + 1 OR de 6 entradas. Este nombre proviene del hecho de que el proceso a partir de uno de 2º orden es muy similar a un proceso de factorización del álgebra convencional.6) = a· b·c + a · b·c +a· b·c +a·b·c Capitulo 6. en las cuales se debe reemplazar producto por suma y viceversa.

B) Sea f(a. Capitulo 6.C Arquitectura de Sistemas Computacionales Notemos que los 2 primeros términos se combinan para dar: a · b · c + a · b · c = a · b · (c + c) = a·b y los otros 2 dan: a · b · c + a · b · c = a · c(b + b) = a·c Por lo tanto. f= a · b + a · c Observaciones: i) m0 y m1 son adyacentes.D.13.b. las cuales son las variables que cambian de valor. f(a.10. en ellos sólo cambia la variable “c”.b.c. iii) igual caso entre m4 y m6.15) = a · b· c ·d + a · b·c·d + a· b·c·d + a · b· c ·d +a · b·c·d m5 m7 m10 m13 m15 m13 y m15 son adyacentes m5 y m7 son adyacentes ambos grupos son adyacentes entre sí.c..C.I.d)= b · d + a · b · c · d C) f(a.b. Así agrupando 2k minterm adyacentes pueden eliminarse k variables de una función.7) Minimizar de la forma anterior es más complicado que si se aplica un mapa de Karnaugh. m5+m7+m13+m15 = a · b · c · d + a · b · c · d + a · b · c · d + a · b · c · d = bd Luego. Por lo tanto.I.12. en la agrupación restante se han eliminado A y C.c.Álgebra de Boole Página 24 .7.14. ii) al unir m0 y m1 observamos que no aparece la variable que marca la distancia entre ambos minterm.d) = Σm(5.8.5.d)= Σm (0. es decir la variable “c”.

posee los siguientes componentes: 5 compuertas AND.c.b..d) = Σm (0.D.15) Capitulo 6.I. 2 compuertas OR y 3 NOT.C Arquitectura de Sistemas Computacionales En efecto: Del mapa de Karnaugh se obtienen las siguientes ecuaciones: (a) (b) (c) b·c·d a·b·d a ·b·d Por lo tanto. la función es: f = b · c · d + a · b · d + a · b · d y es equivalente f = d (bc + ab ) + abd .Álgebra de Boole Página 25 .1.3.2.C.13.I. por lo tanto el circuito asociado sería: a: Este circuito. D) f(a.

12. la función es: f = a · b + a · b · d y el circuito asociado es: E) f(a.I..b.I.C Arquitectura de Sistemas Computacionales AB CD 00 01 11 10 00 1 a 01 01 1 01 0 0 0 0 11 0 0 b 1 0 1 0 10 0 0 0 0 Del mapa de Karnaugh se obtienen las siguientes ecuaciones: (a) a · b (b) a · b · d Por lo tanto.2.d) = Σm(0.C.D.Álgebra de Boole Página 26 .13) Capitulo 6.c.8.

C Arquitectura de Sistemas Computacionales Del mapa de Karnaugh se obtienen las siguientes ecuaciones: (a) a · b · d (b) a · b · c (c) a · c · d Por lo tanto. la función es: f = a · b · d + a · b · c + a · c · d y es equivalente a: f = ab d + ac (b + d ) cuyo circuito asociado es: Del mapa de Karnaugh se obtienen las siguientes ecuaciones: (a) a · b · d (b) b · c · d (c) a · b · c Capitulo 6.I..Álgebra de Boole Página 27 .C.I.D.

I. Son casos en los que la salida no está definida frente a una cierta combinación de entrada pudiendo ocurrir que dicha combinación de entrada nunca se de. el cual no puede tener la luz roja y verde encendida al mismo tiempo.I.Álgebra de Boole Página 28 . CONDICIONES SUPERFLUAS..C. Como ejemplo se puede citar un semáforo.C Arquitectura de Sistemas Computacionales Por lo tanto. dependiendo de como se agrupen las celda adyacentes (los 1´). Capitulo 6.D. la función es: f = a · b · d + b · c · d + a · b · c y es equivalente a: f = b d ( a + c ) + abc cuyo circuito asociado es: Como podemos apreciar en este ejemplo existen 2 formas mínimas.