Baixe o app para aproveitar ainda mais
Prévia do material em texto
Operações Aritméticas • Somente 4 casos possíveis: 0 + 0 = 0 1 + 0 = 1 1 + 1 = 10 = 0 + carry 1 para a próxima posição 1 + 1 + 1 = 11 = 1 + carry 1 para a próxima posição • Exemplos: 0 1 1 + 1 1 0 1 0 0 1 1 1 0 0 1 + 1 1 1 1 1 1 0 0 0 1 11 1 1 1 1 0 + 1 1 0 1 1 1 1 1 0 0 1 1 11 • A adição é a operação aritmética mais importante nos sistemas digitais, pois a partir dela são realizadas as outras (subtração, divisão e multiplicação). carry Subtração Binária • Somente 4 casos possíveis: 0 - 0 = 0 1 - 0 = 1 0 - 1 = 1 + carry 1 para a próxima posição 1 - 1 = 0 1 1 1 - 1 0 0 0 1 1 1 0 0 0 - 1 1 1 0 0 0 1 1 11 1 0 1 0 + 1 0 0 0 0 0 1 0 • Exemplos: Adição Binária Representação de Números Binários com Sinal • Como os computadores digitais e calculadoras operam tanto com números positivos quanto números negativos, há a necessidade de representar o sinal dos números de uma maneira adequada para que sejam feitas as operações aritméticas com números binários. • Sistema sinal magnitude • O bit mais significativo é o bit de sinal: 0 representa um número positivo e 1 representa um número negativo. Os três bits menos significativos representam a magnitude do número. • Problema: A implementação do circuito é mais complexa do que em outros sistemas. • Dois números binários representando o número 0. + 410= 0 1 0 0 - 410 = 1 1 0 0 + - O complemento de 2 de um número binário é obtido tomando-se o complemento a 1 do número e adicionando-se 1 na posição do bit menos significativo. Exemplo: 1011012 = 4510 Representação de Números Binários com Sinal no Sistema de Complemento de 2 0 1 0 0 1 0 + 1 0 1 0 0 1 1 1 0 1 1 0 1 → 0 1 0 0 1 0Número Original Complemento de 1 Complemento de 2 do número original Para representarmos um número binário com sinal utilizando complemento de 2 procedemos da seguinte forma: – Se o número for positivo, a magnitude é representada em sua forma direta e um bit de sinal 0 é colocado na frente do MSB. Ex: +4510 = 01011012 – Se o número for negativo, a magnitude é representada pelo seu complemento de 2 e um bit de sinal 1 é colocado na frente do sinal MSB. Ex: -4510 = 10100112 – Caso especial:1 seguido de zeros = -2N, onde N é o número de zeros. Exemplos: 1000 = -23 = -8 10000 = - 24 = -16 Para negarmos um número binário, tanto positivo quanto negativo, basta obtermos seu complemento de 2. – Exemplo:+9 → -9 1 0 1 1 0 + 1 1 0 1 1 1 0 1 0 0 1 → 1 0 1 1 0+9 → Complemento de 1 ← -9 – Exemplo:+9 → -9 0 1 0 0 0 + 1 0 1 0 0 1 1 0 1 1 1 → 0 1 0 0 0- 9 → Complemento de 1 ← +9 Adição no sistema complemento de 2 A operação de adição no sistema complemento de dois é feita da seguinte maneira: • Os operandos são representados em complemento de dois, e depois somados. Observação: – Os operandos devem ser representados com o mesmo número de bits; – O resultado da operação deve ter o mesmo número de bits que os operandos. 0 1 0 0 1 (+9) + 0 0 1 0 0 (+4) 0 1 1 0 1 (+13) • Exemplo 1 0 1 0 0 1 (+9) + 1 1 1 0 0 ( -4) 1 0 0 1 0 1 (+5) • Exemplo 2 1 0 1 1 1 ( -9) + 0 0 1 0 0 (+4) 1 1 0 1 1 ( -5) • Exemplo 3 1 0 1 1 1 (-9) + 1 1 1 0 0 (-4) 1 1 0 0 1 1 (-13) • Exemplo 4 Subtração no sistema de complemento de 2 Minuendo - Subtraendo Resultado O procedimento para subtração de dois números binários é o seguinte: 1. Negue o subtraendo, determinando seu complemento de 2. 2. Some o número encontrado ao minuendo. Exemplos: a) 9 - 4 0 1 0 0 1 (+9) + 1 1 1 0 0 ( -4) 1 0 0 1 0 1 (+5) b) - 9 - (+4) 1 0 1 1 1 ( -9) + 1 1 1 0 0 ( -4) 1 1 0 0 1 1 (-13) c) - 9 - (-4) 1 0 1 1 1 ( -9) + 0 0 1 0 0 (+4) 1 1 0 1 1 ( -5) Quando o resultado da operação é um número negativo, o bit de sinal é igual a 1 e a magnitude do número está dada em complemento de 2. Circuitos Aritméticos • Meio Somador 0111 1001 1010 0000 SCBA Tabela Verdade Mapa de Karnaugh C = A.B S = A⊕B 1 2 3 1 2 3 B Carry (C) A Soma (S) Circuito Lógico • Não há entrada de carry do estágio anterior MS A B S C 10 00 A B A B 01 10 A B A B Circuitos Aritméticos • Somador Completo 1 1 1 0 1 0 0 0 C 1001 0110 1010 0011 1111 0101 1100 0000 SCn-1BA Tabela Verdade Mapa de Karnaugh C = A.B + A.Cn-1 + B.Cn-1 S = A ⊕ B ⊕ Cn-1 Circuito Lógico SC A B S Cn-1C A B Cn-1 S C Símbolo 01 10 01 10 Cn-1 BA 1−nC BA BA AB 10 11 10 00 Cn-1 BA 1−nC BA BA AB • Somador binário O circuito abaixo soma dois números binários de 4 bits: Circuitos Aritméticos A3 A2 A1 A0 + B3 B2 B1 B0 C3 S3 S2 S1 S0 SCSCSC MS A0 B0A1 B1A2 B2A3 B3 S0S1S2S3 C0C1C2C3 CI 7483 possui quatro somadores binários completos. Circuitos Aritméticos •Somador/ Subtrator de complemento de 2 Quando Sub é igual a 1, as portas XOR complementam os bits B0, B1, B2 e B3, obtendo assim o complemento de um deste número. Além disso, quando sub é igual a 1, este bit 1 é somado com o complemento de um do número B, obtendo assim seu complemento de 2. Portanto, para Sub=1 o circuito realiza a operação A-B. Para Sub = 0, o circuito realiza a operação A+B. Sub A0 B0A1 B1A2 B2A3 B3 S0S1S2S3 C1C2C3C4Carry Não Usado Bit de sinal 110 000 011 101 BSBSub Tabela Verdade XOR SCSCSCSC BS0BS1BS2BS3 Circuitos Aritméticos ULA – Unidade Lógica e Aritmética: São circuitos integrados capazes de realizar operações lógicas e aritméticas com os dados de entrada. A operação a ser realizada é determinada por um código binário nas entradas selecionadoras da função. Observe que para S2=0 a ULA realiza operações aritméticas e para S2=1 operações lógicas. PRESET F3F2F1F0 (1111) A.B A + B A ⊕ B A mais B A menos B B menos A CLEAR F3F2F1F0 (0000) Operação X111 X011 X101 X001 0110 1010 1100 X000 CnS0S1S2 A = número de entrada de 4 bits B = número de entrada de 4 bits CN = carry de entrada para a posição LSB S = entradas de seleção de operação F = número de saída de 4 bits CN4 = carry de saída da posição MSB OVR = indicador de overflow 74382 Circuitos Aritméticos ULA de 16 Bits com 74382
Compartilhar