OnLine

Hay 54 invitados y ningún miembro en línea

Acceso usuarios

Menu Usuario

Anuncio (2L):

 

a

El Algoritmo Quine–McCluskey es un método de simplificación de funciones booleanas desarrollado por Willard Van Orman Quine y Edward J. McCluskey. Es funcionalmente idéntico a la utilización del mapa de Karnaugh, pero su forma tabular lo hace más eficiente para su implementación en lenguajes computacionales, y provee un método determinista de conseguir la mínima expresión de una función booleana.



Para conocer el método leer a partir del apartado "Pasos", para ver como usar este método en una hoja de cálculo podeis ver los siguientes videos:


Pasos

El método consta de dos pasos:

  1. Encontrar todos los implicantes primos de la función.
  2. Usar esos implicantes en una tabla de implicantes primos para encontrar los implicantes primos esenciales, los cuales son necesarios y suficientes para generar la función.

Complejidad[editar]

Aunque es más práctico que el mapa de Karnaugh, cuando se trata de trabajar con más de cuatro variables, el tiempo de resolución del algoritmo Quine-McCluskey crece de forma exponencial con el aumento del número de variables. Se puede demostrar que para una función de n variables el límite superior del número de implicantes primos es 3n/n. Si n = 32 habrá más de 6.5 * 1015 implicantes primos. Funciones con un número grande de variables tienen que ser minimizadas con otros métodos heurísticos.

Ejemplo[editar]

Paso 1: Encontrando implicantes primos[editar]

Minimizando una función arbitraria:

f \left( A,B,C,D \right ) =\sum m \left( 4,8,10,11,12,15 \right) + \sum d \left( 9,14 \right) \,
ABCDf
m0 0 0 0 0 0
m1 0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
m4 0 1 0 0 1
m5 0 1 0 1 0
m6 0 1 1 0 0
m7 0 1 1 1 0
m8 1 0 0 0 1
m9 1 0 0 1 X
m10 1 0 1 0 1
m11 1 0 1 1 1
m12 1 1 0 0 1
m13 1 1 0 1 0
m14 1 1 1 0 X
m15 1 1 1 1 1

Uno fácilmente puede formar la expresión canónica suma de productos de esta tabla, simplemente sumando minitérminos (dejando fuera las redundancias) donde la función se evalúa con 1:

 \begin{matrix} f_{A,B,C,D} = A'BC'D' + AB'C'D' + AB'CD' + AB'CD + ABC'D' + ABCD \end{matrix}

Por supuesto, esta expresión no es mínima. Para optimizarla, primero son colocados todos los minitérminos evaluados en la función como 1 en una tabla. Las redundancias también son agregadas a la tabla, estas pueden combinarse con los minitérminos:

N. de 1sMintermRepresentación binaria
1 m4
m8
0100
1000
2 m9
m10
m12
1001
1010
1100
3 m11
m14
1011
1110
4 m15 1111

En este punto, uno puede empezar a combinar los minitérminos entre sí. Si dos minitérminos sólo varían en un solo dígito, ese dígito debe reemplazarse por un guion "-" indicando que ese bit no importa. Los términos que ya no pueden combinarse más son marcados con "*". Cuando van de tamaño 2 a 4, tratamos '-' como un valor de bit.

Ejemplo: -110 y -100 o -11- pueden ser combinados, pero no -110 y 011-.

(Consejo: agrupar los '-' primero.)

Número de 1s  Minterm    Bin    | Implicantes de tamaño 2 | Implicantes de tamaño 4
--------------------------------|-------------------------|------------------------
1               m4       0100   |     m(4,12)  -100*      |   m(8,9,10,11)   10--*
                m8       1000   |     m(8,9)   100-       |   m(8,10,12,14)  1--0*
--------------------------------|     m(8,10)  10-0       |------------------------
2               m9       1001   |     m(8,12)  1-00       |   m(10,11,14,15) 1-1-*
                m10      1010   |-------------------------|
                m12      1100   |     m(9,11)  10-1       |
--------------------------------|     m(10,11) 101-       |
3               m11      1011   |     m(10,14) 1-10       |
                m14      1110   |     m(12,14) 11-0       |
