Algebra booleana.

2,587 views
2,426 views

Published on

..

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,587
On SlideShare
0
From Embeds
0
Number of Embeds
75
Actions
Shares
0
Downloads
41
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Algebra booleana.

  1. 1. Álgebra BooleanaEl álgebra booleana es un sistema matemático deductivo centrado en los valores ceroy uno (falso y verdadero). Un operador binario " º " definido en éste juego de valoresacepta un par de entradas y produce un solo valor booleano, por ejemplo, el operadorbooleano AND acepta dos entradas booleanas y produce una sola salida booleana.Para cualquier sistema algebraico existen una serie de postulados iniciales, de aquí sepueden deducir reglas adicionales, teoremas y otras propiedades del sistema, elálgebra booleana a menudo emplea los siguientes postulados: Cerrado. El sistema booleano se considera cerrado con respecto a un operador binario si para cada par de valores booleanos se produce un solo resultado booleano. Conmutativo. Se dice que un operador binario " º " es conmutativo si A º B = B º A para todos los posibles valores de A y B. Asociativo. Se dice que un operador binario " º " es asociativo si (A º B) º C = A º (B º C) para todos los valores booleanos A, B, y C. Distributivo. Dos operadores binarios " º " y " % " son distributivos si A º (B % C) = (A º B) % (A º C) para todos los valores booleanos A, B, y C. Identidad. Un valor booleano I se dice que es un elemento de identidad con respecto a un operador binario " º " si A º I = A. Inverso. Un valor booleano I es un elemento inverso con respecto a un operador booleano " º " si A º I = B, y B es diferente de A, es decir, B es el valor opuesto de A.Para nuestros propósitos basaremos el álgebra booleana en el siguiente juego deoperadores y valores:- Los dos posibles valores en el sistema booleano son cero y uno, a menudollamaremos a éstos valores respectivamente como falso y verdadero.- El símbolo · representa la operación lógica AND. Cuando se utilicen nombres devariables de una sola letra se eliminará el símbolo ·, por lo tanto AB representa laoperación lógica AND entre las variables A y B, a esto también le llamamosel producto entre A y B.- El símbolo "+" representa la operación lógica OR, decimos que A+B es la operaciónlógica OR entre A y B, también llamada la suma de A y B.- El complemento lógico, negación ó NOT es un operador unitario, enéste texto utilizaremos el símbolo " " para denotar la negación lógica, por ejemplo, Adenota la operación lógica NOT de A.- Si varios operadores diferentes aparecen en una sola expresión booleana, elresultado de la expresión depende de la procedencia de los operadores, la cual es demayor a menor, paréntesis, operador lógico NOT, operador lógico AND y operadorlógico OR. Tanto el operador lógico AND como el OR son asociativos por la izquierda.Si dos operadores con la misma procedencia están adyacentes, entonces se evalúande izquierda a derecha. El operador lógico NOT es asociativo por la derecha.Utilizaremos además los siguientes postulados: P1 El álgebra booleana es cerrada bajo las operaciones AND, OR y NOT P2 El elemento de identidad con respecto a · es uno y con respecto a + es cero. No existe elemento de identidad para el operador NOT P3 Los operadores · y + son conmutativos. P4 · y + son distributivos uno con respecto al otro, esto es, A· (B+C) = (A·B)+(A·C) y A+ (B·C) = (A+B) ·(A+C).
  2. 2. P5 Para cada valor A existe un valor A tal que A·A = 0 y A+A = 1. Éste valor es el complemento lógico de A. P6 · y + son ambos asociativos, ésto es, (AB) C = A (BC) y (A+B)+C = A+ (B+C).Es posible probar todos los teoremas del álgebra booleana utilizando éstospostulados, además es buena idea familiarizarse con algunos de los teoremas másimportantes de los cuales podemos mencionar los siguientes: Teorema 1: A + A = A Teorema 2: A · A = A Teorema 3: A + 0 = A Teorema 4: A · 1 = A Teorema 5: A · 0 = 0 Teorema 6: A + 1 = 1 Teorema 7: (A + B) = A · B Teorema 8: (A · B) = A + B Teorema 9: A + A · B = A Teorema 10: A · (A + B) = A Teorema 11: A + AB = A + B Teorema 12: A · (A + B) = AB Teorema 13: AB + AB = A Teorema 14: (A + B) · (A + B) = A Teorema 15: A + A = 1 Teorema 16: A · A = 0Los teoremas siete y ocho son conocidos como Teoremas de DeMorgan en honor almatemático que los descubrió.Características:Un álgebra de Boole es un conjunto en el que destacan las siguientes características:1- Se han definido dos funciones binarias (que necesitan dos parámetros) quellamaremos aditiva (que representaremos por x+ y) y multiplicativa (que representaremos por xy) y una función monaria (de un soloparámetro) que representaremos por x.2- Se han definido dos elementos (que designaremos por 0 y 1)Y 3- Tiene las siguientes propiedades: Conmutativa respecto a la primera función: x + y = y + x Conmutativa respecto a la segunda función: xy = yx Asociativa respecto a la primera función: (x + y) + z = x + (y +z) Asociativa respecto a la segunda función: (xy)z = x(yz) Distributiva respecto a la primera función: (x +y)z = xz + yz Distributiva respecto a la segunda función: (xy) + z = (x + z)( y + z) Identidad respecto a la primera función: x + 0 = x Identidad respecto a la segunda función: x1 = x Complemento respecto a la primera función: x + x = 1 Complemento respecto a la segunda función: xx = 0Propiedades Del Álgebra De Boole 1. Idempotente respecto a la primera función: x + x = x Idempotente respecto a la segunda función: xx = x Maximalidad del 1: x + 1 = 1
  3. 3. Minimalidad del 0: x0 = 0 Involución: x = x Inmersión respecto a la primera función: x + (xy) = x Inmersión respecto a la segunda función: x(x + y) = x Ley de Morgan respecto a la primera función: (x + y) = xy Ley de Morgan respecto a la segunda función: (xy) = x + yFunción BooleanaUna función booleana es una de A x A x A x....A en A, siendo A un conjunto cuyoselementos son 0 y 1 y tiene estructura de álgebra de Boole.Supongamos que cuatro amigos deciden ir al cine si lo quiere la mayoría. Cada unopuede votar sí o no. Representemos el voto de cada uno por xi. La función devolverásí (1) cuando el número de votos afirmativos sea 3 y en caso contrario devolverá 0.Si x1 vota 1, x2 vota 0, x3 vota 0 y x4 vota 1 la función booleana devolverá 0.Producto mínimo (es el número posible de casos) es un producto en el que aparecentodas las variables o sus negaciones.El número posible de casos es 2n.Siguiendo con el ejemplo anterior. Asignamos las letras A, B, C y D a los amigos. Losposibles casos son:Votos ResultadoABCD1111 11110 11101 11100 01011 11010 01001 01000 00111 10110 00101 00100 00011 00010 00001 00000 0Las funciones booleanas se pueden representar como la suma de productos mínimos(minterms) iguales a 1.En nuestro ejemplo la función booleana será:f(A,B,C,D) = ABCD + ABCD + ABCD + ABCD + ABCDDiagramas De KarnaughLos diagramas de Karnaugh se utilizan para simplificar las funciones booleanas.Se construye una tabla con las variables y sus valores posibles y se agrupan los 1adyacentes, siempre que el número de 1 sea potencia de 2.En esta página tienes un programa para minimización de funciones booleanasmediante mapas de Karnaugh
  4. 4. La relación que existe entre la lógica booleana y los sistemas de cómputo es fuerte, dehecho se da una relación uno a uno entre las funciones booleanas y los circuitoselectrónicos de compuertas digitales. Para cada función booleana es posible diseñarun circuito electrónico y viceversa, como las funciones booleanas solo requieren de losoperadores AND, OR y NOT podemos construir nuestros circuitos utilizandoexclusivamente éstos operadores utilizando las compuertas lógicas homónimasUn hecho interesante es que es posible implementar cualquier circuito electrónicoutilizando una sola compuerta, ésta es la compuerta NANDPara probar que podemos construir cualquier función booleana utilizando sólocompuertas NAND, necesitamos demostrar cómo construir un inversor (NOT), unacompuerta AND y una compuerta OR a partir de una compuerta NAND, ya que comose dijo, es posible implementar cualquier función booleana utilizando sólo losoperadores booleanos AND, OR y NOT. Para construir un inversor simplementeconectamos juntas las dos entradas de una compuerta NAND. Una vez que tenemosun inversor, construir una compuerta AND es fácil, sólo invertimos la salida de unacompuerta NAND, después de todo, NOT ( NOT (A AND B)) es equivalente a A ANDB. Por supuesto, se requieren dos compuertas NAND para construir una solacompuerta AND, nadie ha dicho que los circuitos implementados sólo utilizandocompuertas NAND sean lo óptimo, solo se ha dicho que es posible hacerlo.Se dice que una variable tiene valor booleano cuando, en general, la variable contieneun 0 lógico o un 1 lógico. Esto, en la mayoría de los lenguajes de programación, setraduce en false (falso) o true (verdadero), respectivamente.Una variable puede no ser de tipo booleano, y guardar valores que, en principio, noson booleanos; ya que, globalmente, los compiladores trabajan con esos otros valores,numéricos normalmente aunque también algunos permiten cambios desde, incluso,caracteres, finalizando en valor booleano.El 0 lógicoEl valor booleano de negación suele ser representado como false, aunque tambiénpermite y equivale al valor natural, entero y decimal (exacto) 0, así como la cadena"false", e incluso la cadena "0".El 1 lógico
  5. 5. En cambio, el resto de valores apuntan al valor booleano de afirmación, representadonormalmente comotrue, ya que, por definición, el valor 1 se tiene cuando no es 0.Cualquier número distinto de cero se comporta como un 1 lógico, y lo mismo sucedecon casi cualquier cadena (menos la "false", en caso de ser ésta la correspondiente al0 lógico).Importancia del Algebra BooleanaA mediados del siglo XX el álgebra Booleana resultó de una gran importancia práctica,importancia que se ha ido incrementando hasta nuestros días, en el manejode información digital (por eso hablamos de Lógica Digital). Gracias a ella, Shannon(1930) pudo formular su teoría de la codificación y JohnVon Neumann pudo enunciarel modelo de arquitectura que define la estructura interna de los ordenadores desde laprimera generación.Todas las variables y constantes del Álgebra booleana, admiten sólo uno de dosvalores en sus entradas y salidas: Sí/No, 0/1 o Verdadero/Falso. Estos valoresbivalentes y opuestos pueden ser representados por números binarios de un dígito(bits), por lo cual el Álgebra booleana se puede entender cómo el Álgebradel Sistema Binario. Al igual que en álgebra tradicional, también se trabaja con letrasdel alfabeto para denominar variables y formarecuaciones para obtener el resultado deciertas operaciones mediante una ecuación o expresión booleana. Evidentemente losresultados de las correspondientes operaciones también serán binarios.Todas las operaciones (representadas por símbolos determinados) pueden sermaterializadas mediante elementos físicos de diferentes tipos (mecánicos, eléctricos,neumáticos o electrónicos) que admiten entradas binarias o lógicas y que devuelvenuna respuesta (salida) también binaria o lógica. Ejemplos de dichos estados son:Abierto/Cerrado (interruptor), Encendida/Apagada (bombilla), Cargado/Descargado(condensador) , Nivel Lógico 0/Nivel lógico 1 (salida lógica de un circuitosemiconductor), etcétera.Los dispositivos con los cuales se implementan las funciones lógicas son llamadospuertas (o compuertas) y, habitualmente, son dispositivos electrónicos basadosen transistores. Estos dispositivos, y otros que veremos a lo largo de esta unidad, sonlos que permiten el diseño, y la ulterior implementación, de los circuitos de cualquierordenador moderno, así como de muchos de los elementos físicos que permiten laexistencia de lastelecomunicaciones modernas, el control de máquinas, etcétera. Dehecho, pensando en los ordenadores como una jerarquía de niveles, la base o nivelinferior sería ocupada por la lógica digital (en el nivel más alto del ordenadorencontraríamos los actuales lenguajes de programación de alto nivel).En esta unidad se representan las puertas lógicas elementales, algunas puertascomplejas y algunos ejemplos de circuitos digitales simples, así como algunascuestiones de notación. Por otra parte se plantean actividades de trabajo, muchas delas cuales implican una respuesta escrita en vuestro cuaderno de trabajo. El deseo delautor es que os resulte sencillo y ameno adentraros en el mundo de la lógica digital ydespertaros la curiosidad, tanto por ella, como por la matemática que subyace en ella.Puertas lógicasUna puerta lógica, o compuerta lógica, es un dispositivo electrónico el cual es laexpresión física de un operador booleano en la lógica deconmutación. Cada puerta
  6. 6. lógica consiste en una red de dispositivos interruptores que cumple las condicionesbooleanas para el operador particular. Son esencialmente circuitos deconmutación integrados en un chip.Claude Elwood Shannon experimentaba con relés o interruptores electromagnéticospara conseguir las condiciones de cada compuerta lógica, por ejemplo, para la funciónbooleana Y (AND) colocaba interruptores en circuito serie, ya que con uno solo deéstos que tuviera la condición «abierto», la salida de la compuerta Y sería = 0,mientras que para la implementación de una compuerta O (OR), la conexión de losinterruptores tiene una configuración en circuito paralelo.La tecnología microelectrónica actual permite la elevada integraciónde transistores actuando como conmutadores en redes lógicas dentro de unpequeño circuito integrado. El chip de la CPU es una de las máximas expresiones deeste avance tecnológico.En nanotecnología se está desarrollando el uso de una compuerta lógica molecular,que haga posible la miniaturización de circuitos.Puerta SÍ o BufferSímbolo de la función lógica SÍ: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica SÍ, realiza la función booleana igualdad. En la práctica se suele utilizarcomo amplificador de corriente o como seguidor de tensión, para adaptar impedancias(buffer en inglés).La ecuación característica que describe el comportamiento de la puerta SÍ es:Su tabla de verdad es la siguiente:Tabla de verdad puerta SI Entrada A Salida A
  7. 7. 0 0 1 1Puerta ANDPuerta AND con transistoresSímbolo de la función lógica Y: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica Y, más conocida por su nombre en inglés AND ( ),realiza la función booleana de producto lógico. Su símbolo es un punto (·), aunque sesuele omitir. Así, el producto lógico de las variables A y B se indica como AB, y se leeA y B o simplemente A por B.La ecuación característica que describe el comportamiento de la puerta AND es:Su tabla de verdad es la siguiente: Tabla de verdad puerta ANDEntrada A Entrada B Salida 0 0 0 0 1 0
  8. 8. 1 0 0 1 1 1Así, desde el punto de vista de la aritmética módulo 2, la compuerta AND implementael producto módulo 2.Puerta ORPuerta OR con transistoresSímbolo de la función lógica O: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica O, más conocida por su nombre en inglés OR ( ),realiza la operación de suma lógica.La ecuación característica que describe el comportamiento de la puerta OR es:
  9. 9. Su tabla de verdad es la siguiente: Tabla de verdad puerta OREntrada A Entrada B Salida 0 0 0 0 1 1 1 0 1 1 1 1Podemos definir la puerta O como aquella que proporciona a su salida un 1 lógico si almenos una de sus entradas está a 1.Puerta OR-exclusiva (XOR)Símbolo de la función lógica O-exclusiva: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica OR-exclusiva, más conocida por su nombre en inglés XOR, realiza lafunción booleana AB+AB. Su símbolo es el más (+) inscrito en un círculo. En la figurade la derecha pueden observarse sus símbolos en electrónica.La ecuación característica que describe el comportamiento de la puerta XOR es: |-
  10. 10. Su tabla de verdad es la siguiente: Tabla de verdad puerta XOREntrada A Entrada B Salida 0 0 0 0 1 1 1 0 1 1 1 0Se puede definir esta puerta como aquella que da por resultado uno, cuando losvalores en las entradas son distintos. ej: 1 y 0, 0 y 1 (en una compuerta de dosentradas). Se obtiene cuando ambas entradas tienen distinto valor.Si la puerta tuviese tres o más entradas , la XOR tomaría la función de suma deparidad, cuenta el número de unos a la entrada y si son un número impar, pone un 1 ala salida, para que el número de unos pase a ser par. Esto es así porque la operaciónXOR es asociativa, para tres entradas escribiríamos: a (b c) o bien (a b) c. Sutabla de verdad sería: XOR de tres entradasEntrada A Entrada B Entrada C Salida 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0
  11. 11. 1 1 1 1Desde el punto de vista de la aritmética módulo 2, la puerta XOR implementa la sumamódulo 2, pero mucho más simple de ver, la salida tendrá un 1 siempre que el númerode entradas a 1 sea impar.Puerta NO (NOT)Símbolo de la función lógica NO: a) Contactos, b) Normalizado y c) No normalizadaLa puerta lógica NO (NOT en inglés) realiza la función booleana de inversión onegación de una variable lógica. Una variable lógica A a la cual se le aplica lanegación se pronuncia como "no A" o "A negada".Puerta NOT con transistoresLa ecuación característica que describe el comportamiento de la puerta NOT es:Su tabla de verdad es la siguiente:
  12. 12. Tabla de verdad puerta NOT Entrada A Salida 0 1 1 0Se puede definir como una puerta que proporciona el estado inverso del que esté ensu entrada.Puerta NO-Y (NAND)Símbolo de la función lógica NO-Y: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica NO-Y, más conocida por su nombre en inglés NAND, realiza laoperación deproducto lógico negado. En la figura de la derecha pueden observarsesus símbolos enelectrónica.Puerta NAND con transistores
  13. 13. La ecuación característica que describe el comportamiento de la puerta NAND es:Su tabla de verdad es la siguiente: Tabla de verdad puerta NANDEntrada A Entrada B Salida 0 0 1 0 1 1 1 0 1 1 1 0Podemos definir la puerta NO-Y como aquella que proporciona a su salida un 0 lógicoúnicamente cuando todas sus entradas están a 1.Puerta NO-O (NOR)Símbolo de la función lógica NO-O: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica NO-O, más conocida por su nombre en inglés NOR, realiza laoperación de suma lógica negada. En la figura de la derecha pueden observarse sussímbolos en electrónica.
  14. 14. Puerta NOR con transistoresLa ecuación característica que describe el comportamiento de la puerta NOR es:Su tabla de verdad es la siguiente: Tabla de verdad puerta NOREntrada A Entrada B Salida 0 0 1 0 1 0 1 0 0 1 1 0Podemos definir la puerta NO-O como aquella que proporciona a su salida un 1 lógicosólo cuando todas sus entradas están a 0. La puerta lógica NOR constituye unconjunto completo de operadores.
  15. 15. Puerta equivalencia (XNOR)Símbolo de la función lógica equivalencia: a) Contactos, b) Normalizado y c) No normalizadoLa puerta lógica equivalencia, realiza la función booleana AB+~A~B. Su símbolo esun punto (·) inscrito en un círculo. En la figura de la derecha pueden observarse sussímbolos en electrónica. La ecuación característica que describe el comportamiento dela puerta XNOR es:Su tabla de verdad es la siguiente: Tabla de verdad puerta XNOREntrada A Entrada B Salida 0 0 1 0 1 0 1 0 0 1 1 1Se puede definir esta puerta como aquella que proporciona un 1 lógico, sólo si las dosentradas son iguales, esto es, 0 y 0 ó 1 y 1 (2 encendidos o 2 apagados). Sólo esverdadero si ambos componentes tiene el mismo valor lógico[editar]Conjunto de puertas lógicas completoUn conjunto de puertas lógicas completo es aquel con el que se puedeimplementar cualquier función lógica. A continuación se muestran distintos conjuntoscompletos (uno por línea): Puertas AND, OR y NOT. Puertas AND y NOT.
  16. 16.  Puertas OR y NOT. Puertas NAND. Puertas NOR.Además, un conjunto de puertas lógicas es completo si puede implementar todas laspuertas de otro conjunto completo conocido. A continuación se muestran lasequivalencias al conjunto de puertas lógicas completas con las funciones NAND yNOR.Conjunto completo de puertas lógicas utilizando sólopuertas NAND. Equivalencias. Conjunto de puertas lógicas completo : Salida SalidaA B función NAND(A,B) función NOR(A,B)1 1 0 1 1 1 0 01 0 0 0 1 0 1 00 1 1 0 1 1 1 00 0 1 0 0 1 1 1Equivalencias del conjunto completo anterior con sólo puertas NAND :Equivalencias del conjunto completo anterior con sólo puertas NOR :

×