Solucionador de circuitos lógicos em C++
|
|
- Caio Cesário Natal
- 7 Há anos
- Visualizações:
Transcrição
1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE ENGENHARIA DE COMPUTAÇÃO E AUTOMAÇÃO DCA Solucionador de circuitos lógicos em C++ Camila de Oliveira Silva, Victor Neves Nogueira, Natal, 04 de novembro de 2011.
2 Resumo O presente trabalho consiste na aplicação dos conceitos de programação orientada a objetos na lógica combinacional de circuitos, no contexto da obtenção da tabela-verdade a partir de um arquivo contendo dados de um circuito lógico descrito em linguagem formal. Na parte inicial do trabalho, serão apresentados os conceitos referentes à lógica combinacional de circuitos e programação orientada a objetos. Em um momento posterior, será realizada a correta modelagem do problema da tabela-verdade. A seguir, todos os detalhes de implementação desse programa, na linguagem C++, serão apresentados. Alguns circuitos de teste servirão de entrada para o projeto, e os resultados obtidos serão comentados. Finalmente, será feita uma breve conclusão sobre os resultados obtidos, bem como uma análise da possibilidade de melhorias e trabalhos futuros.
3 Conteúdo 1 Introdução 6 2 Desenvolvimento Bases teóricas Lógica combinacional de circuitos Programação orientada a objetos Especificações e descrições do projeto Implementação do projeto 15 3 Resultados Teste e validação do projeto 19 4 Conclusões 24
4 Lista de Figuras 2.1 Representação de um circuito combinacional Representação de uma porta OR Representação de uma porta AND Representação de uma porta NOT Representação de uma porta NOR Representação de uma porta NAND Circuito combinacional de uma porta XOR Representação de uma porta XOR Circuito combinacional de uma porta XNOR Representação de uma porta XNOR Circuito combinacional a ser avaliado Modelo de arquivo texto com a especificação do circuito Resultado gerado Trecho do código em C Outro trecho do código em C Circuito Especificação do circuito Saída do programa para o circuito Circuito Especificação do circuito Saída do programa para o circuito 3 23
5 Lista de Tabelas 2.1 Tabela Verdade da porta OR Tabela Verdade da porta AND Tabela Verdade da porta NOT Tabela Verdade da porta NOR Tabela Verdade da porta NAND Tabela Verdade da porta XOR Tabela Verdade da porta XNOR 13
6 Capítulo1 Introdução Hoje em dia, o termo digital tornou-se parte do nosso vocabulário diário devido ao modo intenso pelo qual os circuitos digitais e as técnicas digitais passaram a ser amplamente utilizados em quase todas as áreas: computadores, automação, robôs, tecnologia e ciência médica, transportes, entretenimento, exploração espacial e assim por diante. Nesse contexto, torna-se útil inserir a programação orientada a objetos para resolver problemas na lógica combinancional de circuitos, já que é uma maneira mais clara e fácil de programação e o código torna-se mais flexível. Este relatório busca citar vantagens e explicar os métodos que foram utilizados para gerar um programa que mostra todas as possíveis soluções de um circuito digital, em C++. Para tanto, optamos por modelar o sistema de uma forma clara, bem como utilizar os conceitos e métodos já existentes na linguagem orientada a objetos para apresentarmos a solução, unindo os conceitos de portas lógicas (AND, OR, XOR, NOT, XNOR, NAND, NOR), números binários e manipulação de arquivos. 6
7 Capítulo 2 Desenvolvimento Bases teóricas 2.1.1) Lógica combinacional de circuitos a) Circuitos Lógicos Os circuitos digitais operam no modo binário, em que cada tensão de entrada e saída é 0 ou 1. Uma tabela-verdade é uma técnica para determinar como a saída de um circuito lógico depende dos níveis lógicos presentes nas entradas do circuito. Essa tabela relaciona todas as combinações possíveis para os níveis lógicos presentes nas entradas com o correspondente nível lógico na saída. Logo, se tivermos n entradas, a tabela conterá 2 n linhas diferentes relacionando entradas com saídas. b) Topologia do circuito Considera-se um circuito combinancional composto por portas lógicas ligadas por fios de interconexão. Por simplicidade, é assumido que cada porta lógica possui uma saída e uma ou duas entradas. Cada saída é conectada à entrada de outra porta lógica, ou é uma saída primária do circuito, enquanto que cada entrada é conectada à saída de outra porta lógica, ou é uma entrada primária do circuito. Também assumimos que o caminho é acíclico, ou seja, não há caminhos que levam a mesma porta lógica ao percorrer tal circuito. Pode-se, então, representar o circuito por um grafo acíclico direto (DAG Directed Acyclic Graph), onde cada nodo representa uma porta lógica, e cada arco representa uma interconexão. A figura abaixo representa um circuito com três entradas (A, B e C), uma saída (D), e oito portas lógicas. 7
8 Figura 2.1: Representação de um circuito c) Operações em circuitos lógicos Porta OR A operação mostra que a saída de uma porta OR com várias entradas terá nível lógico 1 quando pelo menos uma entrada tiver nível lógico 1. Sejam A e B, por exemplo, duas entradas de uma porta NOR, dizemos que x é a saída e x = A + B é a expressão lógica desta porta. As figuras abaixo mostram a sua tabela verdade, bem como a sua representação: Tabela 2.1: Tabela Verdade da porta OR A B x Figura 2.2: Representação de uma porta OR 8
9 Porta AND A saída de uma porta AND só terá nível 1 quando todas as suas entradas forem de nível lógico 1. Para duas entradas A e B, a expressão lógica para essa porta para a saída x é x = A.B. As figuras abaixo mostram a tabela verdade dessa porta para duas entradas, bem como a sua representação: Tabela 2.2: Tabela Verdade da porta AND A B x Figura 2.3: Representação de uma porta AND Porta NOT Essa porta, também chamada de inversor, recebe apenas uma entrada e sua saída será o inverso do nível lógico de entrada. Abaixo estão representados expressão lógica, tabela verdade, bem como a sua representação: x = A Tabela 2.3: Tabela Verdade da pota NOT A x
10 Figura 2.4: Representação de uma porta NOT Portas NOR e NAND Dois outros tipos de portas lógicas, as portas NOR e NAND, são muito utilizadas em circuitos lógicos. A porta NOR é uma porta OR seguida de um inversor. Logo, a saída desta porta só será 1 quando todas as entradas tiverem nível lógico 0. x = A + B Tabela 2.4: Tabela Verdade de porta NOR A B x Figura 2.5: Representação de uma porta NOR Já a porta NAND é uma porta AND seguida de um inversor. Dessa maneira, a sua saída terá nível lógico 0 apenas quando todas as entradas tiverem nível lógico 1. x = A. B 10
11 Tabela 2.5: Tabela Verdade de uma porta NAND A B x Figura 2.6: Representação de uma porta NAND Porta XOR Essa porta deriva de um circuito combinancional com portas OR e AND, também chamado de Exclusive-OR. O circuito combinacional Exclusive-OR está representado abaixo: Figura 2.7: Circuito combinacional da porta XOR Nele, observamos que a saída x terá nível lógico 1 apenas quando as entradas tiverem níveis lógicos opostos, ou seja: x = A B + AB 11
12 Tabela 2.6: Tabela Verdade da porta XOR A B X Ao invés de desenhar todo este circuito, podemos optar por uma representação mais simplificada para ele, que é a porta XOR mostrada abaixo: Figura 2.8: Representaçãol da porta XOR Diferentemente das outras portas, esta tem apenas duas entradas. Porta XNOR O circuito que esta porta representa atua de forma inversa à lógica da porta XOR: a saída estará em nível ALTO (nível lógico 1) apenas quando as entradas tiverem níveis lógicos iguais. Da mesma forma, este circuito aceita apenas duas entradas e está representado abaixo: Figura 2.9: Circuito combinacional da porta XNOR 12
13 O desenho simplificado é a porta XOR seguida de um inversor: x = A B + AB Figura 2.10: Representação da porta XNOR Tabela 2.7: Tabela Verdade da porta XNOR A B X ) Programação orientada a objetos Objetos são instâncias de classes, que determinam qual informação um objeto contém e como ele pode manipulá-la. Um programa desenvolvido com uma linguagem de programação orientada a objetos manipula estruturas de dados através dos objetos da mesma forma que um programa em linguagem tradicional utiliza variáveis. Um dos grandes diferenciais da programação orientada a objetos em relação a outros paradigmas de programação está no conceito de herança, mecanismo através do qual definições existentes podem ser facilmente estendidas. Juntamente com a herança, deve ser enfatizada a importância do polimorfismo, que permite selecionar funcionalidades que um programa irá utilizar de forma dinâmica, durante sua execução. 2.2 Especificações e descrições do projeto 13
14 O projeto baseia-se na construção de um programa em C++ que calcule tabelasverdade para circuitos lógicos combinacionais descritos em linguagem formal de especificação de circuito. Esta ferramenta lê a descrição de um dado circuito escrito em um arquivo de texto simples e então apresenta os resultados da expressão lógica correspondente. Seja o circuito combinacional abaixo (figura 2.11): Figura 2.11: Exemplo de circuito combinacional Como exemplo dado, o programa deve ler o arquivo de texto abaixo (figura 2.12), que é a interpretação do circuito acima, e imprimir na tela o que mostra na figura 2.13: Figura 2.12: Modelo de arquivo de texto com as especificações do circuito acima 14
15 Figura 2.13: Resultado gerado 2.3 Implementação do projeto Começamos elaborando o arquivo texto que serviu como a entrada do programa. Com ele pronto, tivemos a base para programação da ferramenta. Utilizamos as seguintes bibliotecas: iostream, fstream, sstream, cmath, vector, queue e set. Posteriormente, criamos duas classes: Conexão e Circuito. 15
16 Figura 2.14: Trecho do código em c++ A primeira recebe os dados de cada linha do arquivo texto e armazena-os em variáveis inteiras (entrada1, entrada2, porta, saida). O valor constante lido antes de ser armazenado em porta é uma string (visto que estamos lidando com as palavras INPUT, OUTPUT, AND, OR, NOT, NOR, NAND, XOR, XNOR) que será substituído por um número de 1 a 7, caso seja uma porta lógica, ou ficará armazenado em um vetor de inteiros chamado incircuito (localizada na classe Circuito), se for uma entrada independente, ou em um vetor de inteiros chamado outcircuito (que está na classe Circuito), se for uma saída independente. Já a classe Circuito armazena os objetos Conexão lidos durante a execução do programa. Para isso, ela possui um vector <Conexao>, ou seja, um vetor de conexões, e verifica se as leituras estão sendo feitas com sucesso. Caso o armazenamento tenha sido feito de forma eficiente, é esta classe que chamará outras funções para manipularem esse vetor. Na função void resolver (), serão armazenados apenas os valores das saídas em uma fila chamada caixadesaidas. Posteriormente, a partir do vetor incircuito e da fila caixadesaidas, será construída uma matriz de 2 incircuito.size() linhas e (incircuito.size() + caixadesaidas.size()) colunas. Se, para fins de entendimento, chamo de n o número retornado por incircuito.size(), as n entradas independentes serão preenchidas na matriz desde n a n. Como a matriz começa na posição 0 e as entradas começam a partir do número 1, a matriz será preenchida sempre no valor da entrada menos 1. Desde que as entradas independentes sejam preenchidas de antemão na sua posição devida, o programa preenche a coluna da saída na posição (saída 1). O trecho do código abaixo é a função 16
17 que retorna a matriz aonde serão colocados os resultados: Figura 2.15: Outro trecho do código em c++ A matriz retornada será usada enquanto houver portas a serem resolvidas. Para resolver as portas, foi utilizada a teoria das filas (queue), onde o primeiro elemento da fila será pesquisado na matriz, a fim de vermos se a porta já foi ou não encontrada. Se já 17
18 tiver sido encontrada, o elemento da fila é excluído e o próximo será pesquisado. Se o elemento da fila não tiver sido encontrado e se as entradas pelas quais ele provém já estiverem completas, então esta porta será resolvida e colocada na matriz; se não, o elemento sai do início da fila e vai para o final. Dessa forma, é completada a matriz, ou seja, a tabela verdade do circuito. Melhorando a saída do programa para que fique com uma formatação igual a da saída da figura 13, o programa está pronto para ser usado. 18
19 Capítulo 3 Resultados 3.1- Teste e validação do projeto Na etapa de teste do programa, vários circuitos combinacionais podem ser fornecidos como entrada. Apenas devemos nos atentar para o fato de que o número que alguma porta deve ter tem que começar do valor 1 e seguir até quantas portas existirem, sem que haja pulos de números. As entradas independentes podem ser as primeiras portas a serem enumeradas, ou não. A validação do projeto consiste em comparar o resultado obtido nos testes com o resultado feito separadamente. Com isso, espera-se saber se o programa feito é eficiente quanto aos seus resultados. Observando o circuito abaixo (figura 3.1), cuja descrição está mostrada logo após (figura 3.2), o resultado gerado pelo programa está descrito na figura 3.3: Figura 3.1: Circuito 2 19
20 Figura 3.2: Especificação do circuito 2 20
21 Figura 3.3: Saída do programa para o circuito 2 O segundo circuito a ser avaliado está mostrado abaixo (figura 3.4), bem como sua especificação (figura 3.5). O resultado dado pelo programa está mostrado na figura 3.6: 21
22 Figura 3.4: Circuito 3 Figura 3.5: Especificação do circuito 3 22
23 Figura 3.6: Saída do programa para o circuito 3 23
24 Capítulo 4 Conclusões A utilização de programação orientada a objetos torna a idealização dos algoritmos muito mais prática, por permitir entender o código como uma abstração do mundo real, utilizando interação entre objetos. Ao que o trabalho propôs-se, os resultados obtidos através do programa foram corretos, e utilizar a programação orientada a objetos como o instrumento de efetivar essa atividade mostrou-se bastante eficiente. 24
25 Referências bibliográficas Manual de Referência do C++, disponível em acessado em 6 de novembro. The Eletronics Club Logic Gates, disponível em gates.htm, acessado em 26 de outubro. O que é a programação orientada a objetos, disponível em com/artigos/215.php, acessado em 13 de novembro. Programação Orientada a objetos, disponível em acessado em 19 de novembro de
Descrevendo Circuitos Lógicos (Continuação) CPCX UFMS Prof. Renato F. dos Santos
Descrevendo Circuitos Lógicos (Continuação) CPCX UFMS Prof. Renato F. dos Santos 3.6 Descrevendo circuitos lógicos algebricamente Qualquer circuito lógico pode ser descrito usando as três operações booleanas
Leia maisCIRCUITOS DIGITAIS COMBINACIONAIS (Unidade 3)
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SANTA CATARINA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: ELETRÔNICA
Leia maisAula 8 Portas Lógicas. Programação de Computadores
Aula 8 Portas Lógicas Programação de Computadores Introdução As portas lógicas são os componentes básicos da eletrônica digital. Elas são usadas para criar circuitos digitais e até mesmo circuitos integrados
Leia mais6. Análise Lógica Combinacional
Objetivos 6. Análise Lógica Combinacional Analisar circuitos lógicos combinacionais básicos, tais como AND-OR, AND-OR-inversor, EX-OR e EX- NOR Usar circuitos AND-OR e AND-OR-inversor para implementar
Leia maisInfra-Estrutura de Hardware
Infra-Estrutura de Hardware Lógica Booleana Universidade Federal Rural de Pernambuco Professor: Abner Corrêa Barros abnerbarros@gmail.com Introdução Um circuito digital é aquele em que estão presentes
Leia maisApostila de Eletrônica Digital ÍNDICE
Apostila de Eletrônica Digital ÍNDICE 1- Introdução Era Digital---------------------------------------------------------- PG 3 2- Números Binários --------------------------------------------------------------
Leia maisÁLGEBRA BOOLEANA E LÓGICA DIGITAL AULA 04 Arquitetura de Computadores Gil Eduardo de Andrade
ÁLGEBRA BOOLEANA E LÓGICA DIGITAL AULA 04 Arquitetura de Computadores Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro Princípios Básicos de Arquitetura e Organização de Computadores
Leia maisOrganização de computadores
Organização de computadores Aula 6 - Álgebra de Boole Professora Marcela Santos marcela@edu.estacio.br Tópicos Portas lógicas e álgebra de boole Álgebra de boole regras e propriedades Provas de algumas
Leia maisAULA 11 PROJETO E ANÁLISE DE ALGORITMOS. Conceitos básicos e representação de grafos Karina Valdivia Delgado
AULA 11 PROJETO E ANÁLISE DE ALGORITMOS Conceitos básicos e representação de grafos Karina Valdivia Delgado Roteiro Motivação Conceitos básicos Representação Motivação Um grafo é uma abstração que permite
Leia maisEletrônica Digital. Funções lógicas, álgebra de boole e circuitos lógicos combinacionais básicos. Professor: Francisco Ary
Eletrônica Digital Funções lógicas, álgebra de boole e circuitos lógicos combinacionais básicos Professor: Francisco Ary Introdução Vimos na aula anterior conversão de números binário fracionários em decimal;
Leia maisCircuitos Lógicos Combinacionais (parte 3) Sistemas de Informação CPCX UFMS Slides: Prof. Renato F. dos Santos Adaptação: Fernando Maia da Mota
Circuitos Lógicos Combinacionais (parte 3) Sistemas de Informação CPCX UFMS Slides: Prof. Renato F. dos Santos Adaptação: Fernando Maia da Mota 4.6 Circuitos Exclusive-OR e Exclusive-NOR Exclusive-OR (OU-EXCLUSIVO)
Leia maisIntrodução à Computação
Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Introdução à Computação EXERCÍCIOS
Leia mais------------------------------------------------------------------------------------------------------------------------------ Variáveis Lógicas Uma variável lógica é aquela que pode assumir apenas os
Leia maisINE5384 Estruturas de Dados. Sumário
UFSC-CTC-INE Curso de Ciência da Computação INE5384 Estruturas de Dados Turma 322B Prof. Ronaldo S. Mello 2002/2 Introdução Listas Sumário Árvores Métodos de Pesquisa de Dados Métodos de Ordenação de Dados
Leia maisAutomação Industrial Parte 8
Automação Industrial Parte 8 Prof. Ms. Getúlio Teruo Tateoki http://www.getulio.eng.br/meusalunos/autind.html -Vamos supor que seja necessário determinar a função lógica interna de um sistema desconhecido.
Leia maisUniversidade Federal de Santa Catarina Departamento de Engenharia Elétrica Laboratório de Materiais Elétricos LAMATE
Universidade Federal de Santa Catarina Departamento de Engenharia Elétrica Laboratório de Materiais Elétricos LAMATE Experiência 4 Circuitos Lógicos- Inversor, Portas Nand/And, Portas Nor/Or, Memória Estática
Leia maisORGANIZAÇÃO DE COMPUTADORES CONCEITOS DE LÓGICA DIGITAL
ORGANIZAÇÃO DE COMPUTADORES CONCEITOS DE LÓGICA DIGITAL Prof. Dr. Daniel Caetano 2014-1 Objetivos Compreender com o computador trabalha com os valores binários Compreender a lógica binária Aprender a construir
Leia maisUNIDADE 6. Responsável pelo conteúdo: Prof. tutor Viltemar Evangelista de Souza
Responsável pelo conteúdo: Prof. tutor Viltemar Evangelista de Souza Olá! Seja bem vindo! Estamos iniciando a unidade 6 do curso de Eletrônica Digital. Nesta unidade iremos aprender sobre as portas lógicas
Leia maisTrabalho Prático 2015 Simulador de Circuitos Opção 1 Versão /11/2013
Trabalho Prático 2015 Simulador de Circuitos Opção 1 Versão 1.0 12/11/2013 SSC0300 Linguagem de Programação e Aplicações Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz
Leia maisPORTAS E OPERAÇÕES LÓGICAS
1.Portas Lógicas 1.1 - PORTAS E OPERAÇÕES LÓGICAS Uma porta logica ( gate ) é um circuito eletrônico, portanto uma peça de hardware, que se constitui no elemento básico e mais elementar de um sistema de
Leia maisELETRÔNICA DIGITAL. Parte 5 Circuitos Combinacionais. Professor Dr. Michael Klug. 1 Prof. Michael
ELETRÔNICA DIGITAL Parte 5 Circuitos Combinacionais Professor Dr. Michael Klug 1 2 Qualquer circuito lógico, não importando a sua complexidade, pode ser descrito usando as três operações booleanas básicas
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar
- Aula 1 - O NÍVEL DA LÓGICA DIGITAL 1. INTRODUÇÃO Na parte inferior da hierarquia da figura abaixo encontramos o nível da lógica digital, o verdadeiro hardware do computador. Este nível situa-se na fronteira
Leia maisELT601 Eletrônica Digital II Graduação em Engenharia Eletrônica
Graduação em Engenharia Eletrônica Universidade Federal de Itajubá IESTI Verilog HDL Histórico e Descrição estrutural Prof. Rodrigo de Paula Rodrigues Verilog Histórico 1983... 1987 1988 1989... 1995...
Leia maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 4 Portas Lógicas Prof. Leonardo Augusto Casillo Analisando o circuito (1)... A Acesa Apagada S Apagada Acesa O emissor do transistor
Leia maisSSC Linguagem de Programação e Aplicações
SSC0300 - Linguagem de Programação e Aplicações Professor responsável: Fernando Santos Osório Semestre: 2013/2 Prof. Auxiliar: Artur Lovato Cunha Estagiário PAE: Rafael L. Klaser Horário: Sexta Manhã 10h10
Leia maisLÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz
LÓGICA DE PROGRAMAÇÃO (JAVA) Classes Uma classe é um tipo definido pelo usuário que contém o molde, a especificação para os objetos, algo mais ou menos como o tipo inteiro contém o molde para as variáveis
Leia mais4. Desenhe um digrama esquemático para cada uma das funções abaixo. a.
Eletrônica Digital Lista de Exercícios 1. Preencha a tabela abaixo para cada uma das funções indicadas. x 2 x 1 x 0 x 2 x 1 x 2 +x 1 x 2 x 1 x 2 x 1 + x 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1
Leia maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Circuitos Lógicos L Combinacionais
Leia maisDados Gerais. Conteúdo. Tipos de Dados. Profa. Renata de Matos Galante
Dados Gerais INF 01203 Estruturas de Dados Profa. Renata de Matos Galante Prédio: 72 (43.424) Sala: 221 Ramal: 3308 7746 Página: www.inf.ufrgs.br/~galante Email: galante@inf.ufrgs.br Conteúdo Tipos de
Leia maisExercícios: Vetores e Matrizes
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Vetores e Matrizes 1 Vetores 1. Faça um programa que possua um vetor
Leia maisLinguagem C: Introdução
Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais
Leia maisPORTAS NOR e NAND OR - AND - NOT. Considerando as entradas A e B, teremos na saída a complementação ou negação das mesmas.
PORTAS NOR e NAND As portas NOR e NAND são obtidas a partir da complementação das funções OR e AND. Podemos então dizer que o operador booleano lógico NOR é a negação do operador booleano OR enquanto que
Leia maisEXERCÍCIO DE SONDAGEM SEMESTRE DATAS: 21/06/2016 (TURMAS 01 E 02) Matrícula Nome Nota
Professor de INTRODUÇÃO À PROGRAMAÇÃO Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Sistemas e Computação Disciplina: Técnicas de Programação Prof.:
Leia maisExperimento 1 Objetivo: AND AND AND Material e Componentes Procedimento AND Nota: teste
UNIVERSIDADE FEDERAL DO PIAUÍ CCN / Departamento de Física Disciplina Eletrônica básica Técnicas digitais Prática 11 Experimento 1 Objetivo: Estabelecer a tabela verdade para o gate básico AND. Todo circuito
Leia maisUNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E DA TERRA BACHARELADO EM SISTEMAS DE INFORMAÇÃO
UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E DA TERRA BACHARELADO EM SISTEMAS DE INFORMAÇÃO Álgebra de Boole Disciplina: Lógica Professora Dr.ª: Donizete
Leia maisEletrônica Digital Lista de Exercícios
Eletrônica Digital Lista de Exercícios 1. Preencha a tabela abaixo para cada uma das funções indicadas. x 2 x 1 x 0 x 2 x 1 x 2 +x 1 x 2 x 1 x 2 x 1 + x 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1
Leia maisPCS LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA
ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO Departamento de Engenharia de Computação e Sistemas Digitais PCS - LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA EXERCÍCIO PROGRAMA
Leia maisPROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95
PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:
Leia maisConceitos básicos sobre computadores (continuação)
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores (continuação) Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário O que é um computador e
Leia maisCURSO DE ELETRÔNICA DIGITAL OS FLIP-FLOPS E FUNÇÕES LÓGICAS EM CIRCUITOS INTEGRADOS
LIÇÃO 7 OS FLIP-FLOPS E FUNÇÕES LÓGICAS EM CIRCUITOS INTEGRADOS Na lição anterior aprendemos como funcionam os principais tipos de flip-flops, verificando que, dependendo dos recursos que cada um possua,
Leia maisProtótipo de Editor Gráfico de Fluxogramas para Representação de Comandos da Linguagem Portugol
Protótipo de Editor Gráfico de Fluxogramas para Representação de Comandos da Linguagem Portugol Aluno Luís Carlos Seifert de Souza Orientador Wilson Pedro Carli Roteiro da Apresentação Introdução Motivação
Leia mais3. CAPÍTULO LÓGICAS DIGITAIS
3. CAPÍTULO LÓGICAS DIGITAIS 3.1. Introdução A Lógica é um conjunto de regras para raciocínio sobre um determinado assunto, ela é muito utilizada no ramo da Filosofia e da Matemática. 3.2. Portas lógicas
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisTransistor. Portas Lógicas (2) Base; Coletor; Emissor.
Nível da Lógica Digital Nível da Lógica Digital (Aula 6) Portas Lógicas e Lógica Digital Estudar vários aspectos da lógica digital Base de estudo para os níveis mais elevados da hierarquia das máquinas
Leia maisAula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR
Aula 7: Portas Lógicas: AND, OR, NOT, XOR, NAND e NOR Conforme discutido na última aula, cada operação lógica possui sua própria tabela verdade. A seguir será apresentado o conjunto básico de portas lógicas
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisExercícios: Arquivos
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Arquivos 1. Codifique, compile e execute um programa que: (a) crie/abra
Leia maisAula Teórica 14 Matrizes
Programação de Computadores I Universidade Federal de Ouro Preto Departamento de Ciência da Computação www.decom.ufop.br/gustavo Aula Teórica 14 Matrizes Material Didático Proposto 1 Agenda Introdução;
Leia maisAlgoritmos e Programação
Algoritmos e Programação Aula 9 Subalgoritmos, funções e passagem de parâmetros Profa. Marina Gomes marinagomes@unipampa.edu.br 22/06/2017 Engenharia de Computação - Unipampa 1 Modularização Facilita a
Leia maisLÓGICA DIGITAL - CONCEITOS. * Constantes. * Expressões: Aritméticas; Lógicas; Tabela Verdade; Relacionais; Booleanas. * Portas Lógicas.
* Tipos de Dados. * Constantes. * Expressões: Aritméticas; Lógicas; Tabela Verdade; Relacionais; Booleanas. * Portas Lógicas. 1 TIPOS DE DADOS Dados inteiros Representação das informações pertencentes
Leia maisSSC0112 Organização de Computadores Digitais I
SSC2 Organização de Computadores Digitais I 4ª Aula Revisão de Lógica Digital Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Aula ministrada por Prof. Paulo Sergio Lopes de Souza Revisão de Lógica Digital
Leia maisFunções e Portas Lógicas
Funções e Portas Lógicas 2. Funções Lógicas 2 2.1 Introdução 2 2.2 Funções Lógicas Básicas 3 2.2.1 Função Lógica NÃO (NOT) 3 2.2.2 Função Lógica E (AND) 3 2.2.3 Função Lógica OU (OR) 5 2.2.4 Função Lógica
Leia maisVictor Hugo Andrade Soares monitor João Vitor dos Santos Tristão Primeiro Trabalho Prático
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Algoritmos e Estruturas de Dados II docente Profa. Dra. Cristina Dutra de
Leia maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de
Leia maisSistemas Digitais Módulo 8 Introdução aos Circuitos Aritméticos
Universidade Federal de Uberlândia Faculdade de Computação Sistemas Digitais Módulo 8 Introdução aos Circuitos Aritméticos Graduação em Sistemas de Informação Disciplina: Sistemas Digitais Prof. Dr. Daniel
Leia maisHistórico. George Boole ( ) Claude Elwood Shannon ( )
Histórico Em meados do século XIX o matemático inglês George oole desenvolveu um sistema matemático de análise lógica Em meados do século XX, o americano Claude Elwood Shannon sugeriu que a Álgebra ooleana
Leia maisUFMG DCC Álgebra de Boole. Slides ligeiramente adaptados daqueles do professor Osvaldo Farhat de Carvalho, DCC, UFMG
UFMG DCC001 2013-1 1 Álgebra de Boole Slides ligeiramente adaptados daqueles do professor Osvaldo Farhat de Carvalho, DCC, UFMG UFMG DCC001 2013-1 2 Bits e informação Representamos números, caracteres,
Leia maisAula 1 Conceitos Básicos
Aula 1 Conceitos Básicos Elerson R. S. Santos elerson@dcc.ufmg.br Livro Projeto de Algoritmos Capítulo 1 @ DCC/UFMG O que é um algoritmo? O que é um programa? O que é um TAD? Algoritmos e Estrutura de
Leia maisSistemas Digitais Módulo 4 Álgebra Booleana e Circuitos Lógicos
Universidade Federal de Uberlândia Faculdade de Computação Sistemas Digitais Módulo 4 Álgebra Booleana e Circuitos Lógicos Graduação em Sistemas de Informação Prof. Dr. Daniel A. Furtado Conteúdo Introdução
Leia maisINF 1620 Estruturas de Dados Semestre Segundo Trabalho: Jogo de Caça-Palavras
INF 1620 Estruturas de Dados Semestre 08.2 Segundo Trabalho: Jogo de Caça-Palavras O jogo de caça-palavras é um passatempo que consiste em descobrir palavras escondidas entre um conjunto de letras espalhadas
Leia maisIntrodução à Computação
Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda
Leia mais3. Portas Lógicas. Objetivos. Objetivos. Introdução. Circuitos Digitais 31/08/2014
Objetivos 3. Portas Lógicas Descrever a operação do inversor, da porta AND e da porta OR Descrever a operação da porta NAND e da porta NOR Expressar a operação da função NOT e das portas AND, OR, NAND
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIA E TECNOLOGIA ENGENHARIA ELÉTRICA
UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIA E TECNOLOGIA ENGENHARIA ELÉTRICA RELATÓRIO CONTADOR DE 6 BITS PROGRAMÁVEL Trabalho apresentado à disciplina de Projeto de Circuitos Integrados Digitais,
Leia maisAbaixo descreveremos 6 portas lógicas: AND, OR, NOT, NAND, NOR e XOR.
9. Apêndice - Portas e Operações Lógicas Uma porta lógica é um circuito eletrônico (hardware) que se constitui no elemento básico de um sistema de computação. A CPU, as memórias, as interfaces de E/S são
Leia maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisSSC0180- ELETRÔNICA PARA COMPUTAÇÃO. Professor: Vanderlei Bonato EstagiárioPAE: Leandro S. Rosa
SSC0180- ELETRÔNICA PARA COMPUTAÇÃO Professor: Vanderlei Bonato EstagiárioPAE: Leandro S. Rosa 2 Sumário Nível lógico x nível de tensão Transistor NMOS Transistor PMOS Porta lógica CMOS Comportamento dos
Leia mais2ª. Competição Tecnológica (Outubro/2010)
2ª. Competição Tecnológica (Outubro/2010) DESCRIÇÃO A competição compreende duas fases e consiste na implementação de cinco aplicações, três na fase I e duas na fase II. Na fase I, os resultados obtidos
Leia maisArquitetura de Computadores. Tiago Alves de Oliveira
Arquitetura de Computadores Tiago Alves de Oliveira Revisão A B S 0 0 0 Porta Lógica XOR Tabela Verdade XOR 0 1 1 1 0 1 1 1 0 Somadores Os somadores são importantes em computadores e também em outros tipos
Leia maisÍndice. 1.2 Sistemas Numéricos em uma Base B Qualquer
Índice 1. SISTEMAS NUMÉRICOS 1.1 Caracterização dos Sistemas Numéricos 1.2 Sistemas Numéricos em uma Base B Qualquer 1.2.1 Sistema de Numeração Decimal 1.2.2. Sistema de Numeração Binário 1.2.3 Sistema
Leia maisNível da Lógica Digital (Aula 6) Portas Lógicas e Lógica Digital Nível da Lógica Digital Estudar vários aspectos da lógica digital Base de estudo para os níveis mais elevados da hierarquia das máquinas
Leia maisUNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Matrizes. Prof. Alex Camargo
UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO Matrizes Prof. Alex Camargo alexcamargoweb@gmail.com Definição Matriz é uma variável composta homogênea multidimensional. Conjunto de
Leia maisAnálise e Projeto de Circuitos Combinacionais e Sequenciais
Análise e Projeto de Circuitos Combinacionais e Sequenciais Referência bibliográfica: - Digital Design: Principles and Practices - Wakerly - Elementos de Eletrônica Digital Idoeta e Capuano - Introduction
Leia maisProgramação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO
Programação de Computadores I Dados, Operadores e Expressões PROFESSORA CINTIA CAETANO Dados em Algoritmos Quando escrevemos nossos programas, trabalhamos com: Dados que nós fornecemos ao programa Dados
Leia mais3 Processo de Teste. 3.1.Visão Geral do Processo
3 Processo de Teste Nesse capítulo será apresentado um processo de teste que foi desenvolvido para que diminua o retrabalho e o esforço gasto no processo de teste tradicional. Inicialmente é mostrada uma
Leia maisLatch SR (Set/Reset)
Memória Nível da Lógica Digital (Aula 8) Memória Nível Lógico A memória é usada para armazenar tanto instruções a serem executadas quanto os dados usados na execução de algumas dessas instruções Para se
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria
Leia maisOperações com vetores
Sistemas Digitais GRECO/25 Operações com vetores Possíveis formas de Operação binárias Oper. Oper. 2 Resultado Comentário Escalar Escalar Escalar Operação padrão Escalar vetor Escalar Não existe Vetor
Leia maisCURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MATRIZ CURRICULAR MATUTINO Fase N.
CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MATRIZ CURRICULAR MATUTINO Fase N. Ordem Código COMPONENTE CURRICULAR Créditos Horas Prérequisitos 01 Introdução à informática 04 60 02 Matemática instrumental
Leia maisCircuitos Lógicos Portas Lógicas
Circuitos Lógicos Portas Lógicas Prof.: Daniel D. Silveira 1 Álgebra de Boole George Boole desenvolveu um sistema de análise lógica por volta de 1850 Este sistema é conhecido atualmente como álgebra de
Leia maisCIRCUITOS DIGITAIS COMBINACIONAIS (Unidade 3)
MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SANTA CATARINA BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: ELETRÔNICA
Leia maisA modelagem é tida como a parte central de todas as atividades para a construção de um bom sistema, com ela podemos:
Módulo 6 Análise Orientada a Objeto É interessante observar como a análise orientada a objeto utiliza conceitos que aprendemos há muito tempo: objetos, atributos, classes, membros, todos e partes. Só não
Leia maisCIRCUITOS DE COINCIDÊNCIA (XNOR) OU EXCLUSIVO (XOR)
CIRCUITOS DE COINCIDÊNCIA (XNOR) OU EXCLUSIVO (XOR) CIRCUITOS DE COINCIDÊNCIA (XNOR) OU EXCLUSIVO (XOR) OBJETIVOS: a) analisar o comportamento de circuitos ou exclusivo e concidência ; b) analisar os circuitos
Leia maisEletrônica Digital Portas Lógicas
Eletrônica Digital Portas Lógicas ELETRÔNICA DIGITAL Portas Lógicas Expressões Booleanas Tabela Verdade Simbologia 3 Portas Lógicas As portas lógicas são componentes básicos da eletrônica digital usados
Leia maisApostila de Sistemas Digitais e Computadores MÓDULOS I & II: REVISÃO ÁLGEBRA DE BOOLE.
INSTITUTO SUPERIOR POLITÉCNICO METROPOLITANO DE ANGOLA DEPARTAMENTO DE CIÊNCIAS TECNOLÓGICAS E ENGENHARIAS Apostila de Sistemas Digitais e Computadores MÓDULOS I & II: REVISÃO ÁLGEBRA DE BOOLE. SDC LCC1N
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
LEI Nº.9, DE 9//00, PUBLICADA NO DOU DE 0//00, SEÇÃO I, PAGS. I - Rua São Luiz Gonzaga, s/n - São Luiz - Formiga - MG - CEP: 70-000 Tel: (7)-09 - Site: www.formiga.ifmg.edu.br Matriz Curricular FGGCOMP
Leia maisATUALIZAÇÃO DE MATRIZES CURRICULARES CURSO DE ENGENHARIA DE COMPUTAÇÃO
ATUALIZAÇÃO DE MATRIZES CURRICULARES CURSO DE ENGENHARIA DE COMPUTAÇÃO Prezado estudante, Em 2018.1, os cursos da UNIFACS passaram por uma atualização de matrizes curriculares. As informações sobre os
Leia maisArquitetura de Computadores Aula 9 Portas Lógicas
Arquitetura de Computadores Aula 9 Portas Lógicas Prof. Fred Sauer http://www.fredsauer.com.br fsauer@gmail.com 1/18 * Definição * Tipos de portas lógicas (operadores) * Aplicações - porta de transferência
Leia maisCódigos, Portas Lógicas e Comportamento Elétrico
Códigos, Portas Lógicas e Comportamento Elétrico Prof. Ohara Kerusauskas Rayel Disciplina de Eletrônica Digital - ET75C Curitiba, PR 26 de março de 2015 1 / 32 Códigos Código: Números, letras ou palavras
Leia maisAlgoritmos e Lógica de Programação 80 horas // 4 h/semana. Para começar... Strings. Para começar... Strings. Exemplo...
Algoritmos e Lógica de Programação 80 horas // 4 h/semana Strings ou cadeias de Caracteres Aula 14 Prof. Piva Para começar... Strings são cadeias de caracteres que armazenam dados textuais e, portanto,
Leia mais1. Faça um programa que leia uma string digitada pelo usuário e salve em um arquivo em branco.
Segunda lista de exercícios v100 Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz Bonetti SSC0300 Linguagem de Programação e Aplicações 1 Faça um programa que leia uma string
Leia maisCompressão de Textos. Introdução. Introdução. Introdução. O volume de informação textual disponível on-line é imenso:
Compressão de Textos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM O volume
Leia maisTrabalho GA - Editor de Cenário Isométrico
Objetivo A tarefa consiste em criar um editor gráfico de cenários para jogos 2D com visão isométrica. O editor deve permitir que o usuário possa criar, abrir e editar mapas (tilemaps) com tileset de visão
Leia maisATUALIZAÇÃO DE MATRIZES CURRICULARES CURSO DE ENGENHARIA DE COMPUTAÇÃO
ATUALIZAÇÃO DE MATRIZES CURRICULARES CURSO DE ENGENHARIA DE COMPUTAÇÃO Prezado estudante, Em 2018.1, os cursos da UNIFACS passaram por uma atualização de matrizes curriculares. As informações sobre os
Leia maisARQUITETURA DE COMPUTADORES
ARQUITETURA DE COMPUTADORES Arquitetura de Von Newmann Prof Daves Martins Msc Computação de Alto Desempenho Email: daves.martins@ifsudestemg.edu.br Vídeos Vídeo aula RNP http://edad.rnp.br/rioflashclient.php?xmlfile=/ufjf/licenciatura_com
Leia maisUniversidade Federal do Rio de Janeiro COPPE. Trabalho de Processamento de Imagens Reconhecimento de Símbolos de Componentes Eletrônicos
Universidade Federal do Rio de Janeiro COPPE Trabalho de Processamento de Imagens Reconhecimento de Símbolos de Componentes Eletrônicos Nome: Fernanda Duarte Vilela Reis de Oliveira Professores: Antonio
Leia maisSERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG
LEI Nº.9, DE 9//00, PUBLICADA NO DOU DE 0//00, SEÇÃO I, PAGS. I - Rua São Luiz Gonzaga, s/n - São Luiz - Formiga - MG - CEP: 0-000 Tel: ()-09 - Site: www.formiga.ifmg.edu.br Matriz Curricular FGGCOMP -
Leia maisSuponha um conjunto habitacional, com várias famílias... imagina se todas elas morassem em uma única casa?
Funções Suponha um conjunto habitacional, com várias famílias...... imagina se todas elas morassem em uma única casa? Funções Programação de Computadores 1 de 28 Funções Na Programação, funções são conjuntos
Leia mais3. Computadores Industriais
UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS CCT DEPARTAMENTO DE ENG. DE PRODUÇÃO E SISTEMAS - DEPS INFORMÁTICA INDUSTRIAL IFD 3. Computadores Industriais Igor Kondrasovas
Leia mais