Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aritmética digital: operações e circuitos APRESENTAÇÃO Atualmente, existem milhares de sistemas digitais que realizam tarefas, controlam, calculam e inclusive tomam decisões pelas pessoas, facilitando o dia a dia. Uma das tarefas desses sistemas é realizar cálculos de operações complexas, operações de simulação, processamento de algoritmos lógicos de alta complexidade e contas matemáticas. A pergunta é: como funcionam logicamente esses dispositivos? Como realizam as operações aritméticas básicas (adição, subtração, divisão e multiplicação) utilizando apenas números binários (0 e 1)? Nesta Unidade de Aprendizagem, você vai conhecer as operações aritméticas binárias (adição, subtração, multiplicação e divisão), considerando seu sinal e realizando a forma de complemento de 2 quando necessário, além de outros sistemas de bases numéricas, como os de base octal e hexadecimal. Por fim, vai conhecer os circuitos eletrônicos que realizam operações aritméticas binárias, exemplos de implementação de circuitos integrados comerciais e resolução de exercícios utilizando base de números binários. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Descrever números binários positivos e negativos.• Examinar as operações aritméticas em circuitos digitais. • Interpretar circuitos aritméticos binários.• DESAFIO Você, que gosta de programação e aplicações de eletrônica utilizando plataformas de desenvolvimento, como o Arduino, sabe que automações ou aplicações podem facilitar a vida. Essas aplicações podem ser de baixa complexidade, como um contador digital, ou de grande complexidade, como prototipagem de sensoriamento e controle de processos industriais. Muitos processos industriais precisam seguir uma trajetória de posição para seu bom funcionamento, como é o caso de braços robóticos ou a abertura e fechamento de uma válvula proporcional de comando elétrico. Assim, imagine a seguinte situação: Qual é o vetor que você deve colocar no compilador do Arduino, para que seja realizada essa onda? Resolva o Desafio e apresente os resultados em uma tabela com 21 pontos intermediários, com os valores apresentados em seus correspondentes binário, decimal, octal, hexadecimal e seus equivalentes em voltagem de saída. INFOGRÁFICO As operações aritméticas binárias podem ser realizadas de forma manual, sendo possível entender seu funcionamento. Porém, você sabe como são realizadas na prática, nos grandes processadores? Ou como vê-las funcionando em componentes eletrônicos discretos, de baixo custo, em um pequeno laboratório de eletrônica? Existem componentes eletrônicos que são comercializados a baixo custo e realizam esse tipo de operações; um deles é o Circuito Integrado (CI) 74LS283, que é facilmente configurado para realizar adição e/ou subtração. Neste Infográfico, você vai conhecer esse dispositivo e um exemplo de implementação de subtração de dois números de 4 bits, pois tal resolução está presente. No entanto, como em qualquer dispositivo eletrônico, é sempre recomendável verificar a folha de dados técnicos do fabricante. CONTEÚDO DO LIVRO Equipamentos eletrônicos que realizam cálculos matemáticos pesados, resolvem modelos de sistemas dinâmicos complexos e fazem todo tipo de operações matemáticas são comuns atualmente. Assim, muitas vezes, não é necessário realizar manualmente cálculos aritméticos básicos, pois celulares ou computadores podem fazê-los em segundos. No entanto, como se realizam essas operações aritméticas elementares nesses dispositivos? Por serem sistemas digitais, como é feita a adição, subtração, divisão ou multiplicação em números binários? No capítulo Aritmética digital: operações e circuitos, da obra Circuitos digitais, base teórica desta Unidade de Aprendizagem, você vai estudar como são representadas as operações com números binários, sua representação com sinais e as operações básicas com esses números: adição, subtração, divisão e multiplicação. Também vai conhecer outros sistemas de numeração, como os de base octal (8) e hexadecimal (16). Por fim, vai compreender os circuitos eletrônicos que realizam operações aritméticas binárias e, mediante um exemplo, explicar seu funcionamento. Boa leitura. CIRCUITOS DIGITAIS Anselmo Cukla Aritmética digital: operações e circuitos Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: � Descrever números binários positivos e negativos. � Examinar as operações aritméticas em circuitos digitais. � Interpretar circuitos aritméticos binários. Introdução Atualmente, estamos rodeados por equipamentos eletrônicos e digitais que realizam diversas tarefas, sobretudo operações aritméticas, como celulares, tablets, alguns relógios, as próprias calculadoras e, sem dúvida, os computadores. Por incrível que pareça, todas as operações realizadas pelos computadores e pelas plataformas de processamento de dados complexos, no fundo, são traves de operações aritméticas e movimento de registros. E, embora não aprofundemos o assunto, é importante saber como são feitas as operações aritméticas básicas em forma digital. Neste capítulo, você estudará, a partir da conversão de números biná- rios, como são realizadas as operações aritméticas em sistemas digitais, analisando operações com números de comprimento finito, e como podemos interpretar os resultados. Antes, veremos como são tratados os números binários quando têm sinal negativo ou positivo, para fazermos as devidas operações aritméticas, além das bases octal e hexadecimal, outras formas de representação numérica. Finalmente, será abordado o caso em que se realizam essas operações com circuitos aritméticos binários, a partir de operações matemáticas básicas. 1 Números binários positivos e negativos Da mesma forma quando trabalhamos e realizamos cálculos com números na base decimal, ao operarmos com números binários, é bem provável que utilizemos tanto números positivos quanto negativos, os quais, necessariamente, devem ser diferenciados. De acordo com Tocci, Widner e Moss (2011), para facilitar o trabalho desses números adiciona-se aos números binários um bit de sinal. Por convenção, foi adaptado como o bit 0 ao sinal positivo, e como o bit 1 ao sinal negativo, como representado na Figura 1. Figura 1. Representação de um número binário com sinal. Fonte: Tocci, Widner e Moss (2011, p. 254). Na Figura 1, podemos ver que o número binário 0110100 representa o número +52 em base decimal no registro A, e o bit 0 na posição A6 representa o sinal positivo. Do mesmo modo, o número –52 de base decimal do registro B pode ser representado em base binária, apenas devendo-se adicionar um sinal 1, como indicado na posição B6. O bit de sinal tem a finalidade de representar se o número é positivo ou negativo, normalmente armazenado em registros digitais. Esse tipo de representação também é conhecido como sinal-magnitude para números binários com sinal. Aritmética digital: operações e circuitos2 De acordo com Tocci, Widner e Moss (2011) e Floyd (2007), para repre- sentar números negativos na base binária, devemos observar outros métodos de representação de números binários, pois, com a forma sinal-magnitude, há maior dificuldade na hora de realizar operações aritméticas. Assim, outra forma de representação de números binários é a de complemento de 1, em que, em determinado número na base binária, os 1s se substituem por 0s e os 0s por 1s, tal como apresentado em (1): (1) De acordo com (1), o número binário na parte superior é o número binário original, e o inferior o complemento de 1. A forma mais usual de representação do sinal de um número binário consiste no complemento de 2 — para a sua aplicação a um número binário, é realizado o complemento de 1 e, logo, se soma 1 à posição do bit menos significativo (TOCCI; WIDNER; MOSS, 2011), processo representado em (2). (2) De acordocom o apresentado em (2), pode-se afirmar que o complemento de 2 do número binário 11010101 é 00101011. Para a representação do sinal, quando utilizamos complemento de 2, pre- cisamos considerar as seguintes situações: � se o número é positivo, o número é representado em forma direta, somente tornando-se necessário adicionar um 0 em frente do bit MSB (most-significant-bit — “bit mais significativo”), como apresentado na Figura 2; � para o caso de números negativos, ao número de complemento de 2 se adiciona um bit de sinal 1 em frente do MSB, tal como visto na Figura 2, para o caso de –45 em base decimal. 3Aritmética digital: operações e circuitos Figura 2. Representação de um número binário na forma de complemento de 2 com sinal. Fonte: Adaptada de Tocci, Widner e Moss (2011). 0 1 0 1 1 0 1 1 Bit de sinal (+) MSB Bit de sinal ( ) Binário verdadeiro Complemento de 2 0 1 0 0 1 1 = +4510 = 4510 A forma de complemento de 2 é a mais utilizada para realizar operações aritméticas em sistemas digitais. Para este estudo, todos os números binários terão representação do sinal como “0” para “+” e “1” para “–” no bit MSD; em todos os casos, quando o número binário for negativo, estará representado na forma de complemento de 2. Seguidamente, veremos as quatro principais operações aritméticas utilizando números binários: adição, subtração, mul- tiplicação e divisão. Sistema de numeração hexadecimal Sua diferença quanto ao sistema binário reside no tipo de representação, já que o primeiro utiliza dois símbolos (0 e 1), o sistema decimal 10 símbolos (0 até 9) e o sistema hexadecimal uma base com 16 símbolos — uma base de representação que emprega os dígitos de 0 até 9 e, ainda, as letras de A até F (FLOYD, 2007; TOCCI; WIDNER; MOSS, 2011; TOKHEIM, 2013a). O Quadro 1 apresenta uma relação comparativa entre o sistema decimal, o hexadecimal e o binário, observando-se que um mesmo número em base hexadecimal utiliza um único símbolo para a sua representação, enquanto, no sistema binário, são necessários quatro dígitos. Aritmética digital: operações e circuitos4 Fonte: Adaptado de Tocci, Widner e Moss (2011). Hexadecimal Decimal Binário 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 A 10 1010 B 11 1011 C 12 1100 D 13 1101 E 14 1110 F 15 1111 Quadro 1. Equivalência entre base binária, decimal e hexadecimal Os sistemas em bases hexadecimais são largamente utilizados, pois existe uma equivalência direta com a base binária, possibilitando uma mais rá- pida leitura de grandes números nessa base e um apropriado agrupamento. Empregamos essa base de representação em muitos tipos de aplicações, sendo uma das mais conhecidas a área de programação. 5Aritmética digital: operações e circuitos Sistema de numeração octal Outra forma de representação numérica, além da decimal, binária e hexade- cimal, é a octal, na qual temos 8 símbolos envolvidos, de 0 até 7. O sistema numérico octal proporciona uma forma apropriada e rápida de conversão para o binário, e vice-versa, embora seja menos utilizado em sistemas digitais, como é o caso do hexadecimal (FLOYD, 2007; TOKHEIM, 2013a). No Quadro 2, apresentamos uma comparação entre esse sistema numérico e os demais já mencionados. Decimal Octal Hexadecimal Binário 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 10 8 1000 9 11 9 1001 10 12 A 1010 11 13 B 1011 12 14 C 1100 13 15 D 1101 14 16 E 1110 15 17 F 1111 Quadro 2. Equivalência entre base octal, binária, decimal e hexadecimal Aritmética digital: operações e circuitos6 O incremento da contagem do sistema numérico octal é similar ao do sistema decimal, com a diferença de que os dígitos 8 e 9 não são utilizados. Comumente, para evitar erros e identificar perfeitamente a qual base cor- responde cada número representado, deve-se utilizar em subscrito a base de correspondência, por exemplo, 1210 está na base decimal, 1012 na base binária, 178 na base octal e 1A16 na base hexadecimal. A seguir, descreveremos as quatro operações aritméticas básicas realizadas na base binária. Vale ressaltar que sempre identificaremos no texto a base em que trabalharemos (binário, decimal, etc.); caso contrário, o número em ques- tão apresentará um subscrito com a base correspondente, como já explicado. 2 Operações aritméticas em circuitos digitais Assim como as operações matemáticas convencionais no sistema decimal que utilizamos no dia a dia, as operações aritméticas de soma, subtração, divisão e multiplicação também são tratadas no mundo digital. Para tanto, abordaremos a seguir as quatro operações fundamentais das matemáticas, contudo agora na base de representação dos números binários. Adição De acordo com Tocci, Widner e Moss (2011), a operação em números binários é realizada do mesmo modo quando se opera com números decimas, como expressado em (3): 8 2 5 1 5 3 MSB LSB + 9 7 8 (3) onde o dígito menos significativo denomina-se LSB (least-significant-digit; “bit menos significativo”), justamente pelo qual se começa a fazer a operação. Como mencionado anteriormente, o dígito mais significativo chama-se MSB. 7Aritmética digital: operações e circuitos Para operar com números digitais, a lógica é similar da empregada para números decimais (FLOYD, 2007; TOCCI; WIDNER; MOSS, 2011); para a soma, podem ocorrer quatro situações quando trabalhamos com números binários: 1) os dois números são positivos; 2) o número positivo é de maior magnitude do que o negativo; 3) o número negativo é de maior magnitude do que o positivo; e 4) ambos os números são negativos, analisados a seguir com base em Tocci, Widner e Moss (2011). Dois números positivos Na adição de dois números positivos, obtém-se outro número positivo de maior magnitude que os dois primeiros. Em (4), é apresentado um exemplo de soma de dois números positivos. 0 0010110 (22)Sinal + 0 0011011 (27) 0 0110001 (49) (4) Nesse caso, o número binário é puro, ou seja, não foi complementado, e o resultado corresponderá à soma direta entre ambos os números positivos. Número positivo de maior magnitude do que o negativo Da mesma forma que acontece em números decimais, a soma de um número positivo de maior magnitude do que o negativo dá como resultado outro número positivo, como apresentado em (5) na soma de. 0 1000 1 1011+ 0 00111Carry (5) Veja que ambos os números têm um bit de sinal, e o resultado é um nú- mero positivo. No processo da soma, é gerado um quinto dígito da parcela do resultado (carry), cujo valor é 1. Esse carry sempre deve ser desconsiderado para esse caso. Assim, o resultado da operação é 8+ (–5) = 3 = 0 0011. Aritmética digital: operações e circuitos8 Número negativo de maior magnitude do que o positivo Essa operação oferece como resultado um número negativo em complemento de 2, como observado em (6), na soma de (–7) + 5. 1 1001 0 0101+ 1 1110 (6) Veja que o resultado da operação já apresenta um bit de sinal negativo, assim como esperado. Por outra parte, o resultado está na forma de complemento de 2. Assim, para obter o resultado em binário puro, deve ser realizado novamente o complemento de 2; assim, o resultado de 1 1110 fica como 0 0010, ou seja, 2. Ambos os números da operação são negativos Assim como no caso anterior, aqui também o resultado é negativo, como vemos em (7), na soma de (–7) + (–5). 1 1001 1 1011+ 1 01001Carry (7) Como podemos observar em (7), o resultado apresenta um carry que é desconsiderado; para esse caso, o resultado é 1 0100. Com o complemento de 2, o resultado é 0 1100 = +12, como era de se esperar comparando com a mesma operação em decimal. 9Aritmética digital: operações e circuitos Existe uma condição chamada overflow, que acontece quando o resultado excede o número de bits dos números somados, resultando em um transbordamento da capacidade (conhecido como overflow). Um overflow pode ocorrer quando ambos osnúmeros têm o mesmo sinal e o número transbordado aparece como um sinal incorreto. Veja o exemplo da soma de dois números positivos de 8 bits cada um, para a qual o resultado é um número de 9 bits, como é o caso de 125 + 58 = 183. Sinal incorreto Valor incorreto 01111101 00111010+ 01101111 Observe que o valor de 183 requer 8 bits para a sua representação, mas existem somente 7 bits para fazê-lo, além de um bit de sinal. Então, nessa operação, temos um overflow; quando o sistema que processa essa operação somente suporta 8 bits (7 + 1 bit de sinal), o resultado apresentado será incorreto. Subtração com números binários e complemento de 2 De acordo com Floyd (2007), a subtração é um caso particular da soma ou adição: fazer a diferença de +10 (subtraendo) de +7 (minuendo) é similar a fazer a soma de –7 + 10. Assim, quando se realiza a subtração entre dois números binários, troca-se o sinal do subtraendo (fazendo o complemento de 2). Então, para fazer a operação de subtração de dois números binários com sinal, deve-se realizar o complemento de 2 do subtraendo e a soma convencio- nal, eliminando, por consequência, qualquer bit de carry no final. A seguir, você pode observar um exemplo para compreender melhor o assunto. Realize a seguinte subtração de números com sinais: 00001000-11100010, ou 8 – (–30). 0 0001000 Minuendo (+8) Resultado (+38) Subtraendo (complemento de 2 de –30)0 0011110+ 0 0100110 Aritmética digital: operações e circuitos10 Veja que o exemplo utiliza um número positivo (minuendo) e um negativo (subtra- endo), mas podem ser utilizadas quaisquer combinações de sinais, seguindo sempre a regra explicada. Contudo, devemos dar especial atenção ao sinal do resultado final, que, para o exemplo, foi positivo. Multiplicação de números binários De acordo com Tocci, Widner e Moss (2011), realizamos a multiplicação entre números binários da mesma maneira que fazemos com números decimais, porém, em sistemas binários, o processo é ainda mais simplificado, já que somente são utilizados 0 e 1. Para exemplificar, é realizada a operação de multiplicação de dois números binários (8), que em decimal seria, por exemplo, 10 × 8 = 8010. 1010 1010 1000 1810 0000 × 0000 0000 1010 Resultado 1010000 8010 Multiplicador Multiplicando (8) Podemos observar que foram utilizados números binários em forma direta, pois se tratava de números positivos. Antes de fazer a multiplicação com dois números negativos, será necessário fazer o complemento de 2 (deixá-los binários puros, sem sinal); naturalmente, o resultado será positivo. Quando os números têm sinais diferentes, o resultado será negativo, e o número negativo inicialmente deverá ser representado em complemento de 2 (um número binário puro e sem sinal, similar ao valor absoluto e positivo). 11Aritmética digital: operações e circuitos Divisão de números binários O procedimento para realizar a divisão de dois números binários é similar ao da divisão de dois números decimais, tal como é o caso apresentado na Figura 3, em que se realiza a divisão de 59 ÷ 5 = 11, e o resto é 4. Figura 3. Exemplo de divisão de números binários (59 ÷ 5 = 11)10. Resultado Subtração binária Resto Na Figura 3, é realizado um procedimento similar ao operar com números decimais, com a ressalva de que as subtrações de números binários devem considerar o complemento de 2 do subtraendo. Esses cálculos precisam ser realizados como cálculos auxiliares. Observe que o resultado da divisão é 10112 = 1110, e o resto é 1002 = 410. Nesse exemplo, foram utilizados números positivos, mas, assim como mencionado anteriormente, quando se realizam operações com números negativos, estes devem ser convertidos para positivos, utilizando a operação de complemento de 2. Lembre-se de que, se os sinais do dividendo e divisor forem iguais, o resultado é positivo; caso os sinais sejam diferentes, o resultado será negativo. 3 Circuitos aritméticos binários Incrivelmente, uma das únicas funções realizadas pelos processadores dos celulares e computadores são as operações aritméticas. E, graças à tecnologia, a velocidade de operação desses processadores tem sido cada vez mais alta. A seguir, veremos alguns circuitos eletrônicos que realizam as operações Aritmética digital: operações e circuitos12 aritméticas anteriormente descritas, contudo, antes, discutiremos resumi- damente como funciona internamente um processador digital realizando as operações aritméticas. Unidade aritmética lógica A unidade aritmética lógica (arithmetic-logic-unit — ALU) constitui o cora- ção de um processador digital no qual se realizam as operações aritméticas. De acordo com Tocci, Widner e Moss (2011) e Tokheim (2013b), o objetivo da ALU consiste em processar os dados binários enviados desde a memória e realizar operações aritméticas com eles. Na Figura 4, apresentamos um diagrama de blocos de uma ALU e as principais partes que a compõem. Figura 4. Diagrama de blocos de uma ALU. Fonte: Tocci, Widner e Moss (2011). Como apresentado na Figura 4, uma ALU é formada por pelo menos dois registradores (registrador A e B) e um registrador acumulador, além de uma unidade de memória, um sistema de controle e um circuito lógico combinacional que realiza as operações aritméticas. Segundo Tocci,l Widner e Moss (2011), uma ALU opera da seguinte maneira: 1) a unidade de controle define quais endereços de posição da memória serão somados ao valor armazenado no registrador acumulador; a unidade de controle recebe instruções da unidade 13Aritmética digital: operações e circuitos de memória; 2) o número que será somado se transfere para o registrador B; 3) o circuito lógico realiza a soma dos números do registrador B e do acu- mulador. O resultado é devolvido ao acumulador para o armazenamento; 4) o novo número que está no acumulador poderá ser armazenado na memória ou utilizado para uma próxima operação. O registrador acumulador recebe esse nome porque acumula as sucessivas somas das operações aritméticas, aspecto importante, pois, ao acumular os resultados de operações intermediárias, como o caso da multiplicação ou da divisão como visto anteriormente, consegue prover a necessidade de armazenar temporariamente os resultados parciais. A seguir, veremos como funciona o circuito lógico, o encarregado das operações lógicas da ALU. Somador binário paralelo Todos os sistemas digitais que realizam operações aritméticas o fazem me- diante a movimentação de registros, ou seja, em todas as operações feitas por um computador pessoal (processador de texto, vídeos, imagens, etc.) internamente são tratadas mediante a movimentação de registros e aritméticas lógicas entre dois números binários, similares a uma soma (FLOYD, 2007; TOCCI; WIDNER; MOSS, 2011). Assim, para entender essa premissa básica, estudaremos como funciona um somador binário paralelo. Agora, reveremos, pela Figura 5, como funciona a soma binária entre dois números de 5 bits, raciocinando sobre como essa operação aritmética é tratada a partir do uso de registradores. Figura 5. Processo de uma soma binária em uma ALU. Fonte: Adaptada de Tocci, Widner e Moss (2011). + + 0 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 0 1 0 1 0 0 1 1 1 Primeira parcela Armazenada em registrador acumulador Armazenada em registrador B (A ser somado na próxima posição) Segunda parcela Carry Soma Aritmética digital: operações e circuitos14 De acordo com a Figura 5, o processo se inicia com a soma dos bits LSB da primeira e segunda parcela. Nesse caso, há um carry de 1, pois 1 + 1 = 10. O carry corresponde ao bit excedente da operação da primeira coluna e é utilizado na operação da segunda coluna. Agora, na operação da segunda, estão envolvidos 3 bits na operação da soma, os bits da 1ª e da 2ª parcela e o carry (1 + 0 + 1 = 10), o que produz um novo carry, trasladado à 3ª coluna da operação. Observe que esse processo se repete a cada coluna, ou seja, a cada posição de bit do registrador.Como o processo é realizado bit a bit nos registradores, é possível usar um circuito lógico baseado em flip-flops para tal finalidade, como apresentado na Figura 6. Figura 6. Diagrama de blocos de um somador paralelo completo de 5 bits. Fonte: Adaptada de Tocci, Widner e Moss (2011). No diagrama de blocos apresentado na Figura 6, os bits da primeira parcela (A0…A4) são armazenados no acumulador (ou registrador A). Já as variáveis da segunda parcela (B0…B4) provêm do registrador B e pertencem à segunda parcela da soma. As variáveis denominadas C (C0…C5) representam o carry correspondente à cada operação bit a bit de determinada coluna, e o carry representa o bit de overflow. Por outra parte, as variáveis S (S…S4) representam o resultado da operação de cada coluna. 15Aritmética digital: operações e circuitos Para realizar essa operação de soma, o circuito somador (configuração também conhecida como somador completo paralelo) recebe as duas parcelas de números binários e, ainda, um bit de carry da posição anterior (caso tenha havido operação anterior). Normalmente, o valor de C0 é 0, quando trabalha o circuito em forma individual, ou pertence aos números LSB de um circuito lógico de maior quantidade de bits do que o exemplo apresentado (TOKHEIM, 2013b). No entanto, há operações nas quais o valor de C0 pode ser 1. Normalmente, um circuito somador completo utiliza três entradas (registros A, B e C) e gera duas saídas (S e carry). Assim, um somador completo tem A1, B1 e C1 como entradas, e S1 e C2 como saídas, e assim sucessivamente. Isso será repetido o número de vezes igual ao número de bits com os registros. No exemplo da Figura 6, o tamanho dos registros ou das parcelas do somador paralelo é de 5 bits; no entanto, no caso de computadores e celulares, esse número pode ser de 32 a 64 bits. De acordo com Tocci, Widner e Moss (2011), a configuração da Figura 6 é chamada de somador paralelo pelo fato de que todos os bits das parcelas dos registros são inseridos em forma simultânea no somador; assim, as operações bit a bit são realizadas todas ao mesmo tempo. Isso se diferencia da operação que fazemos manualmente, pois realizamos a operação bit a bit em forma sub- sequente. Por isso, a adição paralela representa um dos somadores mais rápidos. Neste capítulo, abordamos os números digitais, e sua forma de representação em outras bases, como a decimal, a octal, a hexadecimal e a binária. Ainda, foram apresentadas as diferentes formas de escrever um número binário com sinal. Depois, descrevemos como se realizam as operações aritméticas básicas em um nível lógico. Por fim, apresentamos uma explicação e um exemplo de realização de operações aritméticas em nível de hardware ou circuitos lógicos. TOCCI, R. J.; WIDNER, N. S.; MOSS, G. L. Sistemas digitais: princípios e aplicações. 11. ed. São Paulo: Pearson, 2011. FLOYD, T. L. Sistemas digitais: fundamentos e aplicações. 9. ed. Porto Alegre: Bookman, 2007. TOKHEIM, R. Fundamentos de eletrônica digital: sistemas combinacionais. 7. ed. Porto Alegre: AMGH, 2013a. (Série Tekne, v. 1). TOKHEIM, R. Fundamentos de eletrônica digital: sistemas sequenciais. 7. ed. Porto Alegre: AMGH, 2013b. (Série Tekne, v. 2). Aritmética digital: operações e circuitos16 DICA DO PROFESSOR A divisão é uma operação aritmética que envolve as outras três operações (multiplicação, adição e subtração). Isso é válido tanto para operações em números decimais como binários. Portanto, ao trabalhar com números binários, é muito importante compreender corretamente o uso dos sinais (complemento de 1 e complemento de 2) para realizar as operações aritméticas básicas. Nesta Dica do Professor, você vai acompanhar um cálculo de divisão com números binários, utilizando o dividendo e o divisor com diferentes sinais, para obter um resultado negativo. Tal procedimento vai ajudar na compreensão de outros exercícios e na fixação do conhecimento da disciplina. Conteúdo interativo disponível na plataforma de ensino! EXERCÍCIOS 1) Um sistema de aquisição de dados realiza a medição de duas temperaturas e as converte para números digitais com sinal, em que cada número é representado com um total de 8 bits. Têm-se os valores T1 = 123o e T2 = 35o, e se deseja conhecer ∆T = T2 – T1. Qual é o valor digital de ∆T, se o resultado é apresentado em complemento de 2? A) ∆T = 0 1011000. B) ∆T = 1 1011000. C) ∆T = 1 0101000. D) ∆T = 1 0100111. E) ∆T = 0 0100111. 2) Você é programador e utiliza a plataforma Arduino para realizar atividades que envolvam eletrônica e programação e, assim, tarefas de automação e controle. Durante um ensaio, você pretende testar um conversor digital analógico (DAC) com resolução de 12 bits (0-1023 em binário), escrevendo valores no compilador para medir a voltagem de saída do conversor DAC. De acordo com a folha de dados do conversor, ele trabalha de 0-5 V; portanto, não aceita valores de referências de entrada negativa. Quando a entrada é 1023, a saída é 5 V; quando escreve 511, a saída é 2,5 V; e quando escreve 0, a saída é 0 V. Agora, em vez de escrever valores em decimal, você deve escrevê-los em hexadecimal, já que o compilador somente aceita entradas em hexadecimal. Assim, qual é o valor que deve ser escrito, para que a saída apresente uma tensão o mais próxima de 1 V? A) FF. B) CD. C) 200. D) 64. E) 14 A. Você está estudando as operações aritméticas em base binária a serem aplicadas em programação de sistemas digitais e dispõe de uma determinada plataforma de programação que realiza operações aritméticas trabalhando com uma resolução de 8 bits + 1 bit de sinal. Dessa forma, realizando operações de multiplicação de 25 x (–10), qual é sua 3) representação, em binário, na forma de complemento de 2, do resultado dessa multiplicação? A) 1 11111010. B) 1 00000110. C) 1 11111000. D) 0 10000110. E) 1 11111001. 4) A operação aritmética “mais completa” é a divisão, pois, quando se realizam os cálculos, é necessário utilizar as outras operações anteriores em forma conjunta, para obter o resultado. Isso, inclusive, é válido para operações com números binários com sinal, aplicando sempre as regras preestabelecidas para esses cálculos. Qual é o resultado da divisão de 506/15? A) 0 100001. B) 1 110100. C) 0 110100. D) 1 100001. E) 0 010110. 5) É possível fazer um somador binário extremamente rápido utilizando Flip-Flops discretos e uma alta velocidade de relógio que os comandam. O circuito apresentado na figura realiza as mesmas operações que você obteria se fizesse uma soma binária manualmente, mas ele as faz em paralelo, de forma simultânea. Agora, a partir de um circuito similar ao da figura que utiliza 5 Flip-Flops (significa que tem 5 bits de resolução), calcule os valores dos carries (C5-C0), sabendo que o valor armazenado no registrador A é +17 e o valor armazenado no registrador B é +15. A) 100000. B) 101010. C) 011111. D) 100011. E) 111110. NA PRÁTICA As operações aritméticas binárias podem ser e são executadas por sistemas digitais, como processadores, microcontroladores ou circuitos integrados (CI) dedicados a essa finalidade. Porém, é muito interessante montar e fazer funcionar um circuito digital que realize algum tipo de operação aritmética elementar. Neste Na Prática, você vai ver como é possível construir um circuito eletrônico que realize a contagem de três números com um bit de resolução cada e, no final, obter um resultado de um único valor com dois bits de resolução. Tudo isso utilizando componentes eletrônicos discretos. SAIBA + Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor: Converter binário para hexadecimal Neste vídeo, você verá uma aula de matemática sobre como converter um número binário para hexadecimal. Conteúdo interativo disponível na plataforma de ensino! Converter binário para octal Neste vídeo, você verá uma aula de matemáticasobre como converter um número binário para octal. Conteúdo interativo disponível na plataforma de ensino!
Compartilhar