--------------------------------|-------------------------|
4               m15      1111   |     m(11,15) 1-11       |
                                |     m(14,15) 111-       |

Paso 2: tabla de implicantes primos[editar]

Los términos marcados con "*" ya no pueden combinarse más, en este punto ya tenemos la tabla de implicantes primos. En el costado van los implicantes primos recientemente generados, y en la parte superior los minitérminos utilizados. Los minitérminos correspondientes a las redundancias son omitidos en este paso, no se colocan en la parte superior.

----------------------------------------------------------------

----------------------------------------------------------------

4810111215
m \left( 4,12 \right)* X X - 1 0 0
m \left( 8,9,10,11 \right) X X X 1 0 - -
m \left( 8,10,12,14 \right) X X X 1 - - 0
m \left( 10,11,14,15 \right)* X X X 1 - 1 -

En esta tabla vemos los minitérminos que "cubre" cada implicante primo. Ninguno de los implicantes de esta tabla está incluido dentro de otro (esto queda garantizado en el paso uno), pero si puede estar "cubierto" por dos o más implicantes. Es el caso de m \left( 8,9,10,11 \right) que está cubierto por m \left( 8,10,12,14 \right)m \left( 10,11,14,15 \right)m \left( 8,10,12,14 \right) que está cubierto por m \left( 8,9,10,11 \right)m \left( 4,12 \right).

Por este motivo, cada uno de estos dos implicantes sólo son esenciales en ausencia del otro. Un proceso adicional simple para reducir estos implicantes es prueba y error, pero un proceso más sistemático es el método de Petrick. En el caso que estamos analizando, los dos implicantes primos m \left( 4,12 \right)m \left( 10,11,14,15 \right) no llegan a incluir todos los minitérminos por lo que podemos combinar estos implicantes con cada uno de los implicantes no esenciales para conseguir dos funciones mínimas:

----------------------------------------------------------------

----------------------------------------------------------------

 \begin{matrix} f_{A,B,C,D} = BC'D' + AB' + AC \end{matrix}

 \begin{matrix} f_{A,B,C,D} = BC'D' + AD' + AC \end{matrix}

Las dos son equivalentes a esta función original:

 \begin{matrix} f_{A,B,C,D} = A'BC'D' + AB'C'D' + AB'C'D + AB'CD' + AB'CD + ABC'D' + ABCD' + ABCD \end{matrix}

----------------------------------------------------------------

----------------------------------------------------------------

FV04.jpg

Articulos aleatorios:

La ultraconectividad impulsa a la industria a migrar a IPv6.

El 6 de junio de 2012 se lanzó a nivel mundial el nuevo protocolo de red IPv6 que venía a sustituir a la versión 4 (IPv4). La idea era que su despliegue se llevara a cabo de forma gradual, en coexistencia con el anterior sistema, al que iría desplazando a medida que los dispositivos de cliente, equipos de red, aplicaciones, contenidos y servicios se fueran adaptando. Sin embargo, su implementación no está siendo tan rápida, al menos en nuestro país.

Liam F1, el miniaerogenerador doméstico más silencioso“The Archimedes”, una compañía holandesa de investigación y desarrollo, ha presentado en Rotterdam una nueva generación de turbinas eólicas para su uso doméstico y de diseño rompedor que, según asegura la empresa, produce mucha más energía que las actuales y apenas genera ruido.

Crecen los acuerdos para fomentar la bioenergía de origen forestal

Mientras en algunos lugares la masa forestal no deja de desaparecer a causa de los cada vez más frecuentes incendios forestales, en algunas comunidades autónomas crecen los acuerdos para fomentar la bioenergía de origen forestal. Galicia, nuestra comunidad, posee un enorme potencial económico en el aprovechamiento forestal, tanto para industria maderera, como en el aprovechamiento energético; el cual, puesto en valor, redundaría en beneficio de sectores económicos transversales. ... 

 
Normativa sobre energía y solar fotovoltaica - Autoconsumo

 

 

Producción energia

Producción

 

Anuncio (1L):

 

MeteoGalicia

TarifaLuz

https://tarifaluzhora.es