Académique Documents
Professionnel Documents
Culture Documents
ndice - Artigos
1. Introduo
Voc j deve ter ouvido falar que computadores somente entendem e processam cdigos binrios, os famosos 0 e 1s do sistema numrico de base 2. O que a grande maioria no sabe como e porque os computadores trabalham dessa maneira e isso que vamos tentar entender no decorrer desse texto. Desde criana, sempre gostei de joguinhos multi peas que me possibilitassem montar coisas, e meu favorito era de longe o LEGO. Era fascinante o que se podia fazer encaixando pecinhas umas nas outras. Ao ficar mais velho e escolher uma profisso na rea tcnica notei que podia voltar a montar coisas usando peas, s que agora eu deixaria a mecnica simples do LEGO de lado e entraria no domnio da eletrnica digital. Na eletrnica digital, que rege o comportamento dos computadores e afins, os equivalentes dos bloquinhos de lego so as portas lgicas, e precisamos de apenas 3 tipos bsicos para projetar nosso circuito digital, seja ele complexo como for (o que inclui microprocessadores). Na lgica clssica se aplicam dois estados possveis para as proposies, verdadeiro ou falso. No caso da lgica binria dos computadores lidamos com zeros e uns, e quando falamos de circuitos eletrnicos isso se traduz em nveis eltricos altos e baixos, que o que realmente torna possvel tornar um modelo terico de computador algo real e prtico.
2.Escondendo o complicado
Em engenharia (e tambm em outras reas) para tornar as coisas mais simples e de mais fcil entendimento usamos algo chamado abstrao, onde dividimos um sistema em nveis, chamados nveis de abstrao. Isso nos permite generalizar e trabalhar somente com a informao necessria ao problema em anlise no momento, escondendo informao desnecessria. Por exemplo, s preciso saber que meu carro precisa de gasolina para ele andar e no quais so os compostos qumicos contidos nela, nem como eles reagem no meu motor. Caso quisesse saber porque meu carro anda com gasolina, teria de descer at um nvel de abstrao mais baixo no projeto do carro e analisar as informaes contidas nele. a famosa abordagem dividir para conquistar, onde quando temos um problema complexo o dividimos em nveis para entend-lo melhor ou extrair somente a informao ou caracterstica que nos interessa num dado momento. Conforme vamos nos aprofundando no
3.Portas lgicas
As portas lgicas so abstraes de algo mais complexo que a unio de transistores usados para constru-las. Para nossa convenincia didtica podemos classific-las como nvel de abstrao 2, os transistores como nvel 1 e o silcio que compe os transistores como o nvel 0. claro que sempre podemos descer a nveis mais baixos e ir parar dentro dos tomos, mas chegaramos ao ponto em que precisaramos de mecnica quntica e muito ch do ch do Santo Daime para tentar entender alguma coisa. Quando estamos no nvel das portas lgicas s nos interessa o que elas fazem, e no como elas fazem. Como j havia dito, em essncia, para projetar circuitos digitais necessitamos de 3 tipos diferentes de portas lgicas, as portas NO, E e OU ou respectivamente NOT, AND e OR na nomenclatura inglesa (que normalmente a mais usadas nos projetos). Suas representaes grficas ANSI esto na figura abaixo.
5. A Porta AND
Essa porta realiza a operao AND que consiste em uma multiplicao binria de suas duas ou mais entradas (que na prtica a mesma da realizada com nmeros decimais, ao qual voc j est acostumado). Caso tenhamos duas entradas e elas sejam iguais a 1 e 1 teremos 1 na sada porque 1 x 1 = 1, para todas as outras possibilidades teremos 0 na sada, j que pelo menos uma das entradas ser sempre 0, e quando multiplicamos algo por 0 o resultado sempre 0 (veja a tabela verdade abaixo).
6. A Porta OR
Ao realizar uma operao OR a porta lgica executa uma adio binria de suas duas ou mais entradas. Cuidado ao realizar a soma, pois nesse tipo de adio 1+1 no igual a 2 (j que o nmero 2 no existe em um sistema binrio), e sim igual a 1. Dessa maneira, em uma porta com duas entradas e com valores 0 e 1 teremos como sada 1, j que 0 + 1 = 1. Somente teremos zero em sua sada quando todas as entradas forem iguais a 0. Em resumo, enquanto houver pelo menos um valor 1 em qualquer uma de suas entradas a sada ser sempre 1 (como na tabela verdade logo abaixo).
Nessa ilustrao, as letras significam os nomes das entradas/sada, os nmeros em preto significam a identificao das portas e os nmeros em vermelho os sinais que fluem pelo circuito (que s podem ser zeros e uns). Os sinais se propagam seguindo os fios e entram nas portas lgicas para serem processados, o resultado pode ser inserido em outras portas para serem processados novamente e por a vai, at o fim do circuito onde o sinal pode ser 0 ou 1. Nesse caso, os fios em azul representam os sinais que ainda no passaram por nenhum processamento (no atravessaram nenhuma porta ainda), os vermelhos representam os sinais que j foram processados pelo menos uma vez. Esse desenho de interligao de portas tambm conhecido como diagrama esquemtico, ou simplesmente esquemtico. Note que no projeto do circuito acima a regra de no ligar sadas com sadas no foi quebrada. Por exemplo, ligamos a entrada da porta 1 (NOT) em uma das duas entradas da porta 3 (AND), isso significa que ambas as entradas sempre recebero o mesmo valor (0 ou 1). Fizemos o que se chama de ligao em paralelo (sempre que ouvir que algo est ligado em paralelo, significa que est recebendo o mesmo sinal que o outro ao qual est ligado). Tambm ligamos a sada da porta 1 na entrada da porta 2 e a sada da porta 2 na entrada da porta 4, alm de outras ligaes. Desse modo, usamos somente as regrinhas permitidas, que so ligar entradas com entradas e sadas com entradas. Observe tambm que podemos repetir portas de acordo com a necessidade (as portas 2 e 3 do detector so idnticas, mas recebem sinais diferentes). Circuitos lgicos tambm podem ter mais de uma nica sada, na figura abaixo voc pode ver uma ULA que trabalha com operandos de 4 bits. O diagrama esquemtico possui alguns smbolos que no expliquei aqui (portas NOR, XOR, buffers, entre outros), mas a ideia a mesma do exemplo da figura acima, s que em uma escala maior. Neste circuito, as entradas da ULA esto extrema esquerda e as sadas extrema direita.
8.Concluso
Todo o tipo de processamento realizado pelos processadores na verdade isso a que voc acabou de ver: zeros e uns passando dentro de vrias portinhas lgicas como as mostradas no exemplo do detector de nmeros primos. isso que seu microprocessador faz o tempo todo em que seu computador est ligado. Obviamente em uma escala muito maior e mais complexa. Se voc entendeu o esprito da coisa acaba de compreender a base de projeto dos circuitos lgicos que compem os mais complexos chips digitais do mundo. Todos os circuitos seguem essas mesmas regras bsicas, desde simples registradores at mesmo ULAs, controladores de memria, unidades de clculo em ponto flutuante, pipelines, timers, etc. E agora voc tambm sabe porque os computadores s trabalham com zeros e uns. Caso no tenha entendido, no tem problema algum, a maioria das pessoas tem inicialmente uma certa dificuldade em compreender tantos zeros e uns pra l e pra c indo de porta em porta, mas no desanime, ao final do artigo deixo algumas referncias para estudos mais aprofundados caso seja de seu interesse.