U1 T1 Boole
U1 T1 Boole
U1 T1 Boole
www.ups.edu.ec
Resultado de aprendizaje
RA1: Diseña soluciones a problemas de lógica
empleando álgebra de Boole y teoría de
proposiciones.
2
Contenido
1.1 Funciones Booleanas
1.2 Circuitos lógicos combinatorios
1.3 Diseño de soluciones a problemas empleando circuito lógicos combinatorios
3
Subtema 1:
Funciones Booleanas
4
Subtema 1: Funciones Booleanas
5
Subtema 1: Funciones Booleanas
Álgebra Booleana
El álgebra Booleana se emplea en la construcción de computadoras, circuitos eléctricos,
y dispositivos electrónicos. Es fundamental destacar que los sistemas modernos trabajan
a partir de lógica binaria. Es decir, la representación de dos valores.
Algunas de las aplicaciones más importantes del álgebra de Boole son las que se anotan
a continuación:
• En términos generales, el álgebra de Boole se puede emplear a cualquier sistema en
que cada variable posea dos estados (1 y 0).
• Las computadoras modernas realizan sus operaciones y almacenan la información
empleando valores binarios (1 y 0) y realizan sus operaciones en base al álgebra de
Boole.
• Se emplea en el diseño de circuitos electrónicos.
• Se emplea ampliamente en la programación (condiciones lógicas).
https://youtu.be/u4VhsP-CZbY
6
Subtema 1: Funciones Booleanas
Compuertas Lógicas
Las compuertas lógicas se constituyen en los elementos de construcción fundamental en
la lógica combinatoria, con esto, debemos considerar lo siguiente:
7
Subtema 1: Funciones Booleanas
Compuertas Lógicas
Por ejemplo, en cierto sistema digital el valor
booleano 0 podría asignarse a cualquier 0 (cero) Lógico 1 (uno) Lógico
voltaje en el intervalo 0 a 0.8 voltios,
mientras que el 1 booleano podría asignarse Falso Verdadero
a cualquier voltaje entre 2 y 5 voltios.
Apagado Encendido
Por ello, se debe tomar en cuenta que el 1 y Bajo Alto
0 booleanos no representan números reales,
sino el estado de una variable de voltaje o el No Sí
nivel lógico.
Interruptor abierto Interruptor cerrado
8
Subtema 1: Funciones Booleanas
Tablas de verdad
Al igual que en el caso de las proposiciones,
las tablas de verdad en el álgebra de Boole se
emplean a fin de describir la forma en que la
salida de un circuito lógico depende de los Entradas Salidas
niveles en sus entradas.
9
Subtema 1: Funciones Booleanas
10
Subtema 1: Funciones Booleanas
Preguntas
1. ¿Qué es el Algebra de Boole?
a) Una herramienta de gran utilidad para el estudio de los sistemas digitales
b) Un conjunto de proposiciones lógicas de naturaleza binaria
c) Un conjunto cerrado de elementos binarios relacionados por las operaciones lógicas suma y producto
2. ¿Cuántos valores puede tomar una variable lógica o Booleana?
a) 8
b) 2
c) 10
3. ¿Qué son las compuertas lógicas?
a) Dispositivos que son para limpieza de equipo de computo
b) Son circuitos electrónicos diseñados para obtener resultados booleanos
c) Dispositivos que ayudan a una función mas rápida de un ordenador
11
Subtema 2:
12
Subtema 2: Circuitos lógicos combinatorios
Compuerta OR
Entradas Salidas
La operación que se lleva a cabo con esta compuerta devolverá en la
salida un valor de 1 cuando al menos una de las dos entradas sea 1.
𝑋 =𝐴+𝐵
13
Subtema 2: Circuitos lógicos combinatorios
Compuerta AND
Entradas Salidas
La operación que se lleva a cabo con esta compuerta devolverá en la
salida un valor lógico de 1 cuando las dos entradas sean 1.
𝑋 =𝐴∙𝐵
14
Subtema 2: Circuitos lógicos combinatorios
Compuerta XOR
La operación que se lleva a cabo con esta compuerta devolverá en la Entradas Salidas
salida un valor lógico de 1 siempre y cuando las dos entradas sean
distintas. Esta compuerta recibe dos entradas.
A B X = 𝐴⨁𝐵
0 0 0
0 1 1
1 0 1
1 1 0
𝑋 = 𝐴⨁𝐵 = 𝐴 ∙ 𝐵ത + 𝐴ҧ ∙ 𝐵
= (𝐴 + 𝐵) ∙ (𝐴ҧ ∙ 𝐵)
ത
16
Subtema 2: Circuitos lógicos combinatorios
Compuerta XNOR
Representa la combinación de dos compuertas: una XOR seguida de una Entradas Salidas
NOT. Es importante observar que esta compuerta recibe dos entradas.
Podemos observar su tabla de verdad, el símbolo que la representa y su
ecuación correspondiente.
A B X = 𝐴⨁𝐵
0 0 1
0 1 0
1 0 0
1 1 1
𝑋 = 𝐴⨁𝐵 = 𝐴 ∙ 𝐵 + 𝐴ҧ ∙ 𝐵ത
17
Subtema 2: Circuitos lógicos combinatorios
Compuerta NOR
Representa la combinación de dos compuertas: una OR seguida de una Entradas Salidas
NOT. Es importante observar que esta compuerta recibe dos entradas.
Podemos observar su tabla de verdad, el símbolo que la representa y su
ecuación correspondiente.
A B X=𝐴+𝐵
0 0 1
0 1 0
1 0 0
1 1 0
𝑋 =𝐴+𝐵
18
Subtema 2: Circuitos lógicos combinatorios
Compuerta NAND
Representa la combinación de dos compuertas: una AND seguida de una Entradas Salidas
NOT. Es importante observar que esta compuerta recibe dos entradas.
Podemos observar su tabla de verdad, el símbolo que la representa y su
ecuación correspondiente.
A B X = 𝐴𝐵
0 0 1
0 1 1
1 0 1
1 1 0
𝑋 =𝐴∙𝐵
19
Subtema 2: Circuitos lógicos combinatorios
a b
¿?
c d
20
Subtema 3:
21
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
22
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
23
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
24
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
𝑋 = 𝐴ҧ ∙ 𝐵ത ∙ 𝐶ҧ + 𝐴ҧ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵ത ∙ 𝐶ҧ + 𝐴 ∙ 𝐵 ∙ 𝐶ҧ + 𝐴 ∙ 𝐵 ∙ 𝐶
Como se puede apreciar, la ecuación es grande, y si no la simplificamos, el circuito resultante empleará muchas
compuertas y no será práctico de construir. Por ello, a continuación se estudiarán los teoremas del álgebra de Boole, y
posteriormente, cómo reducir estas ecuaciones a través de Mapas de Karnaugh.
25
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Conmutativa: x + y = y + x; y también x · y = y · x
Asociativa: x + (y + z) = (x + y) + z; y también x · (y · z) = (x · y) · z
Distributiva: x · (y + z) = x · y + x · z; y también (x + y)(x + z) = x + (y · z)
Teorema de De Morgan’s - NOR: (𝑥 + 𝑦) = 𝑥 ̅ · 𝑦 ̅
Teorema de De Morgan’s - NAND: (𝑥 · 𝑦) = 𝑥 ̅ + 𝑦 ̅
26
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
NOT AND OR
ഥ=𝟏
𝟎 𝟎∙𝑿=𝟎 𝟎+𝑿=𝑿
ഥ=𝟎
𝟏 𝟏∙𝑿=𝑿 𝟏+𝑿=𝟏
ഥ=𝑿
𝑿 𝑿∙𝑿=𝑿 𝑿+𝑿=𝑿
ഥ=𝟎
𝑿∙𝑿 ഥ=𝟏
𝑿+𝑿
27
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
REGLAS
x(x + y) = x
Ejemplo x + x’ y = x + y
Ejemplo x ( x’ + y) = x y
28
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
Un método semigráfico basado en los mapas de Karnaugh es más apropiado para simplificar expresiones Booleanas
complejas. Un mapa de Karnaugh, al igual que las tablas de verdad, provee una representación lógica de las funciones.
Está compuesto por un número de celdas que se calcula a través, en base a las n entradas que tiene el sistema: 2n
En la siguiente imagen podemos apreciar dos formas de representar un mapa de Karnaugh de tres variables.
30
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
Para realizar la simplificación de una expresión
Booleana compleja, podemos emplear un mapa de
Karnaugh tomando en consideración las siguientes
premisas:
• Se debe colocar un valor de 1 en aquellas celdas
donde la tabla de verdad indica que la salida x es
distinta de 0.
• Las celdas del mapa de Karnaugh se etiquetan de
forma que las celdas adyacentes en forma
horizontal difieran sólo por una variable. Por
ejemplo, en el mapa (b) de la imagen anterior, la
celda superior izquierda es ¯𝐴 · ¯𝐵 · ¯𝐶 , mientras
que la celda contigua en la misma fila ¯𝐴 · ¯𝐵 · C
(solo difiere C).
• A fin de realizar el proceso de simplificación,
podemos agrupar los 1 en potencias de dos (2, 4 u
8) celdas.
31
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
A fin de simplificar la expresión, deberemos seguir
estas reglas:
• Las celdas que contienen 1 se conocen como
minterm (mínimo termino) y las que tienen 0
maxterm (máximo termino). Estas se deberán
agrupar de acuerdo a las funciones lógicas con las
que trabajemos.
• No se pueden hacer agrupaciones en diagonal, las
celdas que estén en los bordes (por ejemplo
primera fila) podrán agruparse con las de la última
fila, misma columna).
• Con el fin de determinar la ecuación lógica
resultante, se deben considerar aquellas variables
que no cambian dentro del grupo. Las que sí lo
hagan se eliminan.
32
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
A continuación se presenta un ejemplo que ilustra
cómo realizar la simplificación de un circuito. Ejemplo
de aplicación de Mapas de Karnaugh.
Solución:
Paso 1. En primer lugar debemos construir la tabla de
verdad que nos permitirá armar el mapa de Karnaugh
para realizar la simplificación correspondiente.
33
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
Paso 2. Con base a la tabla, armamos el mapa de
Karnaugh correspondiente.
11 10
34
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
Paso 3. Analizamos en el mapa qué agrupaciones podemos hacer
11 10
x = 𝐴 · 𝐵 · 𝐶+ 𝐴𝐶
35
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapas de Karnaugh
Paso 5. Diseñamos el circuito
x = 𝐴 · 𝐵 · 𝐶+ 𝐴𝐶
36
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
EJEMPLO 1
Dadas 3 entradas (A, B, C), diseñe un circuito lógico combinatorio que devuelva 1 uno en la salida (x) cuando se
cumplan las siguientes condiciones:
Solo entrada C tiene un valor de 1.
Solo entrada B tiene un valor de 1.
Las entradas B y C tienen un valor de 1
37
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
Mapa de Karnaugh
x = 𝑨 · 𝑩· 𝑪+ 𝑨 · 𝑩 + 𝑨 · 𝑩 · 𝑪 38
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
x = 𝑨 · 𝑩· 𝑪+ 𝑨 · 𝑩 · 𝑪 + 𝑨 · 𝑩 · 𝑪+ 𝑨 · 𝑩 · 𝑪
x = 𝑨 · 𝑩· 𝑪+ 𝑨 · 𝑩 · 𝑪 + 𝑩 · 𝑪 39
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
EJEMPLO 2
Dadas 4 entradas (A, B, C, D), diseñe dos circuitos lógicos combinatorios que cumplan las siguientes condiciones:
Circuito 1: que devuelva 1 uno en la salida (x) la entrada represente un numero binario par. Ejemplos de números
pares serían: 0010, 0100, · · ·
Circuito 2: que devuelva 1 uno en la salida (x) la entrada represente un numero binario impar. Ejemplos de números
pares serían: 001, 0011, 1001, · · ·
Es importante tener en mente que se pueden realizar varias combinaciones en un mapa de Karnaugh
40
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
41
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
LogiSim
http://www.cburch.com/logisim/
42
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
https://youtu.be/89_f_7orNjc
43
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
44
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
45
Subtema 3: Diseño de soluciones a problemas empleando circuito lógicos combinatorios
46
Referencias:
▪ A. Aguilar Marquez, Matemáticas Simplificadas, Pearson, 2009.
▪ A. K. Maini, Digital electronics: principles, devices and applications, John Wiley & Sons, 2007.
▪ Li, W. N., Reddy, S. M., & Sahni, S. K. On path selection in combinational logic circuits. IEEE Transactions on Computer-
Aided Design of Integrated Circuits and Systems, 8(1), 56-63, 1989
▪ S. K. Sarkar, A. K. De, S. and Sarkar, Foundation of Digital Electronics and Logic Design, Pan Stanford Publishing, 2015.
▪ J.R. Tocci, N. Widmer, G. Moss, Sistemas digitales: principios y aplicaciones, Pearson Educación, 2007.
▪ J. E. Whitesitt, Boolean algebra and its applications, Dover Publications Inc., 2010.
▪ L. Joyanes Aguilar; Fundamentos generales de programación; Editorial McGraw Hill, 5ta Edición; Madrid 2013.
▪ R. Martínez Fernández; Programación en C: Ejercicios; Editorial UPM, 1ra redición; Madrid 2014.
▪ D. Abbott; Linux for embedded and real time aplications; Editorial Newnes, 3ra edition; 2013.
www.ups.edu.ec