Medios informáticos y comunicación

Anuncio
f (a, b, c, d ) 
 0 , 2 ,3, 4 ,5 , 7 ,9 ,10 ,11 ,12 ,13 ,15 
f (a, b, c, d ) 
 14 ,9 , 7 ,1 
Tabla de verdad:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
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
1
0
1
1
1
1
0
1
0
1
1
1
1
1
0
1
Simplificación por Karnaugh:
Mapa de Karnaugh:
aaaaaab
00 01 11 10
cd
00
1 1 1 0
01
0 1 1 1
11
1 1 1 1
10
1 0 0 1
Simplificación por ceros:
aaaaaab
00 01 11 10
cd
00
1 1 1 0
01
0 1 1 1
11
1 1 1 1
10
1 0 0 1

f ( a , b , c , d )  ( a  b  c  d ) ( a  b  c  d ) (b  c  d )
Simplificación por unos:
aaaaaab
aaaaaab
00 01 11 10 vaasadacío
00 01 11 10
cd
cd
00
1 1 1 0
00
1 1 1 0
01
0 1 1 1
01
0 1 1 1
11
1 1 1 1
11
1 1 1 1
10
1 0 0 1
10
1 0 0 1
G2_1
G2_2
aaaaaab
aaaaaab
00 01 11 10 vaasadacío
00 01 11 10
cd
cd
00
1 1 1 0
00
1 1 1 0
01
0 1 1 1
01
0 1 1 1
11
1 1 1 1
11
1 1 1 1
10
1 0 0 1
10
1 0 0 1
G4_1, G4_2
G4_3
aaaaaab
aaaaaab
00 01 11 10 vaasadacío
00 01 11 10
cd
cd
00
1 1 1 0
00
1 1 1 0
01
0 1 1 1
01
0 1 1 1
11
1 1 1 1
11
1 1 1 1
10
1 0 0 1
10
1 0 0 1
G4_4
G4_5
Cobertura final:
Los grupos G4_1, G4_2 y G4_4 tienen que entrar siempre, porque cubren unos (en negrita) no cubiertos por
ningún otro grupo. Para cubrir el resto de los unos hay cuatro posibilidades igual de válidas:
aaaaaab
aaaaaab
00 01 11 10 vaasadacío
00 01 11 10
cd
cd
00
1 1 1 0
00
1 1 1 0
01
0 1 1 1
01
0 1 1 1
11
1 1 1 1
11
1 1 1 1
10
1 0 0 1
10
1 0 0 1
Cobertura 1
Cobertura 2
aaaaaab
aaaaaab
00 01 11 10 vaasadacío
00 01 11 10
cd
cd
00
1 1 1 0
00
1 1 1 0
01
0 1 1 1
01
0 1 1 1
11
1 1 1 1
11
1 1 1 1
10
1 0 0 1
10
1 0 0 1
Cobertura 3
Cobertura 4
C1: G4_1, G4_2, G4_4, G4_5, G2_1

f ( a , b , c , d )  b c  b c  ad  cd  a c d
C2: G4_1, G4_2, G4_4, G4_5, G2_2

f ( a , b , c , d )  b c  b c  ad  cd  a b d
C3: G4_1, G4_2, G4_4, G4_3, G2_1

f ( a , b , c , d )  b c  b c  ad  bd  a c d
C4: G4_1, G4_2, G4_4, G4_3, G2_2

f ( a , b , c , d )  b c  b c  ad  bd  a b d
Simplificación por Quine-McCluskey:
Para realizar la simplificación por unos, se escribe una tabla en la que aparezcan los términos para los que la
función vale uno, agrupándolos según el número de unos que posee cada combinación binaria asociada (grado
de los términos). A cada término se le da un número según el valor decimal de la combinación binaria que le
corresponde.
abcd
Grado 0 0000
0010
Grado 1
0100
0011
0101
Grado 2 1001
1010
1100
0111
Grado 3 1011
1101
Grado 4 1111
m0
m2
m4
m3
m5
m9
m10
m12
m7
m11
m13
m15












Es obvio que los términos adyacentes en sentido algebraico son aquéllos que están en grupos de grado
consecutivo y en los que coinciden todas las variables menos una. Partiendo de esta idea, se forma una segunda
tabla en la que se comparan los términos de grados consecutivos y se agrupan aquéllos que son adyacentes; la
expresión de cada nuevo término la hallaremos dejando igual las variables que no cambian y sustituyendo por
guiones aquéllas que sí cambian.
Todos los términos de la primera tabla que han sido utilizados para realizar la segunda se marcan como , para
indicar que ya existen términos más sencillos que los contienen. Los términos que al final del proceso no estén
marcados se denominarán términos primos.
Grado 0
Grado 1
Grado 2
Grado 3
abcd
00_0
0_00
001_
_010
010_
_100
0_11
_011
01_1
_101
10_1
1_01
101_
110_
_111
1_11
11_1
m0+m2
m0+m4
m2+m3
m2+m10
m4+m5
m4+m12
m3+m7
m3+m11
m5+m7
m5+m13
m9+m11
m9+m13
m10+m11
m12+m13
m7+m15
m11+m15
m13+m15
















