Ir ao conteúdo

Implementação de funções lógicas


Neikolt

Posts recomendados

Postado

Introdução

Os circuitos digitais implementam funções lógicas, que produzem resultados lógicos

dependentes das entradas da função.

Uma das formas de representar os resultados da função lógica de um circuito digital é sob

a forma de uma tabela, designada por tabela de verdade. Por exemplo, considere-se a

porta AND como exemplar de circuito digital, caracterizada por uma designação,

representação gráfica, função lógica e respectiva tabela de verdade:

Porta AND

Conjunção (“e” lógico)

Função Lógica: S = A ∧ B

Tabela de Verdade:

A B S

0 0 0

0 1 0

1 0 0

1 1 1

Enunciado

O objectivo deste trabalho é desenvolver uma aplicação em C que permita combinar

circuitos lógicos previamente inseridos e configurados na aplicação.

Os circuitos lógicos a considerar são caracterizados por um nome (máximo 10 caracteres)

e por uma tabela de verdade, da qual poderão constar, no máximo, três entradas e apenas

uma saída.

Assim sendo, o utilizador da aplicação deverá ter a possibilidade de:

• Inserir circuitos lógicos (nome e tabela de verdade);

A

B

S

Trabalho Prático EERC - AED 2008-2009 2

• Alterar um circuito lógico (nome e/ou tabela de verdade);

• Consultar a tabela de verdade de um circuito lógico;

• Listar todos os circuitos lógicos inseridos pelo utilizador;

• Combinar os circuitos inseridos e testar o valor lógico.

Este último requisito pressupõe que o utilizador possa, repetidamente e enquanto o

desejar, escolher um circuito e especificar o valor para as suas entradas, devendo ser

posteriormente calculado o valor da saída. As entradas de um circuito poderão

inclusivamente ser uma das saídas dos circuitos já utilizados anteriormente.

Por exemplo, considere-se que o utilizador da aplicação insere três circuitos

• o circuito “C1”, com duas entradas;

• o circuito “C2”, com uma entrada;

• o circuito “C3”, com três entradas;

configurando, para o efeito, as correspondentes três tabelas de verdade.

Considere-se agora que o utilizador pretende combinar os circuitos, começando por

escolher o circuito “C1”, para o qual deverá especificar dois valores lógicos (duas

entradas), sendo produzido e apresentado o resultado da função lógica desse circuito.

Seguidamente o utilizador escolhe o circuito “C2” e especifica igualmente o valor da

única entrada desse circuito, sendo produzida e apresentado o valor da respectiva saída.

Por último, considere-se que o utilizador escolhe o circuito “C3”, configurando as suas

três entradas da seguinte forma:

• entrada 1 de “C3”: saída calculada de “C1”;

• entrada 2 de “C3”: saída calculada de “C2”;

• entrada 3 de “C3”: valor lógico especificado pelo utilizador;

sendo posteriormente calculado e apresentado o resultado da saída do circuito, dando o

utilizador por finalizada a combinação de circuitos.

O exemplo agora apresentado deverá ser considerado como um dos inúmeros exemplos

para os quais a aplicação deverá estar preparada.

Se me conseguirem ajudar agradecia :wink;

  • Membro VIP
Postado

Por acaso voce conhece a teoria de DeMorgan?Amanha quando voltar pra BH eu te dou uma moral federal a respeito disso. abração.

  • Membro VIP
Postado

A gente pode descomplicar alogica binaria das portas and, or, not e derivadas, usando o teorema de DeMorgan e o mapa de Karnaught. Amanha cedo eu esponho td pra você. Se quiser ja ir dando uma miguelada no google, seria legal. abração.

  • Membro VIP
Postado

Andei revendo o enunciado e acho que sem os teoremas de DeMorga e o mapa de Karnaught, fica complicado fazer isso. Vou te dar uma ideia interessante a respeito do seu projeto. Inicialmente pode nao ser fielmente o q foi pedido no enunciado, mas é quase igual. Requisite ao user que entre com a expressao logica(ou então com as variaveis que deseja), contendo portas and,or, e dervidas(Nor,Nand,Xor e Xnor).você monta a equaçao e cria um switch-case pra tratar a expressao a partir das 7 ou 8 confirmaçoes de DeMorgan.Após tratar essas condiçoes, vai-se ao mapa de Karnaught para simplificar ao máximo a expressao e, ao final, terás uma expressao limpa e reduzida; poupando assim o uso de varios CI's. Se achar que essa ideia é pertinente e quiser aprofundar nela, é só falar. abração.

Postado

amigao... se você tem uma duvida... temos o maior prazer em ajudar... so que fazer trabalho... cara... se vira ae... mas se lembre... tendo duvida posta ae....

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!