Faculdade Latino Americana Introdução à Organização de Computadores Representação de Dados 2ª parte Prof. Vagner Pinto Borges [email protected] 1 Faculdade Latino Americana Representação de Dados 2ª parte REPRESENTAÇÃO EM PONTO FIXO Sinal e magnitude Complemento à base Overflow Representação em ponto flutuante 2 SINAL E MAGNITUDE SINAL MAGNITUDE 0 000110110 = +54 ou 1 000110110 = -54 SINAL E MAGNITUDE LIMITES DE REPRESENTAÇÃO -(2n-1 -1) a +(2n-1 -1) SINAL E MAGNITUDE DESVANTAGENS 1ª - Possui 2 representações para o zero . +0 (10) = 0000(2) e -0 (10) = 1000(2) 2ª - A representação de números é simétrica entre positivos e negativos, limitada à quantidade permitida de bits dos registradores internos; Para 6 bits teremos 64 combinações sendo: 000000 a 111111 onde, De 000000 a 011111 = números positivos e; De 100000 a 111111 = números negativos. SINAL E MAGNITUDE DESVANTAGENS 3ª - A faixa de representação é mais reduzida, porque o valor n-1 refere-se tão somente à quantidade de algarismos da parte inteira. SINAL E MAGNITUDE PROBLEMAS Custo : Necessidade de construção de dois elementos diferentes, um para efetuar somas e outro para efetuar subtrações. Velocidade : Ocasionada pela perda de tempo gasto na manipulação dos sinais, de modo a determinar o tipo da operação e o sinal do resultado. Hoje em dia não é mais utilizado. REPRESENTAÇÃO DE NÚMEROS NEGATIVOS EM COMPLEMENTO Em face dos inconvenientes apresentados pela representação e aritmética em sinal e magnitude, os sistemas de computação empregam, de modo generalizado, aritmética de complemento em vez de sinal e magnitude. REPRESENTAÇÃO DE NÚMEROS NEGATIVOS EM COMPLEMENTO O conceito matemático de complemento é válido para qualquer base de numeração (B). Há dois tipos de complemento: complemento à base (C a B) e complemento à base menos um (C a B – 1). COMPLEMENTO À BASE N=76310 C10 de N= (99999 -76310) + 1 = 9923710 N=2548 C8 de N= (77777-2548) + 1 = 775248 N=1102 C2 de N= (11111-1102) + 1 = 110102 Método mais rápido para a obtenção do complemento à base de um número COMPLEMENTO À 2 N= 00110 C2 de N = 11001 + 1 = 11010 Pode-se dizer, sem risco que a maior totalidade dos computadores utilizam aritmética de complemento a 2 (representação em ponto fixo) devido as duas grandes vantagens sobre o método sinal e magnitude: 1 - Possuir uma única representação para o zero; 2 - Necessitar de apenas um circuito somador para realizar, não só operações de soma, mas também operações de subtração(mais barato). COMPLEMENTO À 2 É importante enfatizar que complementar um número positivo significa torná-lo negativo, como por exemplo passar +13 para -13. Isto é o mesmo que dizer: Complementar +13 acarretará no valor -13. Da mesma forma, podemos voltar ao valor positivo, a partir do -13, Complementando do mesmo modo o valor -13, o que redundará no valor + 13 COMPLEMENTAR N SIGINIFICA OBTER -N OVERFLOW Ocorre quando uma soma de n algarismos resulta em um valor com n+1 algarismos. Esse é um fato válido, sejam os números binários ou decimais, com ou sem sinal. Na representação e aritmética com números reais, fracionários, pode ocorrer não somente overflow, mas também underflow. Este último se caracteriza por ocorrer um resultado cujo valor é menor que o menor valor representável com uma específica quantidade de bits estabelecida para a forma de representação em uso. Surge com isso o conceito de ponto flutuante. REPRESENTAÇAO EM PONTO FLUTUANTE N1 = 0,00000000000000000000000073 N2 = 253700000000000000000000000 Solução para a soma dos referidos algarismos? NOTAÇAO CIENTÍFICA = PONTO FLUTUANTE REPRESENTAÇAO EM PONTO FLUTUANTE N1 = 0,00000000000000000000000073 = +0,73 x 10 -24 N2 = 253700000000000000000000000000 = +0,2573 x 10 30 Para representação em computadores seguem-se as mesmas regras Exemplos: 1010011,1011(2) = 0,101001111011(2) x 2 +111(7) 111000111001(2) = 0,E39 x 16 +3 REPRESENTAÇAO EM PONTO FLUTUANTE Tal descrito anteriormente, em uma representação em ponto flutuante, dois fatores são basicamente considerados: Precisão do número – expressa pela quantidade de algarismos da parte fracionária ou mantissa; Grandeza do número – expressa pelo valor do expoente. REPRESENTAÇAO EM PONTO FLUTUANTE REPRESENTAÇÃO NORMALIZADA (PADRONIZAÇÃO) A MANTISSA DEVE SER SEMPRE FRACIONÁRIA (M sempre <1); O PRIMEIRO ALGARISMO APÓS A VÍRGULA TEM QUE SER DIFERENTE DE ZERO. CONVERSÃO DE NÚMEROS PARA PONTO FLUTUANTE N = ± M x B ±E 32 bits Sinal Expoente 1 7 Mantissa 24