ESTV-ESI-Sistemas Digitais-Sistemas de Numeração 1/4 Sistemas de numeração Nos sistemas digitais, recorre-se com frequência a diferentes sistemas de numeração para representar a informação digital. Sistema de numeração decimal No sistema de numeração decimal são utilizados os dígitos 0, 1, 2...., 8, 9. Para representar números superiores a 9, utiliza-se uma convenção que atribui significado à posição ocupada por cada dígito. Por exemplo, em função da posição ocupada por cada dígito, o número 6903 traduz um valor numérico calculado por: 6903 = 6x103 + 9x10 2 + 0x101 + 3x10 0 Conforme se pode verificar, um número é expresso através da soma de potências de base 10 multiplicadas pelo respectivo coeficiente (dígito). Características do sistema de numeração decimal: Base: 10 Dígitos: 0,1,2...8,9 Potências: maior peso 10...... 10 4 103 10 2 101 ...... 10000 1000 100 10 menor peso 10 0 1 Sistema de numeração binário Em sistemas descritos através de variáveis lógicas recorre-se com frequência ao sistema de numeração de base 2 (binário). A vantagem na utilização deste sistema de numeração resulta da correspondência directa entre os dígitos 0 e 1 e os valores lógicos 0 e 1. Características do sistema de numeração binário: Base: 2 Dígitos:0,1 Potências: maior peso 2...... 2 4 23 ...... 16 8 2 2 4 1 2 2 menor peso 20 1 Neste sistema os dígitos binários representam os coeficientes das potências de base 2. Por exemplo, o número 19 (decimal) é representado pela sequência de dígitos binários 10011 = 1x2 4 + 0x2 3 + 0x2 2 + 1x21 + 1x2 0 10011 = 16 + 0 + 0 + 2 + 1 = 19 Conversão entre o sistema decimal e binário Considere-se a divisão inteira de N por 2. Dado que cada divisão desloca o ponto decimal em uma posição para a esquerda, temos N ....x 8 x 4 x 2 x 1 ⋅ = = ....x 8 x 4 x 2 ⋅ + resto x 1 2 2 O dígito menos significativo x1 corresponde ao resto da divisão inteira e o quociente corresponde a um novo ' número N =...x 8 x 4 x 2 ⋅ , onde x 2 passa a ser o dígito menos significativo. Aplicando divisões sucessivas e considerando o resto, obtém-se a sequência de dígitos binários que representam o número N no sistema de numeração binário. Por exemplo menos significativo 19 1 2 9 1 2 4 0 mais significativo 19(10 ) = 10011( 2) ← base 2 2 0 2 1 1 2 0 ESTV-ESI-Sistemas Digitais-Sistemas de Numeração 2/4 Sistema de numeração octal e hexadecimal Estes sistemas de numeração são bastantes utilizados devido à uma relação especial com o sistema de numeração binário. No sistema de numeração octal, a base é 8 e os dígitos utilizados são 0,1,2,3....,7. No sistema de numeração hexadecimal, a base é 16 e os dígitos utilizados são 0,1,2...9,A,B,C,D,E,F. Binário 000 001 010 011 100 101 110 111 Octal 0 1 2 3 4 5 6 7 Binário 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F A relação especial com o sistema de numeração binário reside no facto de três dígitos binários representarem oito (2 ) números distintos e quatro dígitos binários representarem dezasseis (2 ) números distintos. Esta relação 3 4 permite efectuar conversões entre estes sistemas de uma forma quase imediata, conforme se pode verificar no seguinte exemplo. 7 3 67 4 24 8 678 67 4 44 8 678 67 4 24 8 Octal 1 0 1 1 1 1 0 0 1 1 0 0 1 0 Binario 3 E D 3 2 647 48 647 48 647 48 647 48 647 48 Hexadecimal 1 1 1 1 1 0 1 1 0 1 0 0 1 1 0 0 1 0 Binario Conversões entre sistemas de numeração Decimal⇒Binário menos significativo 28 0 2 14 0 2 7 1 2 3 1 2 1 1 mais significativo 2 0 28(10 ) = 11100( 2) Binário ⇒Decimal 10101(2) = 1x2 4 + 0x2 3 + 1x2 2 + 0x21 + 1x2 0 = 16 + 4 + 1 = 21(10) Decimal⇒Octal menos significativo mais significativo 19(10 ) = 23( 8 ) 19 3 8 2 2 8 0 ESTV-ESI-Sistemas Digitais-Sistemas de Numeração 3/4 Octal ⇒Decimal 23(8) = 2x81 + 3x8 0 = 16 + 3 = 19(10 ) Decimal⇒Hexadecimal 45 D⇐13 menos significativo mais significativo 16 2 2 16 0 45(10 ) = 2D (16 ) Hexadecimal ⇒Decimal 2D (16) = 2x161 + 13x16 0 = 32 + 13 = 45(10 ) Binário ⇔ Octal 6 0 5 67 4 24 8 678 6 47 4 8 678 67 4 44 8 Octal 1 0 1 1 0 0 0 0 1 0 1 1 0 0 Binario Binário ⇔ Hexadecimal 3 B A 647 48 647 48 647 48 Hexadecimal 1 1 1 0 1 1 1 0 1 0 Binario Octal ⇔ Hexadecimal Neste caso, teremos que recorrer à conversão intermédia para a base binária ou decimal. Exemplo : 752(8)=X(16) Octal ⇒ Binário 678 678 6 474 8 1 1 1 1 0 1 0 1 0 7 5 2 conversão para binário = 111101010(2) Binário⇒ Hexadecimal 1 1 1 1 0 1 0 1 0 14243 14243 14243 1 752(8)=1EA(16) E Octal ⇒ Decimal 752(8) = 7x82 + 5x81 + 2x80 = 7x 64 + 5x8 + 2 = 448 + 40 + 2 = 490 conversão para decimal = 490(10) A Decimal ⇒ Hexadecimal 490 16 16 A⇐10 30 E⇐14 1 1 752(8)=1EA(16) 16 0 ESTV-ESI-Sistemas Digitais-Sistemas de Numeração 4/4 Resumindo no grafo ... Binário Σ di bi Grupos 3 ÷B Decimal Octal ÷B Grupos 4 Σ di bi Σ di bi ÷B Hexadecimal Legenda Σ di bi Grupos 3/4 ÷B Método Soma de potências de base b (bi) multiplicados pelo respectivo dígito (di) Conversão directa entre dígito e grupo Divisão sucessiva pela base B