Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Compuertas lógicas.
Las compuertas lógicas son circuitos electrónicos que operan con niveles definidos de
tensión, materializando las funciones lógicas. Estos circuitos se construyen en diferentes
tecnologías, utilizando resistencias eléctricas, diodos y transistores. También es posible
materializar a las funciones lógicas mediante contactos de relés (lógica de contactos).
Compuerta lógica OR: La compuerta OR define la operación suma lógica, la que se
representa por el signo +.
Por ejemplo, la función suma lógica de dos variables se escribe:
Y=A+B
En esta compuerta, la salida siempre será un 1 si cualquier variable de entrada tiene el valor
1. La tabla de verdad de la compuerta OR es entonces:
A B Y
0 0 0
0 1 1
1 0 1
1 1 1
A B Y
0 0 0
0 1 0
1 0 0
1 1 1
El símbolo para representar a una compuerta AND de dos entradas es:
A Y
0 1
1 0
A B Y
0 0 1
0 1 0
1 0 0
1 1 0
A B Y
0 0 1
0 1 1
1 0 1
1 1 0
A B Y
0 0 0
0 1 1
1 0 1
1 1 0
Es decir, para el caso de una OR Exclusiva de dos variables de entrada, la salida será 1
sólo si una sola de sus entradas está en 1. En forma más general, si la compuerta tiene más
de dos variables de entrada, la salida será 1 sólo si un número impar de sus entradas están
en 1. El símbolo correspondiente a la compuerta OR Exclusiva es:
A B Y
0 0 1
0 1 0
1 0 0
1 1 1
Es decir, la salida será 1 sólo si un número par de sus entradas están en 1. El símbolo de la
NOR Exclusiva es:
SOLUCIÓN:
Este es un problema de análisis. Para facilitar su solución, repetimos el esquema
escribiendo detrás de cada operador la función local que realizar (ver Figura 2).
Obtenemos así:
A= f¹(X,Y,Z)= X+XY
A= f²(X,Y,Z)= XY+XZ
Teoremas de álgebra booleana y ejercicios.
• Leyes de conmutación:
A+B=B+A A.B = B.A
• Leyes de asociación:
A + (B + C) = (A +B) + C = A +B + C A. (B.C) = (A.B).C = A.B.C
• Leyes de distribución:
A. (B + C) = A.B + A.C A + (B.C) = (A +B).(A + C)
• Leyes de Morgan:
A + B = A.B A. B = A +B
• Otras leyes:
A + (A.B) = A A. (A +B) = A
Ejercicios.
Demostrar los siguientes teoremas del algebra de Boole.
Primer ejercicio:
A+AB=A
A(A+B)=A
AB+ABˉ=A
(A+B)(A+Bˉ)=A
A+AˉB=A+B
A(Aˉ+B)=AB
Solución:
La primera función es:
A+AB
Siendo I el elemento unidad, los pasos a seguir son:
A+AB=AI+AB=A(I+B)=A
La segunda ecuación es:
A(A+B)
Aplicando la ley distributiva y la ley de absorción, tenemos:
A(A+B)=AA+AB=A+AB=A(I+B)=A
Para la tercera ecuación tenemos:
AB+ABˉ=A(B+Bˉ)=AI=A
Desarrollando la cuarta ecuación tenemos:
(A+B)(A+Bˉ)=AA+ABˉ+BA+BBˉ==A+BˉA+BA+A+(Bˉ+B)A=A+A=A
Para la quinta ecuación, teniendo en cuenta la primera, nos queda:
A+AˉB=A+AB+AˉB=A+B(A+Aˉ)=A+B
Por último, para sexta ecuación tenemos:
A(Aˉ+B)=AAˉ+AB=AB
Segundo ejercicio:
Demostrar los siguientes teoremas básicos del algebra de Boole.
A+BC=(A+B)(A+C)
AB+AˉC=(A+C)(Aˉ+B)
(A+B)(Aˉ+C)=AC+AˉB
AB+AˉC+BC=AB+AˉC
(A+B)(Aˉ+C)(B+C)=(A+B)(Aˉ+C)
Solución:
Tomando la primera de las ecuaciones:
A+BC
Y teniendo en cuenta el primer resultado del ejercicio anterior:
A+BC=A+AB+BC=A+BA+BC=A+B(A+C)
Pero teniendo ahora en cuenta el segundo resultado del ejercicio anterior:
A+B(A+C)=A(A+C)+B(A+C)=(A+B)(A+C)
Sea ahora la segunda de las ecuaciones:
AB+AˉC
Pero teniendo en cuenta el primer resultado del ejercicio anterior:
AB+ABC+ACˉ=AB+(AB+Aˉ)C=
Teniendo ahora en cuenta la conmutatividad y el quinto y sexto resultados del ejercicio
anterior:
=AB+C(Aˉ+B)=A(Aˉ+B)+C(Aˉ+B)=(A+C)(Aˉ+B)
Sea ahora la tercera de las ecuaciones:
(A+B)(Aˉ+C)
Pero teniendo en cuenta el resultado anterior con los cambios C≡B el resultado es trivial:
(A+B)(Aˉ+C)=AC+AˉB
Tenemos la ecuación:
AB+AˉC+BC
Y hacemos:
AB+AˉC+BC=AB+AˉA+AˉC+BC=B(A+C)+Aˉ(A+C)
Pero teniendo en cuenta el segundo resultado anterior:
=B(A+C)+Aˉ(A+C)=(B+Aˉ)(A+C)=AB+AˉC
Sea, por ultimo la ecuación:
(A+B)(Aˉ+C)(B+C)
Teniendo en cuenta el segundo teorema demostrado en este problema, poemos agrupar los
dos términos entre parentesis de la izquierda:
(AC+AˉB)(B+C)=ACB+AC+AˉB+AˉBC
Y sacando factor común CyB y aplicando el teorema uno del problema anterior:
C(AB+A)+B(Aˉ+AˉC)=CA+BAˉ=(A+B)(Aˉ+C)
Donde hemos aplicado el tercer resultado de este problema.
Tercer ejercicio:
Simplificar la siguiente expresión, utilizando los teoremas del álgebra de Boole:
A(Cˉ+BDˉ+DE)+D(BC+Aˉ+B)+Bˉ[A(E+CE)+ACˉDˉE]
Solución:
Partiendo de la ecuación inicial:
A(Cˉ+BDˉ+DE)+D(BC+Aˉ+B)+Bˉ[A(E+CE)+ACˉDˉE]
Y aplicando los resultados de los teoremas básicos demostrados en el ejercicio 8, resulta:
A(Cˉ+BDˉ+DE)+D(BC+Aˉ+B)+Bˉ[A(E+CE)+ACˉDˉE]=
=A(Cˉ+BDˉ+DE)+D(Aˉ+B)+Bˉ[A(E+C)+ACˉDˉE]=
=A(Cˉ+BDˉ+DE)+D(Aˉ+B)+Bˉ(AE+AC)=
=ACˉ+ABˉD+ADE+AˉD+BD+ABˉE+ABˉC=
=ACˉ+B(ADˉ+D)+ADE+AˉD+ABˉE+ABˉC=
=ACˉ+B(D+A)ADE+ADˉ+ABˉE+ABˉC=
=ACˉ+BD+BA+ADE+AˉD+ABˉE+ABˉC=
=ACˉ+AB+ADˉ+ADE+ABˉE+ABˉC=
=A(Cˉ+BˉC)+A(B+BˉE)+D(Aˉ+AE)=
=A(Cˉ+Bˉ)+A(B+E)+D(Aˉ+E)=
=ACˉ+ABˉ+AB+AE+AˉD+DE=
=ACˉ+A+AE+AˉD+DE=
=A+AˉD+DE=A+D+DE=
=A+D(1+E)
=A+D
Teoremas de Morgan y ejercicios.
Leyes de Morgan:
A + B = A.B A. B = A +B
Ejercicios.
Ejercicio 1.
Simplificar mediante los teoremas básicos del álgebra de Boole y los teoremas de Morgan
las siguientes expresiones:
(A+CAˉ)(B+C)(C+A)
(A+B)−−−−−−−⋅(A+BC)−−−−−−−−[A+(AC+B)]
Solución:
Las dos expresiones que tenemos que simplicar aplicando los teoremas básicos del álgebra
de Boole y las leyes de Morgan son:
(A+CAˉ)(B+C)(C+A)−−−−−−−−−−−−−
(A+B)−−−−−−−⋅(A+BC)−−−−−−−−[A+(AC+B)]
Para la primera tenemos:
(A+CAˉ)(B+C)(C+A)−−−−−−−−−−−−−=(A+C)(A+BC)−−−−−−−−=
=(A+C)⋅A−−⋅B⋅C−−−−=C⋅A−−⋅C⋅B−−−−=C⋅A−−(B−−+C−−)=C⋅A−−⋅B−−
Y para la segunda expresión:
(A+B)−−−−−−−⋅(A+BC)−−−−−−−−[A+(AC+B)]=(A+B)−−−−−−−⋅(A+BC)−−−−−−−−⋅(A+B)=
=A+BC−−−−−−−=A−−⋅B⋅C−−−−=A−−⋅(B−−+C−−)
Ejercicio 2.
Simplificar mediante los teoremas básicos del álgebra de Boole y los teoremas de Morgan
las siguientes expresiones:
AAˉ+B+Aˉ+AB−−−−−−−−−−−−−−−
[Aˉ(B+Cˉ)]+AD+C−−−−−−−−−−−−−−−−−
Solución:
Las dos expresiones que tenemos que simplicar aplicando los teoremas básicos del álgebra
de Boole y las leyes de Morgan son:
AAˉ+B+Aˉ+AB−−−−−−−−−−−−−−−
[Aˉ(B+Cˉ)]+AD+C−−−−−−−−−−−−−−−−−
Para la primera tenemos:
AAˉ+B+Aˉ+AB−−−−−−−−−−−−−−−=B+Aˉ+AB−−−−−−−−−−B+Aˉ−−−−−=Bˉ⋅A
Y para la segunda expresión:
Aˉ(B+Cˉ)+AD+C−−−−−−−−−−−−−−−−=Aˉ⋅B+Aˉ⋅Cˉ+AD+C−−−−−−−−−−−−−−−−−−−=
=Aˉ⋅B+Aˉ+AD+C−−−−−−−−−−−−−−−−=Aˉ+AD+C−−−−−−−−−−=Aˉ+D+C−−−−−−−−−=A⋅D−
−⋅C−−
Ejercicio 3.
Simplificar mediante los teoremas básicos del álgebra de Boole y los teoremas de Morgan
las siguientes expresiones:
A+Aˉ(BˉCˉDˉ+C+D)+BˉDˉ
Bˉ(ADˉ+AˉCD)+D(A+Bˉ)+AB
Solución:
Tenemos que aplicando los teoremas vistos en el ejemplo 8, tenemos para la primera
expresión:
A+Aˉ(BˉCˉDˉ+C+D)+BˉDˉ=A+B−−⋅C−−⋅D−−+C+D+B−−⋅D−−=
=A+C+D+B−−⋅D−−=A+C+D+B−−
Para la segunda expresión, aplicando los teoremas del ejercicio 8, se tiene:
Bˉ(ADˉ+AˉCD)+D(A+Bˉ)+AB=
=B−−⋅A⋅D−−+B−−⋅A−−⋅C⋅D+D⋅A+D⋅B−−+A⋅B=A(B−−⋅D−−+B)+
+D⋅B−−(1+A−−⋅C)+D⋅A=A(D−−+B)+A⋅D+D⋅B−−=
=A⋅B+A⋅D−−+D⋅B−−+A⋅D=A(D−−+D)+A⋅B+D⋅B−−=
=A+A⋅B+D⋅B−−
=A+D⋅B−−
Simplificación de funciones lógicas método clásico.
Utiliza las reglas generales del Algebra de Boole para ver si es posible reducir la función
lógica a su menor expresión. EJEMPLOS:
A • (A + B) + B A + B utilizando una de las propiedades antes citada.
A • B + A • B A ⊕ B por lo que puede implementarse con una sola compuerta OR-
Exclusiva.
Simplificación por mapas de Karnaught-Veitch
El mapa de Karnaught es un método gráfico que permite simplificar funciones de hasta seis
variables. Para mayor cantidad de variables existen otros métodos (Quine-Mc Cluskey, Mc
Boole) que sólo resultan útiles si se resuelven por procesos computacionales dado la
complejidad de estos métodos. Un mapa de Karnaght es un cuadrilátero que posee tantas
celdas como filas tenga la tabla de verdad. Por ejemplo, para 4 variables (digamos DCBA),
una tabla de verdad posee 16 filas, por lo que el mapa de Karnaught toma la siguiente
forma:
Cada una de las celdas se corresponde con una fila de la tabla de verdad, y contiene el
valor de la función (0 o 1) para esa combinación de las variables. Es importante notar que
las celdas son adyacentes, esto significa que al pasar de una celda a otra en sentido
horizontal o vertical (no diagonal), sólo puede cambiar de 0 a 1 (o viceversa) una sola de las
variables de entrada a la vez. También es importante notar que, aunque el mapa se dibuja
como un rectángulo, en realidad se la debe imaginar como una esfera; esto significa que el
borde izquierdo de la tabla está unido al borde derecho (son adyacentes), así como el borde
superior está unido al borde inferior (adyacentes también).
Para simplificar una función lógica, se debe comenzar por agrupar con lazos en el mapa de
Karnaught las celdas cuyos valores hacen 1 a la salida. Esta agrupación no puede
realizarse de cualquier forma, sino que hay reglas para ello:
• Cada lazo debe contener la mayor cantidad de 1 posibles, para lograr la mayor
simplificación de la función lógica.
• Puede haber lazos superpuestos, es decir una celda puede pertenecer a dos o más lazos.
• No se pueden formar lazos entre parejas de 1 situados en diagonal.
• Deben agruparse con lazos todos los 1, tratando de hacerlo con la menor cantidad de
lazos posibles. • Cada lazo debe agrupar 2n celdas, con n=0, 1, 2, etc. Por ejemplo, no se
pueden agrupar 7 celdas. A modo de ejemplo, algunos agrupamientos pueden ser:
Finalmente, se obtiene la función lógica por inspección de los lazos involucrados. La función
tomará la forma de suma de productos: o La función tendrá tantos términos de sumas como
lazos haya en el mapa. o Los productos de cada término quedan definidos por las variables
involucradas en cada lazo. Sólo se deben tener en cuenta las variables que no cambien su
valor (de 0 a 1 o viceversa) dentro del lazo, y en función de si permanecen en 0 o en 1 se
las debe negar o no. Veamos un ejemplo para mayor claridad. Dada la tabla de verdad,
obtenemos el correspondiente mapa de Karnaught:
Paso siguiente, tratamos de enlazar la mayor cantidad de 1 con la menor cantidad de lazos,
siempre respetando las reglas anteriores. Vemos que en este caso podemos hacer dos
lazos:
Por lo tanto, la función lógica resultante estará compuesta por dos términos de suma lógica:
Y = Lazo 1+Lazo 2
Analicemos el lazo 1, veamos que ocurre con las variables DCBA. Las variables DC
permanecen en 0 en todo el lazo (no cambian de valor), por lo tanto estas variables quedan
en la función lógica. Además, como toman el valor 0, deben ir negadas. En cuanto a las
variables BA, vemos que la única que mantiene su valor es B (ya que A vale 1 en la celda
de la izquierda, y 0 en la celda de la derecha). Por lo tanto, la única variable que no cambia
y que por lo tanto tengo que considerar es B, y además, como vale 1, no va negada.
Entonces el término correspondiente al lazo 1 es:
Lazo 1 = D.C.B
Veamos ahora el lazo 2. En cuanto a las variables DC, sólo D permanece constante y en
valor 1, por lo que se la debe tener en cuenta y además no va negada. En cuanto a las
variables BA, la única que permanece constante en el lazo es B y con valor 0, por lo que
esta es la variable que debe tenerse en cuenta y además debe ir negada. Según lo anterior,
el lazo 2 quedaría:
Lazo 2 = D.B
Por último, la función lógica correspondiente a la tabla de verdad resulta:
Y = Lazo 1+Lazo 2
Y = D.B +D.C.B
Bibliografía
Introduction to switching theory and logical design. Hill & Peterson. Editorial John Wiley &
Sons.
Circuitos Digitales y Microprocesadores. Herbett -Taub.
Electrónica Digital. Bignell – Donovan. CECSA.
Fundamentos de diseño lógico y computadoras. Morris Mano – Kime. Prentice-Hall
Hispanoamericana