Tecnica de quine mccluskey

Disponível somente no TrabalhosFeitos
  • Páginas : 13 (3100 palavras )
  • Download(s) : 0
  • Publicado : 14 de outubro de 2012
Ler documento completo
Amostra do texto
Mapa de Karnaugh Minimizer (3 variáveis)
Por legendman_a1 , 27 de julho de 2009
|    5,00 ( cinco votos ) |
|   |
-------------------------------------------------
Parte superior do formulário
* Baixe executável - 12,73 KB
* Baixe o código-fonte - 6,1 KB

Índice analítico
* Introdução
* Fundo
* Algoritmo
* Entrando entradas e classificando-os
* Deexecutar a comparação
* Determinar implicantes primos
* Determinar essenciais implicantes primos
* Formando a função
* Condições especiais
* Implementação
* Passo 1
* Passo 2
* Passo 3
* Passo 4
* Passo 5
* Referências
Introdução
Este programa fornece um código geral em linguagem C (você pode chama-lhe um código pseudo) que pode serimplementado em outras línguas para resolver o 3-var mapa de Karnaugh.
Fundo
O programa utiliza o método do algoritmo de Quine-McClusky & Petrick como eles são fáceis de implementar em programação.
Aqui estão algumas dicas para usar este programa:
1. Digite os mintermos em números decimais, quando terminar, digite caráter 'q' para sair.
2. Digite os termos não se importa (seexistirem), quando terminar, digite caráter 'q' para sair.
3. Escolha a forma de função (SOP ou POS).
Algoritmo
Vou começar primeiro com o algoritmo para tornar o código mais fácil de entender.
O Quine - McClusky algoritmo foi desenvolvido para implementar mapas de Karnaugh que são muito importantes em design digital ou simplificar as funções booleanas. O algoritmo consiste de alguns passos quedeve tratar de fazer nosso projeto ou trabalho de código perfeitamente sem erros.
Passo 1
Reúna todos os mintermos e não se importam termos (se houver) e convertê-los em forma binária, em seguida, classificá-los em grupos e incluí-los em uma lista (chamada Lista 1).
Exemplo: Se temos estes termos (0,1,2,3,4,7,6), em seguida, os grupos devem ser assim:
* grupo 0 contém o binário [000]
*grupo 1 contém os binários [001 (0 em decimal), 010 (2 em decimal), 100 (4 em decimal)]
* grupo 2 contém os binários [011 (3 em decimal), 110 (6 em ​​decimal)]
* grupo 3, grupo final, contém o binário [111 (7 em decimal)]
Podemos ver desses grupos que são classificados de acordo com o número de uns em cada número binário.
Passo 2
Comparar o grupo 1 com o grupo 2 e grupo 2 com o grupo 3 eo grupo 3 com o grupo 4, a comparação é realizada através da comparação de cada termo, no primeiro grupo, com todos os termos de conceito comparação próxima group.The é que, se dois termos têm apenas 1 pouco diferente, então este bit deve ser substituído com (-) como: (000, 001) ==> (00 -).
Após a comparação é feita em (Lista 1), mover para a Lista 2 e fazer a mesma comparação, mas vamosencontrar um novo elemento, o hífen (-) que temos de lidar com isso na comparação. Quando comparamos dois mandatos tracejadas, a comparação é legal apenas se a posição traço é o mesmo nos dois mandatos, caso contrário, não podemos comparar esses termos como: (00 -, 01 -) ==> (0 -), mas (00 -, 0-1) é ilegal.
Se dois termos comparados com sucesso, um carácter de controlo é colocado ao lado dostermos comparados (dizem que o chr cheque é 't'), se não, eu quero dizer que os dois termos têm bits mais diferentes ou a posição traço não é o mesmo no dois termos, então um caráter de seleção deve ser colocado ao lado dos termos uncompared (digamos verificação chr é '*') para indicar algo que vamos discutir no passo 3.
Nota : Se dois termos não podem ser comparados dizer um termo no grupo 2 e dogrupo 3 prazo, se o termo que está no grupo 3 podem ser comparados com um termo mais tarde no grupo 4, então o indicador ('*') deve ser substituído ou substituído por ('t') indicador.
| Lista 1 | Lista 2 | Lista 3 |
grupo 0 | 000t | 00-t | 0 - * |
| | 0-0t | - 0 * |
| | -00T | |
grupo 1 | 001T | 0-1t | -1 - * |
| 010t | 01-t | |
| 100t | -10t | |
| | 1-0t | |
grupo 2...
tracking img