Instituto Politécnico Curso: Tec. Redes de Computadores Disciplina: Organização de Computadores Prof.: Fábio Lucena Veloso Curso: Tec. Análise de Sistemas Disciplina: Organização de Computadores Prof.: Roberto Barros Profs. Fábio Lucena Veloso e Roberto Barros 1 Conceituação: Processamento de dados: Um computador é uma máquina (conjunto de partes eletrônicas e eletro-mecânicas) capaz de sistematicamente coletar, manipular e fornecer resultados da manipulação de informações para um ou mais objetivos. Por ser uma máquina composta de vários circuitos e componentes eletrônicos, também é chamada de equipamento de processamento eletrônico de dados. Processamento de dados consiste, então, em uma série de atividades ordenadamente realizadas, com o objetivo de produzir um arranjo determinado de informações a partir de outras obtidas em inicialmente. Ou seja, o objetivo do processamento será transformar dados em informações. Computador = sistema de computação sistema ou equipamento eletrônico de processamento de dados conjuntos de componentes eletrônicos e eletro-mecânicos. Capaz de: coletar, armazenar, processar, recuperar e apresentar dados. A manipulação das informações coletadas no início da atividade chama-se processamento; As informações iniciais são usualmente denominadas dados. O termo dado e informação podem ser tratados como sinônimos ou como termos distintos; Dado pode ser definido como a matéria prima originalmente obtida de uma ou mais fontes (etapa de coleta) e informação, como o resultado do processamento, isto é, o dado processado ou acabado. Nossa figura abaixo mostra o esquema básico de um processamento de dados (manual ou automático), que resulta em um produto acabado: a informação. Informação subentende dados organizados (segundo uma orientação específica) para o atendimento ou emprego de uma pessoa ou grupo que os recebe. Como o conhecimento e a tomada de decisão são importantes em várias áreas e em diferentes níveis hierárquicos de uma organização, a informação para uma determinada pessoa ou grupo pode ser considerada como um dado para outra. Dado e informação são conceitos relativos, dependem do contexto. O que é informação para um pode ser um simples dado para outro ou o mesmo em outro momento. DADO PROCESSAMENTO INFORMAÇÃO Principais operações no processamento de dados: Cálculos; Pesquisa ou busca (search); Exemplo: verificar se um nome consta da lista de aprovados no vestibular. Ordenação (sort); Exemplo: colocar uma lista de nomes em ordem alfabética. Seleção (selection); Exemplo: selecionar os alunos que ficaram em prova final. Classificação (classification); Exemplo: percorrer uma lista de alunos e gerar outras duas classificando cada um como aprovado ou reprovado. Profs. Fábio Lucena Veloso e Roberto Barros 2 Sistemas. O processamento eletrônico de dados, devido à sua própria natureza (conjunto de componentes separados que se integram segundo procedimentos e regras previamente estabelecidos), vem se desenvolvendo de acordo com conceitos de outra ciência; Teoria de sistemas. Um sistema pode ser definido de diferentes maneiras. Porém, a mais apropriada para nós é: “Conjunto de partes coordenadas que concorrem para a realização de um determinado objetivo”. Atualmente, o enfoque sistêmico se faz presente em várias áreas do desenvolvimento comercial, científico, industrial e social. Sistemas de processamento de dados são aqueles responsáveis pela coleta, armazenamento, processamento e recuperação em equipamentos de processamento eletrônico, dos dados necessários ao funcionamento de um outro sistema maior; o sistema de informações. O sistema de informações de uma empresa pode ser conceituado como o conjunto de métodos, processos e equipamentos necessários para se obter, processar e utilizar informações dentro da empresa. Desta forma, ele compreende não só o sistema de processamento de dados, como também todos os procedimentos manuais necessários a prover informações para um determinado nível de decisão de uma organização. Em qualquer organização, os sistemas de informações se desenvolvem segundo duas dimensões: “os componentes da organização”, isto é, seus diversos setores funcionais, e o “nível de decisão”, o qual obedece a uma hierarquia clássica. Nível operacional (de execução corriqueira e imediata, de competência dos menores escalões); Nível gerencial (de nível intermediário de competência da gerência setorial); Alto nível da organização (de nível estratégico, de competência da diretoria). O tipo de decisão tomada em cada nível requer um diferente grau de agregação da informação e, em conseqüência, diferentes tipos de relatórios e/ou apresentação e o uso da informação. Dentro deste enfoque, um sistema de processamento de dados compreende duas partes: “o sistema de computação” (o computador e os programas básicos) e os “sistemas de aplicação”. O primeiro, normalmente é fornecido completo pelo fabricante do equipamento, e o último, desenvolvido pelo usuário ou por terceiros, especificamente dedicado à aplicação de interesse do usuário. Sistema de computação: Qualquer processamento de dados requer a execução de uma série de etapas que podem ser realizadas de forma manual ou automática por um computador. Tais etapas elaboradas e executadas passo a passo constituem o que chamamos de “programa”. Cada um dos passos mencionados é uma instrução diferente, ou ordem de comando, dada ao hardware, objetivando a realização de uma determinada ação. Um programa é um conjunto de instruções. A figura abaixo demonstra um esquema de execução manual de um programa observando-se algumas etapas: ENTRADA PROCESSAMENTO SAÍDA Profs. Fábio Lucena Veloso e Roberto Barros 3 Ex. um programa para somar 100 números e imprimir o resultado Entrada – digitação do programa e dos dados Processamento – cálculos e testes Saída – impressão dos resultados As etapas de um algoritmo são as instruções que deveram ser executadas por uma máquina (quando falamos de computadores); o conjunto de instruções constitui o que chamamos de programa. Um programa de computador é a formalização de um algoritmo em linguagem inteligível pelo computador. Assim como o operador deve ter entendimento dos passos do programa, um computador precisa entender cada instrução, de modo a executar corretamente a operação a que se pretende. O operador entende (português) sua linguagem e comunicação com outras pessoas, já os computadores possuem linguagem própria (binário). Todo dado coletado pelos computadores, as instruções por ele executadas, bem como os resultados de um processamento são sempre constituídos de conjuntos ordenados de 0 e 1. No entanto, essa linguagem, chamada linguagem de máquina, é para nós e seres humanos tediosa e difícil, por essa razão foram desenvolvidas outras linguagens, mais próximas do nosso entendimento, genericamente chamadas de linguagens de programação. Atualmente, existem dezenas dessas linguagens. Cada uma dessas linguagens possuiu regras próprias e rígidas de sintaxe. O programador escreve o programa através da descrição instrução por instrução em uma dessas linguagens. Tal programa, no entanto, não pode ser diretamente executado pela máquina, visto que as linguagens de programação são apenas um modo do operador se comunicar com o computador. A máquina somente entende e executa instruções referentes ao seu conjunto de instruções (linguagem de máquina). Para se executar um programa escrito em uma dessas linguagens necessitamos de programas especiais que façam a conversão da linguagem utilizada para a linguagem de máquina. Esses programas são chamados de compiladores. O conjunto formado pelos circuitos eletrônicos e partes eletro-mecânicas de um computador é conhecido como Hardware, é a parte física, visível do computador. Software são programas, de qualquer tipo e em qualquer linguagem que são introduzidos na máquina para fazê-la trabalhar. É a parte lógica do computador. Profs. Fábio Lucena Veloso e Roberto Barros 4 Sistemas de Numeração: Introdução: Os sistemas numéricos foram criados pelos homens para representar a quantidade relacionada às suas observações. Tais sistemas foram desenvolvidos por meio de símbolos, caracteres e do estabelecimento de regras para a sua representação gráfica. O número de caracteres que define um sistema é chamado de base ou raiz do sistema. A correta notação, para representarmos a base que identifica um símbolo qualquer, fazse colocando-a como subscrito à direita do caractere menos significativo do valor que está sendo identificado, como por exemplo: 1610 que representa o algarismo dezesseis na base 10. Os sistemas abordados serão: Decimal Binário Octal Hexadecimal Sistema de base 10 Sistema de base 2 Sistema de base 8 Sistema de base 16 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9); (0, 1); (0, 1, 2, 3, 4, 5, 6, 7) e (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F) Observe que as seis primeiras letras maiúsculas do alfabeto representam os caracteres, equivalentes aos decimais 10, 11, 12, 13, 14 e 15, do sistema de base 16. O Sistema Binário de Numeração: O sistema binário de numeração é um sistema no qual existem apenas dois algarismos: - o algarismo 0 (zero), - o algarismo 1 (um). Para representarmos a quantidade zero, utilizamos o algarismo (0) e para representarmos a quantidade um utilizamos o algarismo (1). Para representarmos a quantidade dois, por exemplo, utilizamos o algarismo um seguido do algarismo (0). O algarismo (1) significará que temos um grupo de dois elementos e o (0) um grupo de nenhuma unidade, representando assim o número dois. Decimal Binário 0 0 1 1 2 10 3 11 4 100 5 101 . . . . . . Profs. Fábio Lucena Veloso e Roberto Barros 5 Conversão do Sistema Binário para o sistema Decimal Tomemos o número decimal 594. Este número significa: 5 x 100 + 9 x 10 + 4 x 1 = 594 5 x 100 = 5 x 10 2 (centena) 9 x 10 = 9 x 101 (dezena) 0 4 x 1 = 4 x 10 (unidade) Nota-se que o algarismo menos significativo (o algarismo 4) multiplica a unidade (1 ou 100 ), o segundo algarismo (nove) multiplica a dezena ( 10 ou 101 ) e o mais significativo (cinco) multiplica a centena (100 ou 102). A soma desses resultados irá representar o número. A base deste sistema é o número 10 (dez). A base do sistema binário é o número 2 (dois). Utilizando um número binário qualquer, o número 101 que equivale ao número 5 no sistema decimal e aplicando o conceito básico de formação de um número, obtêm-se a mesma equivalência, convertendo-se o número para o sistema decimal: 1 22 0 21 1 20 1 x 22 + 0 x 21 + 1 x 20 = 1 x 4 + 0 + 1 = 510 0 número 101 na base 2 é igual ao número 5 na base 10. Para melhor representação, é colocado como índice do número a base do sistema em que estamos trabalhando, ou seja: 1410 significará o número quatorze na base dez. (sistema decimal) 1102 significará o número seis na base dois. (sistema binário) Exemplos: Converta o número 011102 em decimal. É importante ressaltar que o zero à esquerda de um número é um algarismo não significativo. Logo 011102 = 11102 1 23 1 22 1 21 0 20 1 x 2 3 + 1 x 2 2 + 1 x 2 1 + 0 x 2 0 = 1410 logo: 11102 = 1410 Converta o número 10102 para o sistema decimal. 1 23 0 22 1 21 0 20 1 x2 3 + 0x2 2 + 1x2 1 + 0x2 0 = 10 10 logo: 10102 = 1010 Profs. Fábio Lucena Veloso e Roberto Barros 6 Converta o número 11001100012 para o sistema decimal. 1 29 1 28 0 27 0 26 1 25 1 24 0 23 0 22 0 21 0 20 1 x 29 + 1 x 28 + 0 x 27 + 0 x 26 + 1 x 25 + 1 x 24 + 0 x 23 + 0 x 22 + 0 x 21 + 0 x 20 = 1 x 512 + 1 x 256 + 1 x 32 + 1 x 16 + 1 x 1 = 81710 logo: 11001100012 = 81710 Conversão do Sistema Decimal para o sistema Binário É evidente a necessidade da conversão do sistema binário para o decimal, pois se tivermos um número grande no sistema binário, onde fica difícil perceber a quantidade que ele representa. Transformando esse número em decimal, o problema desaparece. Tomemos um número decimal qualquer, como por exemplo, o número 47. Dividindo o número por 2, temos: 47 ∟2 1 23 ∟2 1 11 ∟2 1 5 ∟2 1 2 ∟2 0 1 último quociente = algarismo mais significativo O último quociente será o algarismo mais significativo e ficará colocado à esquerda. Os outros algarismos seguem-se na ordem até o 1° resto. Teremos então: 1 0 1 1 1 1 último quociente 5° resto 4° resto 3° resto 2° resto 1° resto Então, temos: 1011112 = 4710 Tomemos outro número decimal qualquer, como por exemplo, o número 400. Temos: 400 ∟2 0 200 ∟2 0 100 ∟2 0 50 ∟2 0 25 ∟2 1 12 ∟2 0 6 ∟2 0 3 ∟2 1 1 Assim podemos escrever: 1100100002 = 40010 algarismo mais significativo Profs. Fábio Lucena Veloso e Roberto Barros 7 Tomemos outro número decimal qualquer, como por exemplo, o número 552. Temos: 552 ∟2 0 276 ∟2 0 138 ∟2 0 69 ∟2 1 34 ∟2 0 17 ∟2 1 8 ∟2 0 4 ∟2 0 2 ∟2 0 1 algarismo mais significativo Assim podemos escrever: 10001010002 = 55210 Números Binários, Decimais Fracionários e suas Conversões. Tormemos o número 12,510 1 101 2 100 5 10-1 Da tabela, temos: 1 x 101 + 2 x 100 + 5 x 10-1 = 12,510 Para um número binário, agimos da mesma forma. Conversão de um número binário fracionário para o decimal Tomemos o número 101,1012 1 22 0 21 1 20 1 2-1 0 2-2 1 2-3 Podemos escrever: 1x22 + 0x21 + 1x20 + 1x-1 + 0x-2 + 1x2-3 = 1x4 + 0x2 + 1x1 + 1x0,5 + 0x0,25 + 1x0,125 = 4 + 1 + 0,5 + 0 + 0,125 = 5,65210 logo: 101,1012 = 5,62510 Profs. Fábio Lucena Veloso e Roberto Barros 8 Tomemos o número 1010,11012 1 23 0 22 1 21 0 20 1 2-1 1 2-2 0 2-3 1 2-4 Podemos escrever. 1x23 + 0x22 + 1x21+ 0x20 + 1x2-1 + 1x2-2 + 0x2-3 + 1x2-4 = 1 x 8 + 1 x 2 + 1 x 0,5 + 1 x 0,25 + 1 x 0,0625 = 8 + 2 + 0,5 + 0,25 + 0,0625 = 10,812510 logo: 1010,11012 = 10,812510 Converta o número binário 111, 0012 em decimal. 1 22 1 21 1 20 0 2-1 0 2-2 1 2-3 1 x22 + 1x21 + 1 x20 + 0x2-1 + 0x2-2 + 1 x2-3 4 + 2 + 1 + 0,125 = 7,12510 logo: 111,0012 = 7,12510 Conversão de um número Decimal fracionário em Binário Como exemplo, vamos transformar o número 8,275 em binário. 8,375 = 8 + 0,375 Transforma-se primeiramente a parte inteira do número, no caso, o número 8. 8 ∟2 0 4 ∟2 0 2 ∟2 0 1 algarismo mais significativo Então, temos: 810 = 10002 Logo a seguir, transforma-se a parte fracionária. Para tal, utilizamos a seqüência: 0,375 x 2 Primeiro algarismo após a vírgula 0,750 x 2 Segundo algarismo após a vírgula 1,500 Parte fracionária não inteira Base do sistema Profs. Fábio Lucena Veloso e Roberto Barros 9 Quando atingimos o número 1, e a parte do número após a vírgula não for nula, separamos está última e reiniciamos o processo: 0,500 x 2 Terceiro algarismo após a virgula 1,000 Encerramos o processo por aqui pois neste caso, a parte do número depois da vírgula é nula Obs. Se efetua a leitura dos algarismos após a virgula de cima para baixo. Teremos, então: 0,0112 = 0,37510 Para a conversão tornar-se completa, efetuamos a composição da parte inteira com a fracionária. Logo o número fica: 8,37510 = 1000,0112 Exemplo: Transformar o número 4,810 em binário: 4,8 = 4 + 0,8 4 ∟2 0 2 ∟2 0 1 algarismo mais significativo Logo: 410 = 1002 0,8 x2 1.6 0,6 x2 1.2 0,2 x2 0.4 0.4 x2 0,8 Observa-se que o número 0,8 tornou a aparecer, logo se continuarmos o processo teremos a mesma seqüência já vista até aqui. Este é o caso equivalente a uma dízima. logo: 0,810 = 0,1100 1100 1100 ... 2 Seqüência vista acima Repetição da seqüência Então o número 4,810 = 100,1100110011001100 ... 2 Converta o número 3,38010 em binário 3,380 = 3 + 0,380 310 = 112 conversão de um número inteiro 0,38 parte fracionária Profs. Fábio Lucena Veloso e Roberto Barros 10 0,38 x2 0,76 x2 0,52 x2 0,04 x2 0,08 x2 0,16 x2 0,32 x2 0,64 x2 0,28 x2 0,76 1,52 1,04 0,08 0,16 0,32 0,64 1,28 0,56 Neste caso temos: 0,3810 = 0,0110000102 Quanto mais casas considerarmos após a vírgula, teremos uma maior precisão, ou seja, aplicamos o método até atingirmos a precisão desejada. Então: 3,3810 = 11,011000012 O Sistema Octal de numeração O sistema Octal de numeração é um sistema no qual existe oito algarismos: 0,1,2,3,4,5,6 e 7. Para representarmos a quantidade oito, agimos do mesmo modo, visto para números binários e decimais. Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Octal 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21 . . . . . . Profs. Fábio Lucena Veloso e Roberto Barros Conversão do Sistema Octal para o Sistema Decimal Para convertermos um número Octal em decimal, utilizamos os conceitos básicos de formação de um número. Converter, por exemplo, o número 1448 para o decimal: 1 82 4 81 4 80 1 x 82 + 4 x 81 + 4 x 80 = 1 x 64 + 4 x 8 + 4 x 1 = 64 + 32 + 4 = 10010 logo: 1448 = 10010 Converter, por exemplo, o número 778 para o decimal: 7 81 7 80 7 x 81 + 7 x 80 = 7x8+7x1= 56 + 7 = 6310 logo: 778 = 6310 Conversão do Sistema Octal para o Sistema Binário Tomemos um número octal qualquer, por exemplo, o número 278. A regra consiste em transformar cada algarismo, no correspondente binário: 28 = 0102 78 = 1112 Logo: 278 = 101112 Obs.: Zero à esquerda é algarismo não significativo. Exemplos: Converter os seguintes números para binário a) 348 3 4 (8) 011 100 (2) Logo: 348 = 111002 b) 5368 5 3 6 (8) 101 011 110 (2) Logo: 5368 = 1010111102 11 Profs. Fábio Lucena Veloso e Roberto Barros 12 Conversão do Sistema Binário para o Sistema Octal Tomemos um número binário qualquer, por exemplo, o número 1100102. Para transformarmos esse número em octal, separamos o número binário em grupos de três algarismos a partir da direita: Converter, por exemplo, o número 1100102 para o octal 110 010 (2) 6 2 (8) obs.: Sempre da direita para a esquerda Fazemos agora, a conversão de cada grupo de algarismos para sistema decimal. Podemos observar que o maior número que se pode formar com três algarismos binários é o 7. Esta conversão irá resultar diretamente o número no sistema octal: Logo: 1100102 = 628 Obs.: Caso o último grupo se forme incompleto, adicionamos zeros à esquerda, até completarmos com os três algarismos. Exemplo: Converter o número 10102 em octal 00 1 010 (2) 1 2 (8) Logo: 10102 = 128 Conversão do Sistema Decimal para o Sistema Octal Existem dois métodos para efetuarmos essa conversão. O 1° é análogo à conversão do decimal para o binário, somente que neste caso, usamos como divisor, o número 8 (pois a base agora é 8). Exemplo: Converter o número 9210 para octal: 92 ∟8 4 11 ∟8 3 1 último quociente = algarismo mais significativo 1 3 4 último quociente 2° resto 1° resto Logo: 9210 =1348 O 2° método, consiste na conversão do número decimal em binário e logo após, sua conversão do sistema binário em octal. (Aparentemente desta forma é mais trabalhoso, porém este método é de grande praticidade por trabalhar com a base 2) DECIMAL BINÁRIO OCTAL Profs. Fábio Lucena Veloso e Roberto Barros 13 Exemplo do 2° método: Converter o número 9210 em octal 92 ∟2 0 46 ∟2 0 23 ∟2 1 11 ∟2 1 5 ∟2 1 2 ∟2 0 1 algarismo mais significativo 9210 = 10111002 001 011 100 (2) 1 3 4 (8) Logo: 9210 = 1348 Exemplos: Converter o número 7410 para octal utilizando os dois métodos 1° método: 74 ∟8 2 9 ∟8 algarismo mais significativo 1 1 Logo: 7410 = 1128 2° método: 74 ∟2 0 37 ∟2 1 18 ∟2 0 9 ∟2 1 4 ∟2 0 2 ∟2 0 1 algarismo mais significativo 7410 = 10010102 001 001 010 (2) 1 1 2 (8) Logo: 7410 = 1128 O Sistema Hexadecimal de Numeração O sistema hexadecimal possui dezesseis algarismos, assim enumerados: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. A letra A representa o algarismo dez. A letra B representa o algarismo onze, e assim sucessivamente até a letra F que representa a quantidade quinze. Para representarmos a quantidade dezesseis, utiliza-se o conceito da formação de um número, ou seja, coloca-se o algarismo 1 (um) seguido do algarismo 0 (zero). Isso representará um grupo de dezesseis, adicionado a nenhuma unidade. Profs. Fábio Lucena Veloso e Roberto Barros 14 Podemos escrever a seqüência de numeração hexadecimal: Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 Decimal 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Hexadecimal 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 . . . . . . Conversão do Sistema Hexadecimal para o Sistema Decimal Método análogo aos anteriores, tomemos por exemplo, o número hexadecimal 3F16 3 161 F 160 3 x 161 + F x 160 = 1 0 3 x 16 + 15 x 16 = 3 x 16 + 15 x 1 = 6310 Como no sistema hexadecimal F16 = 1510 (substituo o F pelo 15) logo: 3F16 = 6310 Exemplo: Converter os seguintes números para o decimal: a) 1C316 1 162 C 161 3 160 Profs. Fábio Lucena Veloso e Roberto Barros 1 x 162 + C x 161 + 3 x 160 = 1 x 256 + 12 x 16 + 3 x 1 = 256 + 192 + 3 = 45110 logo: 1C316 = 45110 b) 23816 2 162 3 161 8 160 2 x 162 + 3 x 161 + 8 x 160 = 2 x 256 + 3 x 16 + 8 x 1 = 512 + 48 + 8 = 56810 logo: 23816 = 56810 c) 1FC916 1 163 F 162 C 161 9 160 1 x 163 + F x 162 + C x 161 + 9 x 160 = 1 x 163 + 15 x 162 + 12 x 161 + 9 x 160 = 1 x 4096 + 15 x 256 + 12 x 16 + 9 x 1 = 4096 + 3840 + 192 + 9 = 813710 logo: 1FC916 = 813710 Conversão do Sistema Hexadecimal para o Sistema Binário Análogo à conversão do sistema octal para o sistema binário. Neste caso, necessitamos de quatro algarismos binários para representar um algarismo hexadecimal. Exemplo, o número hexadecimal C1316 C16 = 11002 116 = 00012 316 = 00112 Logo: C1316 = 1100000100112 Obs.: Se houver zero à esquerda é um algarismo não significativo. Exemplo: Converter os seguintes números para binário: a) 1ED16 1 E D (16) 0001 1110 1101 (2) Logo: 1ED16 = 1111011012 b) ABF16 A B F (16) 1010 1011 1111 (2) Logo: ABF16 = 1010101111112 15 Profs. Fábio Lucena Veloso e Roberto Barros 16 Conversão do Sistema Binário para o Sistema Hexadecimal Análogo à conversão do sistema binário para o octal, somente que neste caso, agrupamos de quatro em quatro algarismos da direita para a esquerda. Exemplo, o número binário 100110002 1001 1000 (2) 9 8 (16) obs.: Sempre da direita para a esquerda Logo: 100110002 = 9816 Obs.: Caso o último grupo se forme incompleto, adicionamos zeros à esquerda, até completarmos com os quatro algarismos. Exemplo: Converter os seguintes números para hexadecimal: a) 11000112 0110 0011 (2) 6 3 (16) Logo: 11000112 = 6316 b) 110001111000111002 0001 1000 1111 0001 1100 (2) 1 8 F 1 C (16) logo: 110001111000111002 = 18F1C16 Conversão do Sistema Decimal para o Sistema Hexadecimal Existem dois métodos para efetuarmos essa conversão. O 1° é análogo à conversão do decimal ou octal para o binário, somente que neste caso, usamos como divisor, o número 16 (pois a base agora é 16). Exemplo: Converter o número 100010 para hexadecimal 1000 ∟16 8 62 ∟16 14 3 último quociente = algarismo mais significativo Como no sistema hexadecimal 1410 = E16 (substituo o 14 pelo E) 3 14 8 último quociente 2° resto 1° resto Logo: 100010 = 3E816 Profs. Fábio Lucena Veloso e Roberto Barros 17 O 2° método, consiste na conversão do número decimal em binário e logo após sua conversão do sistema binário para hexadecimal. (Aparentemente desta forma é mais trabalhoso, porém este método é de grande praticidade por trabalhar com a base 2) DECIMAL BINÁRIO HEXADECIMAL Exemplo do 2° método: Converter o número 100010 em hexadecimal 1000 ∟2 0 500 ∟2 0 250 ∟2 0 125 ∟2 1 62 ∟2 0 31 ∟2 1 15 ∟2 1 7 ∟2 1 3 ∟2 1 1 algarismo mais significativo 100010 = 11111010002 0011 1110 1000 (2) 3 E 8 (8) Logo: 100010 = 3E816 Exemplo: Converter o número 38410 para octal utilizando os dois métodos 1° método: 384 ∟16 0 24 ∟16 8 1 algarismo mais significativo Logo: 38410 = 18016 2° método: 38410 = 1100000002 0001 1000 0000 (2) 1 8 0 (8) Logo: 7410 = 1128 384 ∟2 0 192 ∟2 0 96 ∟2 0 48 ∟2 0 24 ∟2 0 12 ∟2 0 6 ∟2 0 3 ∟2 1 1 algarismo mais significativo Profs. Fábio Lucena Veloso e Roberto Barros 18 Exercícios: 1) Converta os seguintes números binários em decimais: a) 10011002 b) 11112 c) 100002 f) 10101102 g) 001110012 h) 111100012 l) 1111,1112 m) 1000,00012 n) 11,112 q) 100,110012 r) 1010,10102 d) 111112 i) 011000112 o) 1011,112 e) 100012 j) 000000012 p) 100,0011012 2) Converta os seguintes números decimais em binários: a) 7810 b) 10210 c) 21510 d) 80810 h) 15,12510 i) 0,062510 j) 0,710 l) 0,9210 e) 54210 m) 7,910 f) 63010 n) 47,4710 g) 3310 3) Converta os seguintes números octais para decimais: a) 148 b) 678 c) 1538 d) 15448 e) 1008 f) 4768 g) 11008 4) Converta os seguintes números octais em binários: a) 4778 b) 15238 c) 47648 d)100008 e) 43218 5) Converta os seguintes números decimais em octais: a) 10710 b) 18510 c) 204810 d) 409710 e) 71910 6) Converta os seguintes números binários em octais: a)101112 b)110101012 c)10001100112 d)10112 e)100111002 f) 1101011102 7) Converta os seguintes números hexadecimais em decimais: a) 47916 b) 4AB16 c) BED16 d) FOCA16 e) 2D3F16 8) Converta os seguintes números hexadecimais em binários: a) 8416 b) 7F16 3) 3B8C16 c) 47FD16 d) F1CD16 e) 6CF916 9) Converta os seguintes números binários em hexadecimais: a) 10112 b) 11100111002 c) 1001100100112 d) 11111011112 10) Converta os seguintes números decimais em hexadecimais: a) 48610 b) 200010 c) 409610 d) 555510 e) 3547910 e)10110111101012 f) 38410 g) 252010 Profs. Fábio Lucena Veloso e Roberto Barros 19 Operações aritméticas no Sistema Binário Adição no Sistema Binário Para efetuarmos a adição no sistema binário, devemos proceder como numa adição convencional no sistema decimal, sendo que no sistema binário temos somente dois algarismos, zeros e uns 0+0=0 0+1=1 1+0=1 1 + 1 = 10 (0 “e vai 1”) Aqui cabe observar que no sistema decimal 1 + 1 = 2, no sistema binário representamos o número 210 por 102, vem daí: 1 + 1 = 10 Já temos aí então, uma primeira regra de transporte: 1 + 1 = 0 com o transporte de um para a próxima coluna, ou seja, “vai um”. Exemplo: 112 + 102 = 1 11 + 10 1 01 “vai 1” Logo: 112 + 102 = 1012 b) 1102 + 1112 = 1 1 “vai 1” 110 + 111 “vai 1” 1 101 Logo: 1102 + 1112 = 11012 c) 110012 + 10112 = 1 1 1 1 11001 + 1011 10 0100 “vai 1” Logo: 110012 + 10112 = 1001002 “vai 1” “vai 1” “vai 1” Profs. Fábio Lucena Veloso e Roberto Barros 20 Subtração no Sistema Binário O método de resolução é análogo a uma subtração no sistema decimal. 0–0=0 0 – 1 = 11 (“1 e empresta 1”) 1–0=1 1–1=0 obs. O empréstimo pode ser feito tanto para o meio de operação quanto para baixo da operação. NUNCA para cima , pois ai seria “vai 1”. Exemplos: a) 1112 – 1002 = Logo: 1112 – 1002 = 112 b) 10002 – 1112 = Logo: 10002 – 1112 = 12 111 -100 011 Profs. Fábio Lucena Veloso e Roberto Barros 21 Multiplicação no Sistema Binário Faz-se como uma multiplicação normal como no sistema decimal. 0x0=0 0x1=0 1x0=0 1x1=1 Exemplos: a) 110102 x 102 = 11010 10 00000 + 11010 110100 x Logo: 110102 x 102 = 1101002 b) 110102 x 1012 = 11010 x 101 “vai um” 1 1 1 1 11010 00000 + 11010 10000010 Logo: 110102 x 1012 = 100000102 Divisão de Binários A divisão de binários é análoga à uma divisão de decimais, trabalhando com multiplicação e subtração. Exemplos: a) 1100 / 10 = 1 1 0 0 ∟10 - 10 110 0 10 - 10 00 Profs. Fábio Lucena Veloso e Roberto Barros 22 Exercícios: 1) Efetue a adição dos números abaixo: a) 10002 + 10012 b) 100012 + 111102 e) 45A16 + 19216 f) 2C9116 + 999516 c) 10101102 + 10010112 g) ADF16 + 52516 2) Efetue a subtração dos números abaixo: a) 110012 - 110002 b) 1110012 - 1011012 c)110011002 - 101100112 d) 110001112 + 100101102 h) 12BB16 + C4C316 d) 100110002 - 100011112 3) Efetue a multiplicação dos números abaixo: a) 110012 x 1012 b)101002 x 11002 c)1110012 x 10102 d)110001102 x 1012 4) Efetue a divisão dos números abaixo: a) 110012 / 1112 b) 101012 / 112 d) 11102 / 1112 c) 11002 / 102 Profs. Fábio Lucena Veloso e Roberto Barros 23 Funções lógicas – Portas lógicas Os circuitos lógicos processam informações utilizando-se do sistema de numeração binária que correlaciona os níveis lógicos, alto e baixo, ou seja, 0 e 1. Sendo uma preposição caracterizada sempre como "verdadeira" ou "falsa", pode-se fazer analogia com uma lâmpada cujos estados serão correlacionados a seguir: Várias correlações são válidas, tais quais: 1 0 ligado desligado alto baixo verdadeiro falso sim. não Operações lógicas A relação entre duas ou mais variáveis que representam estados binários é estabelecida por meio de três operações lógicas, classificadas em: produto lógico (função e) ; soma lógica (função ou) ; inversão (função não). Suponha que uma lâmpada estará acesa sempre que duas condições forem satisfeitas. São elas: a) a lâmpada esteja boa; e. b) o interruptor esteja ligado. Estabelecidas as premissas, suponha que S seja a proposição de que a lâmpada esteja acesa ou apagada, verdadeiro ou falso, respectivamente. S será verdadeiro quando A e B forem verdadeiros. Se A ou B falsos, S será necessariamente uma proposição falsa. As relações entre as variáveis A e B e A ou B representam operações lógicas. S é também definido, a saída da função lógica desse exemplo. Tabela Verdade Também chamada de tabela de combinações. A confecção da tabela verdade é, em geral, o primeiro passo para a análise e compreensão de um problema lógico. Montar uma tabela verdade é escrever todas as combinações possíveis dos estados lógicos de todas as variáveis da função, incluindo o estado lógico resultante de cada combinação. O número de combinações possíveis de "n" variáveis é na ordem de 2n. Montagem da tabela verdade - exemplo anterior. Análise das possibilidades: 1- lâmpada queimada, interruptor desligado; 2- lâmpada queimada, interruptor ligado; Profs. Fábio Lucena Veloso e Roberto Barros 24 3- lâmpada boa, interruptor desligado; e. 4- lâmpada boa, interruptor ligado. A seguir, monta-se a tabela, criando as colunas das premissas, também conhecidas como variáveis de entrada. Para o caso, tem-se as variáveis A e B. Tais colunas devem ser preenchidas segundo o número total de hipóteses avaliadas no problema. Como são apenas duas variáveis de entrada, tem -se quatro combinações de ocorrências. A última coluna define o resultado lógico esperado, ou variável de saída. A variável S é verificada segundo o método dedutivo pelo argumento afirmação da antecedente. A F F V V B F V F V S F F F V A 0 0 1 1 B 0 1 0 1 S 0 0 0 1 Organização do raciocínio na solução de problemas de lógica. Interpretação lógica Tabela verdade Gerador de funções lógicas Funções Lógicas - Portas lógicas Define-se função lógica como aquela definida na álgebra elementar, porém sua imagem fica restrita aos valores representados pelos níveis lógicos 0 e 1. No exemplo da lâmpada, pode-se prever que a equação lógica observada da tabela de combinações é: S=AxB Funções: E, OU, NÃO, NE e NOU Nas funções lógicas, teremos penas dois estados: - o estado 0 (zero) e - o estado 1 (um). O estado 0 (zero) representará, por exemplo: - ausência de pressão ( sistemas pneumáticos ) - aparelho desligado - desacionado - ausência de tensão - etc. O estado 1 (um) representará a situação contrária: - presença de pressão - aparelho ligado acionado - presença de tensão - etc. Profs. Fábio Lucena Veloso e Roberto Barros 25 Função E ou AND É aquela que executa a multiplicação de duas ou mais variáveis. S = A . B, onde se lê, S = A E B Convenções: Chave aberta = 0 Chave fechada = 1 Lâmpada apagada = 0 Lâmpada acessa = 1 Circuito equivalente Situações possíveis 1° - Se tivermos as chaves A e B aberta ( 0 ), nesse circuito não haverá circulação de corrente, logo a lâmpada estará apagada: (A . B = 0 ). 2° - Se tivermos a chave A aberta ( 0 ) e a chave B fechada ( 1 ), não haverá circulação de corrente, logo a lâmpada estará apagada: (A . B = 0 ). 3° - Se tivermos a chave A fechada (1) e a chave B aberta (1), não haverá circulação de corrente, logo a lâmpada estará apagada: (A . B = 0 ). 4° - Se tivermos a chave A fachada (1) e a chave B fechada (1), haverá circulação de corrente, logo a lâmpada estará acesa: (A . B = 1 ). Analisando as possibilidades, conclui-se que só teremos a lâmpada acesa quando as chaves A e B estiverem fechadas; nível lógico 1. Tabela verdade e sua respectiva porta lógica A 0 0 1 1 B 0 1 0 1 S 0 0 0 1 Tabela verdade Porta lógica AND A porta AND executa a tabela verdade da função AND, ou seja, têm-se a saída no "estado um ", e somente se as duas entradas forem iguais a um, e teremos a saída igual a zero nos demais casos. O conceito é utilizado para qualquer número de variáveis de entrada. A saída permanecerá no "estado um" se, e somente se as N entradas forem iguais a um (1), e permanecerá no "estado zero" nos demais casos. Profs. Fábio Lucena Veloso e Roberto Barros 26 Função OU ou OR É aquela que assume o valor um (1) quando uma ou mais variáveis de entrada forem iguais a um (1) e assume valor zero (0) se, e somente se todas as variáveis de entrada forem iguais a zero (0), É representada da seguinte forma: S = A + B, onde se lê S = A OU B. Convenções: lâmpada acesa = 1 chave ligada = 1 lâmpada apagada = 0 chave desligada = 0 Circuito equivalente Nota-se que teremos a lâmpada ligada, quando a chave A ou chave B ou ambas estiverem acionadas. Tabela verdade e sua respectiva porta lógica A 0 0 1 1 B 0 1 0 1 S 0 1 1 1 Tabela verdade Porta lógica OU Poderemos ter também, porta OU com N variáveis. Teremos a saída no estado um, quando uma ou mais variáveis de entrada forem iguais a um (1), e teremos a saída no estado zero (0) se, e somente se todas as variáveis de entrada forem iguais a zero (0). Função NÃO ou NOT A função NÃO ou função complemento é aquela que inverte o estado da variável, ou seja, se a variável estiver em zero (0), vai para um (1), e se a variável estiver em um (1) vai para zero (0). É representada da seguinte forma: S= A Essa barra ou apóstrofo sobre a letra que representa a variável significa que esta sofre uma inversão. Também podemos dizer que A é a negação de A. Convenções: lâmpada acesa = 1 chave ligada = 1 lâmpada apagada = 0 chave desligada = 0 Circuito elétrico Profs. Fábio Lucena Veloso e Roberto Barros 27 Quando a chave A estiver aberta (0), passará corrente pela lâmpada e esta acenderá (1). Quando a chave A estiver fechada (1), a lâmpada estará apagada (0), pois curto-circuitaremos a lâmpada. Tabela verdade e sua respectiva porta lógica A 0 1 S 1 0 Tabela verdade Porta inversora O inversor é o bloco lógico que executa a função NÃO. Sua representação poderá ser feita para outras portas lógicas tais como: após um outro bloco lógico antes de um outro bloco lógico Exemplo: = Função NÃO E, NE ou NAND Como o próprio nome diz, essa função é uma composição da função E com a função NÃO, ou seja, teremos a função E invertida. Esta é representada da seguinte forma: S=A.B Onde: o traço em cima indica que teremos a inversão do produto A . B Convenções: lâmpada acesa = 1 chave ligada = 1 lâmpada apagada = 0 chave desligada = 0 Circuito elétrico A B 0 0 0 1 1 0 1 1 S 1 1 1 0 Tabela verdade porta lógica NAND Profs. Fábio Lucena Veloso e Roberto Barros 28 Função NOR ou NOU Analogamente a função NAND, a função NOR é a composição da função NÃO com a função OU, ou seja, a função NOR será o inverso da função OU. Esta é representada da seguinte forma: S=A+B Convenções: lâmpada acesa = 1 lâmpada apagada = 0 A 0 0 1 1 B 0 1 0 1 chave ligada = 1 chave desligada = 0 S 1 0 0 0 Tabela verdade Porta lógica NOR Função "OU - EXCLUSIVO" (XOR) A função lógica OU - EXCLUSIVO apresenta como resultado nível lógico 1, quando as variáveis de entrada forem diferentes entre si. Esta é representada da seguinte forma: S=A + B Convenções: lâmpada acesa = 1 chave ligada = 1 lâmpada apagada = 0 chave desligada = 0 Circuito elétrico A 0 0 1 1 B 0 1 0 1 S 0 1 1 0 Tabela verdade Porta lógica XOR Profs. Fábio Lucena Veloso e Roberto Barros 29 Nota: A função lógica OU - EXCLUSIVO pode ser também representada por uma soma de produtos obtida a partir da análise da tabela verdade. A 0 0 1 1 A B AC BD B 0 1 0 1 S 0 1 1 0 Tabela verdade A expressão obtida a partir desta análise apresenta-se da seguinte forma: S = A B + A B Função COINCIDÊNCIA (XNOR) A função lógica COINCIDÊNCIA, em contraposição à OU-EXCLUSIVO, tem como resultado nível lógico 1, sempre que existir em suas variáveis de entrada uma igualdade. Esta é representada da seguinte forma: S=A .B Convensões: lâmpada acesa = 1 lâmpada apagada = 0 chave ligada = 1 chave desligada = 0 Circuito elétrico A 0 0 1 1 B 0 1 0 1 S 1 0 0 1 Tabela verdade Porta lógica XNOR Nota: A função lógica OU - EXCLUSIVO pode ser também representada por uma soma de produtos obtida a partir da análise da tabela verdade. A B S AC B A 0 0 1 1 B 0 1 0 1 S 1 0 0 1 Tabela verdade A expressão obtida a partir desta análise apresenta-se da seguinte forma: S = A . B + A . B Profs. Fábio Lucena Veloso e Roberto Barros 30 Interligação entre expressões, circuitos e tabelas verdade. Expressões booleanas geradas por circuitos lógicos. Podemos escrever a expressão booleana que é executada por qualquer circuito lógico. Por Exemplo: 1) A B C 2) A B C D S = A.B + C S = (A + B) . (C + D) Circuitos obtidos através de expressões booleanas. Podemos também desenhar um circuito lógico que execute uma expressão booleana qualquer. Por exemplo: Obs. Existem várias formas de desenharmos este circuito, aqui temos dois exemplos, podemos desenhar de outras formas. 1) A . B . C + (A + B) A B C A B A B C A B S = A . B . C + (A + B) S = A . B . C + (A + B) 2) [(A + B) + (C . D)] . D A B C D S = [(A + B) + (C . D)] . D mas se quisermos Profs. Fábio Lucena Veloso e Roberto Barros 31 Tabelas verdade que representam expressões ou circuitos Uma maneira de se efetuar o estudo de uma função booleana é a utilização da tabela verdade, onde temos a solução para todas as situações possíveis de combinações. 1) S = (A+B) . A A 0 0 1 1 B 0 1 0 1 A+B 0 1 1 1 S = (A+B) . A 0 0 1 1 2) S = A + B + A B C A B C A C ABC S= A+B+ABC 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1 Exercícios: 1) Monte a expressão e a tabela verdade do circuito abaixo. A B B C S 2) Monte o circuito e a tabela verdade da expressão: S = ABC + ABC + A B C + A B C Profs. Fábio Lucena Veloso e Roberto Barros 32 Álgebra de Boole e Simplificação de Circuitos Lógicos Introdução A expressão simbólica não significa apenas um modo de representar as verdades matemáticas. Muito mais que isto, permite submeter tais verdades a um cálculo puramente formal e obter conclusões e resultados novos e originais. O simbolismo lógico é .portanto, um instrumento adequado às realizações de uma análise lógica das proposições, que destaca as íntimas relações existentes entre a lógica e a matemática. Ao associar os bits 0 ou 1, cria-se um raciocínio lógico de operação. Uma vez que os computadores processam essas lógicas, devem-se criar procedimentos e modelos matemáticos que possam ser interpretados por eles. Estes principais matemáticos são denominados Álgebra de Boole. A lógica continuou a desenvolver-se com Aristóteles (384-322 a.C), depois veio Libniz (1646-1716) com trabalhos que sustentaram a idéia da Matemática lógica e somente em meados do século XX, ela foi solidificada com trabalhos que introduzem e formalizam sua representação gráfica. Personagens importantes que tornaram evidentes tais representações, per meio de suas publicações, em ordem cronológica: Leonhard Euler (1707-1783), John Venn (1834-1923), Veitch e Karnaught em 1952. Em 1854, George Boole (1819-1864), matemático e pensador inglês, apresentou um trabalho que serviu como base para a teoria matemática das proposições lógicas, também conhecida como: lógica simbólica; sua álgebra foi designada como álgebra booleana. Outros autores também submeteram entes lógicos a um cálculo aritmético. São eles: Johann Hambert e Charles Peirce, mas foi em 1938 que Claude Elwood Shannon, engenheiro americano, aplicou a teoria de Boole na simplificação lógica de funções usadas em telefonia além de mostrar a aplicação da álgebra de Boole na análise de circuitos de relês. Postulados: Complementação Adição Multiplicação A=0 A=1 A=1 A=0 0+0=0 0+1=1 1+0=1 1+1=1 A+0=A A+1=1 A+A=A 0x0=0 0x1=0 1x0=0 1x1=1 Ax0=0 Ax1=A AxA=A A+ A=1 Ax A=0 A=A Propriedades: Comutativa: A+B=B+A A.B=B.A Associativa: A + (B + C) = (A + B) + C = A + B + C A . (B . C) = ( A . B) . C = A . B . C Distributiva: A (B + C) = AB + AC A + (B . C) = (A + B) . (A + C) Profs. Fábio Lucena Veloso e Roberto Barros 33 Teoremas de De Morgan O complemento de um produto é igual à soma dos seus complementos A.B = A + B Para a comprovação deste teorema, monta-se a tabela verdade de cada membro e comparamos os resultados: A 0 0 1 1 B 0 1 0 1 A.B 1 1 1 0 A+ B 1 1 1 0 Notamos a igualdade entre as duas colunas de respostas, ou seja uma porta NAND é igual a uma porta OR com suas entradas invertidas. Esse teorema pode ser estendido para mais de duas variáveis: A . B . C. D. ...... . N = A + B + C + D + ...... + N Conclui-se que uma porta NAND, com duas ou mais entradas, é equivalente a uma porta OU com o mesmo número de entradas, apenas que com suas entradas invertidas. O complemento de uma soma de elementos é igual ao produto dos seus complementos A+B =A . B Para a comprovação deste teorema, monta-se a tabela verdade de cada membro e comparamos os resultados: A 0 0 1 1 B 0 1 0 1 A+B 1 0 0 0 A.B 1 0 0 0 Notamos a igualdade entre as duas colunas de respostas, ou seja uma porta NOR é igual a uma porta AND com suas entradas invertidas. Profs. Fábio Lucena Veloso e Roberto Barros 34 Esse teorema pode ser estendido para mais de duas variáveis: A . B . C . D . ...... . N = A + B + C + D + ...... + N Conclui-se que uma porta NOR, com duas ou mais entradas, é equivalente a uma porta AND com o mesmo número de entradas, apenas que com suas entradas invertidas. Exemplo: Prove que S=A+ B = A . B Para provar esta igualdade, vamos a partir da primeira expressão e através da utilização dos Teoremas De Morgan, identidades e propriedades da Álgebra de Boole, chegar até a Segunda. Substituindo pela expressão equivalente, têm-se: S= A B + A B Aplicando-se o 1° teorema de De Morgan, temos = (A B) . (A B) Aplicando-se o 2° teorema de De Morgan em cada termo entre parentesses , temos = (A + B) .(A + B) Aplicando-se a identidade, A = A = (A + B) . ( A + B) Aplicando-se a propriedade distributiva, temos = A.A +A.B + B.A + B.B Aplicando-se o postulado da multiplicação, A . A = 0 e B . B = 0 S= A.B + A.B S=A+ B = A . B Profs. Fábio Lucena Veloso e Roberto Barros Identidades auxiliares: 1ª) A + A.B = A Provamos essa identidade usando a propriedade distributiva. Vamos evidenciar a variável ‘A’. = A (1 + B) Do postulado da soma temos: 1 + B = 1, então podemos escrever que: = A.1 = A Logo: A + A.B = A 2ª) A+ AB = A+B Provamos essa identidade usando a propriedade distributiva. Vamos evidenciar a variável ‘A’. = (A + A) . (A + B) Do postulado da soma temos: A + A = 1, então podemos escrever que: = 1 . (A + B) = (A + B) Logo: A + A B = A + B Obs. Outra forma de provarmos essa identidade é : A+ AB = A+B = A+ AB Postulado A = A = [ A . ( A . B)] 2° teorema de De Morgan = [ A . (A + B)] 1° teorema de De Morgan = ( A . A + A . B) Propriedade distributiva 0 Identidade A . A = 0 = (A . B) = (A + B) Logo: A + A B = A + B 1° teorema de De Morgan 35 Profs. Fábio Lucena Veloso e Roberto Barros 3°) 36 (A + B) . (A + C) = A + BC = (A . A) + (A . C) + (B . A) + (B . C) A Propriedade distributiva Identidade A . A = A = A + A.C + A.B + B.C = A (1 + B + C) + B . C Coloca-se em evidência a variável ‘A’ = A (1) + B . C Identidade 1 + A = 1 1 A = A + BC Identidade 1 . A = A Logo: (A + B) . (A + C) = A + BC Simplificação de Expressões Booleanas Utilizando o conceito da Álgebra de Boole podemos simplificar expressões. Cada circuito corresponde a uma expressão, e essas expressões quando sofrem simplificação, simplificam também seus circuitos correspondentes. Tomemos como exemplo, a expressão: S = ABC + A C + A B Primeiro vamos evidenciar o termo ‘A’ = A (BC + C + B) Aplicando a propriedade associativa, temos: = A [BC + (C + B)] Aplicando o Teorema de De Morgan, temos: = A [BC + (C B)] Chamemos BC de Y, logo BC = Y, teremos então: = A (Y + Y) Como Y + Y = 1 = A (1) Como A . 1 = A =A Logo: ABC + A C + A B = A