A partir de esta tabla repetimos la operación agrupando términos adyacentes (aquéllos que se encuentren en
grupos consecutivos, tengan los guiones en las mismas posiciones y se diferencien en sólo un bit). Los términos
que aparezcan repetidos se pueden eliminar según la ley de idempotencia.
abcd
Grado 0
_01_
_01_
Grado 1
_10_
_10_
__11
__11
_1_1
Grado 2
_1_1
1__1
1__1
m2+m3+m10+m11 
m2+m10+m3+m11
m4+m5+m12+m13
m4+m12+m5+m13
m3+m7+m11+m15
m3+m11+m7+m15
m5+m7+m13+m15
m5+m13+m7+m15
m9+m11+m13+m15
m9+m13+m11+m15
El proceso de generar nuevas tablas continúa hasta que no sea posible agrupar más (todos los grupos contiguos
difieran en más de un bit), cosa que ya sucede en este ejemplo.
El procedimiento se completa ahora seleccionando el número mínimo de términos primos que cubran a todos los
términos canónicos de los que se compone la función. Para ello se sigue el siguiente proceso:
a)
Se dibuja una tabla con tantas columnas como términos canónicos forman parte de la función, y tantas
filas como términos primos hayan resultado.
b) Para cada término primo (es decir, en cada fila), se marcan con un asterisco las columnas cuyo término
canónico está contenido en el término primo.
c)
Una vez terminada la tabla, si existe alguna columna con un solo asterisco, se dice que el término primo
que realice ese asterisco es esencial, y ha de formar parte obligatoriamente de la función reducida.
d) Si todos los términos canónicos realizados por una fila son realizados a su vez por términos primos de
otras filas de menor complicación, entonces esa fila se puede suprimir. Si dichos términos son de igual
complejidad, entonces hay varias expresiones algebraicas mínimas.

abcd m0 m2
1
00_0 * *
2
0_00 *
3 E _01_
*
4 E _10_
5
__11
6
_1_1
7 E 1__1
  
     
m3 m4 m5 m7 m9 m10 m11 m12 m13 m15
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
Tras utilizar los términos esenciales, nos quedan por cubrir los términos canónicos m 0 y m7. Para cubrir m0
nos valen las filas 1 y 2, que son de complejidad equivalente (dos guiones en cada una), y para cubrir m7 nos
sirven las filas 5 y 6, que también son de complejidad equivalente. Por lo tanto, hay cuatro soluciones
mínimas posibles:
C1: Filas 3, 4, 7, 1 y 5

f ( a , b , c , d )  b c  b c  ad  a b d  cd
C2: Filas 3, 4, 7, 1 y 6

f ( a , b , c , d )  b c  b c  ad  a b d  bd
C3: Filas 3, 4, 7, 2 y 5

f ( a , b , c , d )  b c  b c  ad  a c d  cd
C4: Filas 3, 4, 7, 2 y 6

f ( a , b , c , d )  b c  b c  ad  a c d  bd
Simplificación por ceros:
El proceso es exactamente igual, pero teniendo en cuenta que trabajaremos con aquellos términos que valgan
cero en la tabla de verdad y que, al formar las tablas, el grado de cada término es el número de ceros que
contiene.
Para nuestro ejemplo, obtenemos las siguientes tablas:
f (a, b, c, d ) 
 14 ,9 , 7 ,1 
abcd
Grado 0
Grado 1 1110 M1 
Grado 2 0110 M9 
1000 M7
Grado 3
0001 M14
Grado 4
Agrupando según adyacencias (ahora los grupos son productos de términos):
abcd
Grado 0
Grado 1 _110 M1 · M9 
Y ya no es posible agrupar más, así que se elabora la tabla de simplificación final:
   
abcd M1 M7 M9 M14
3 E _110 *
*
4 E 1000
*
7 E 0001
*
Los tres términos que aparecen en la tabla son esenciales. La función resultante será por tanto (¡hay que recordar
que para convertir cada combinación de variables en maxitérmino es necesario usar lógica invertida!):
f a , b , c , d   ( b  c  d ) ( a  b  c  d ) ( a  b  c  d )
Descargar