Matemática Profº: Carlos Roberto da Silva; Lourival Pereira Martins. Sistema de numeração: Binário, Octal, Decimal, Hexadecimal; Sistema de numeração: Conversões; Sistemas de Numerações. Nosso sistema de numeração é constituído por um conjunto de dez símbolos, também chamados de algarismos e um conjunto de regras que nos permite representar qualquer número desejado. Nesse sistema o valor de cada símbolo é determinado de acordo com a sua posição na representação numérica Exemplo 6 valor 6000 ou 6 . 10 3 2 7 valor 700 ou 7 . 10 No número 6742 temos: 1 4 valor 40 ou 4 . 10 2 valor 2 ou 2 . 10 0 Devido a essa característica um mesmo algarismo assume dois valores distintos; - Um absoluto: representado pela idéia expressa pelo próprio algarismo; - Outro relativo: relacionado com a posição que o número assume na representação numérica. No nosso exemplo o algarismo seis assume: Valor absoluto, que representaremos por VA., 6. Valor relativo, que representaremos por VR, 6000 ou 6 . 103. A utilização dessa forma de representação tem origens históricas e se fixou em nossa cultura por se mostrar mais prática do que outras formas de representação, como a romana. Com poucos símbolos e um conjunto de regras podemos representar qualquer número. Com essa forma de representação temos um Sistema de Numeração eficiente. Da mesma forma que o sistema formal que utilizamos podemos construir outros sistemas de representação numérica. Para construir um sistema de numeração é fundamental a definição de uma BASE, que indica a quantidade de símbolos e seu respectivo valor absoluto. Portanto o nosso sistema de numeração tem base 10, pois possui em sua estrutura 10 símbolos. Dependendo de nossas conveniências podemos criar outros sistemas de numeração como o de base 2 que utiliza apenas dois símbolos, zero e um. 1 1. Analisando a representação de um número no Sistema Decimal: » Base: 10 (quantidade de símbolos). » Elementos: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Embora o Sistema Decimal possua somente dez símbolos, podemos escrever qualquer número que nossa imaginação pode criar. Isso é possível usando um sistema de peso relacionado com a posição do algarismo, conforme o exemplo a seguir: 7546 = 7000 + 500 + 40 + 6 Dependendo de sua posição, o digito terá um peso, que denominamos de valor relativo. Observe que uma análise mais detalhada, do exemplo acima, nos revela informações importantes sobre nosso sistema de numeração 7546 = 7000 + 500 + 40 + 6 =7 x 1000 + 5 x 100 + 4 x 10 + 6 x 1 = 7 x 103+ 5 x 102 + 4 x 101 + 6 x 100 O valor relativo de todos os algarismos pode ser representado pelo produto desse por uma potência de dez, por isso dizemos que esse é um sistema de base dez, que podemos associar com sua posição. Por exemplo, o algarismo sete, que ocupa quarta posição é multiplicado por dez elevado a terceira, uma unidade a menos que a de sua localização na representação numérica. 2. Sistema de numeração numa “b” base qualquer. Da observação do sistema decimal podemos generalizar: Dado um conjunto de b símbolos numéricos, a1, a2, a3, .... , ab, um número, com n algarismos, na base b pode ser representado na forma que chamaremos de decomposta por: an . bn-1 + an-1 . bn-2 + an-3.bn-4 + …. + a1 . b0. No exemplo anterior, o numeral representado 7546, temos: Base b = 10; Quantidade de algarismo n = 4, sendo: a4 =7; a3 = 5; a2 = 4 e a1= 6; logo sua forma decomposta é dada por: 7 . 103+ 5 . 102 + 4 . 101 + 6 ; 100, como já havíamos concluído anteriormente. Observe que desenvolvendo a expressão acima temos o numeral desejado Ou seja: 7 . 103+ 5 . 102 + 4 . 101 + 6 . 100 = 7 . 1000 + 5 . 100 + 4 . 10 + 6.1 = 7546 2 2.1. Sistema Binário, base 2 = (?)2:1 » Base: 2. (quantidade de símbolos) » Elementos: 0 e 1. Assim como no sistema decimal, dependendo da posição, o algarismo ou bit terá um peso, valor relativo. O da extrema esquerda será o bit mais significativo e o da extrema direita será o bit menos significativo. Exemplo: (1011001)2 A forma fatorada do numeral (1011001)2, que possui 7 algarismos (bits) será: (1011001)2 = 1 . 26 + 0. 25 + 1 . 24 + 1 . 23 + 0 . 22 + 0 . 21 + 1 . 20 CUIDADO!! Na base 2 as potencias de base 2 tem os valores indicados abaixo: 26 = (1000000)2 24 = (10000)2 22 = (100)2 25 = (100000)2 23 = (1000)2 21 = (10)2 O que nos leva que o desenvolvimento da expressão acima implica em operações mais elaboradas do que estamos habituado. Na prática o resultado dessa expressão, fazendo uso das operações que estamos habituados resulta no equivalente na base 10. Equivalência entre os números no sistema decimal e binário Base 10 Base 2 Base 10 Base 2 Base 10 Base 2 Base 10 Base 2 0 0 9 1001 18 10010 27 11011 1 1 10 1010 19 10011 28 11100 2 10 11 1011 20 10100 29 11101 3 11 12 1100 21 10101 30 11110 4 100 13 1101 22 10110 31 11111 5 101 14 1110 23 10111 32 100000 6 110 15 1111 24 11000 33 100001 7 111 16 10000 25 11001 34 100010 8 1000 17 10001 26 11010 35 100011 O sistema binário tem grande aplicação nas ciências da computação, pois esta na estrutura básica das linguagem de máquina. 1 Para identificar em qual base o numeral está representado escrevemos entre parênteses indicando a base a direita no índice inferior. Exemplo (1011) 2 representa o numeral 1011 na base 2; 3 2.2. Sistemas Octal (?)8: » Base: 8. (quantidade de símbolos) » Elementos: 0, 1, 2, 3, 4, 5, 6 e 7. O Sistema Octal (base 8) é formado por 8 (oito) símbolos ou dígitos, para representação de qualquer digito em octal (de 0 a 7). São necessários três bits para representarmos de 0(000) a 7(111) em binário. O Sistema Octal é utilizado com o propósito de minimizar a representação de um número binário e facilitar a manipulação humana. Exemplo: (2456)8 Forma fatorada: (3456)8 = 2 . 83 + 4 . 82 + 5 . 81 + 6 . 80 Obs. Relembrando: 80 = (1)8 82 = (100)8 84 = (10000)8 86 = (1000000)8 81=(10)8 83 = (1000)8 85 = (100000)8 87= (10000000)8 Equivalência entre os números no sistema decimal e octal. Base 10 Base 8 Base 10 Base 8 Base 10 Base 8 Base 10 Base 8 0 0 9 11 18 22 27 33 1 1 10 12 19 23 28 34 2 2 11 13 20 24 29 35 3 3 12 14 21 25 30 36 4 4 13 15 22 26 31 37 5 5 14 16 23 27 32 40 6 6 15 17 24 30 33 41 7 7 16 20 25 31 34 42 8 10 17 21 26 32 35 43 2.3. Sistemas Hexadecimal (?)16: » Base: 16. (quantidade de símbolos) » Elementos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. O Sistema Hexadecimal (base 16) foi criado com o mesmo propósito do Sistema Octal, o de minimizar a representação de um número binário. 4 Se considerarmos quatro dígitos binários, ou seja, quatro bits, o maior número que se pode expressar com esses quatro dígitos é 1111, que é, em decimal 15. Como não existem símbolos dentro do sistema arábico, que possam representar os números decimais entre 10 e 15, sem repetir os símbolos anteriores, foram usados símbolos literais: A, B, C, D, E e F. Exemplo: (1AF3)16 Forma fatorara: (1AF3)16 = 1 . 163 + A . 162 + F . 161 + 3 . 160 O que equivale à: 1 . 163 + 10 . 162 + 15 . 161 + 3 . 160 Obs: Relembrando: 160 = (1)16 162= (100)16 164 = (10000)16 166 = (1000000)16 161 = (10)16 163= (1000)16 165 = (100000)16 167 = (10000000)16 Equivalência entre os números no sistema decimal e Hexadecimal. Base 10 Base 8 Base 10 Base 8 Base 10 Base 8 Base 10 Base 8 0 0 9 9 18 12 27 1B 1 1 10 A 19 13 28 1C 2 2 11 B 20 14 29 1D 3 3 12 C 21 15 30 1E 4 4 13 D 22 16 31 1F 5 5 14 E 23 17 32 20 6 6 15 F 24 18 33 21 7 7 16 10 25 19 34 22 8 8 17 11 26 1A 35 23 2.4. Conversão Entre os Sistemas de Numeração. 2.4.1. Conversão Base binária, Base octal e Base hexadecimal Base decimal. Para converter base binária, base octal e base hexadecimal em base decimal, se utiliza o Teorema fundamental da Numeração ou seja basta efetuar a expressão, na forma usual ( Base decimal), a forma fatorada. . 5 Exemplos: 1) Converter (100)2 na base decimal: ____ 4 (100)2 = 1 x 22 + 0 x 21 + 0 X 20 = (4)10 2) Converter (353)8 na base decimal: (353)8 = 3 x 82 + 5 x 81 + 3 X 80 = (235)10 3) Converter (A2)16 na base decimal: (A2)16 = A x 161 + 2 x 160 = 10 x 161 + 2 x 160 =(162)10 2.4.2. Conversão Base decimal Base binária, Base octal e Base hexadecimal. Para converter da base decimal para as demais bases basta dividir, sucessivamente, pela base o número decimal e os quocientes que vão sendo obtidos, até que o quociente de uma das divisões seja menor que a base. O resultado é a seqüência de baixo para cima do último quociente mais todos os restos obtidos. Base decimal para base binária: Exemplo converte 10 para binário 10 2 0 5 2 1 2 0 2 1 Logo (10)10= (1010)2 6 Base decimal para base octal: Exemplo: Converter 234 para base 8 234 8 3 29 5 8 3 Logo (235)10= (353)8 Base decimal para base hexadecimal: Exemplo: converter 19294 para base 16 19294 16 14 1205 5 16 75 16 11 4 Logo (19294)10 = (4B5E)16* *lembrando que em hexadecimal, utilizamos a letra B para “11” e E para14. 2.4.3 Conversão Base binária Base octal e Base hexadecimal. 2.4.3.1 Base binária para Base octal e vice-versa: Dividir o número binário de 3 em 3 bits, contando sempre da direita para esquerda e trocar pela tabela 1 (Nota: esta tabela deve ser compreendida – não poderá ser consultada na prova). Tabela 1 Decimal Binário Octal 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 0 1 2 3 4 5 6 7 1) Converter (1111000111)2 na base octal: 7 (1111000111)2 = (001.111.000.111)2 = 001 000 = (1707)8 111 111 1 7 7 0 2) Fazer o retorno do resultado obtido: (1707)8 = 001 000 = (001.111.000.111)2 = (1111000111)2 111 111 1 7 0 7 3) Converter (010100110000)2 na base octal (010100110000)2 = (010|100|110|000)2 = (2460)8 2.4.3.2 Base binária para Base hexadecimal e vice-versa: Dividir o número binário de 4 em 4 bits, contando sempre da direita para esquerda e trocar pela tabela 2 (Nota: esta tabela deve ser compreendida – não poderá ser consultada na prova). Tabela 2 Decimal Binário Hexadecimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 0 1 2 3 4 5 6 7 8 9 A B C D E F 1) Converter (1010111100110111)2 na base hexadecimal: (1010.1111.0011.0111)2 = 1010 0011 1111 0111 A F 3 = (AF37)16 7 O hexadecimal AF37 torna mais fácil o acesso ao número do que o binário 1010111100110111 2) Fazer o retorno do resultado obtido: (AF37)16 = (1010|1111|0011|0111)2 = (1010111100110111)2 8 2.4.4. Conversão Base Octal Base hexadecimal. » Dois passos: o Converter octal para binário. o Converter binário para hexadecimal. Exemplo Converter (5372)8 para base 16 Primeiro: Convertendo (5372)8 para binário temos: (5372)8 =(101.011.111.010)2 Segundo Convertendo (101.011.111.010)2 = (1010.1111.1010)2 para hexadecimal (1010.1111.1010)2= (AFA)16 2.4.5. Conversão Base hexadecimal Base Octal. » Dois passos: o Converter hexadecimal para binário. o Converter binário para octal. Exemplo Converter (3C7B)16 para base octal Primeiro convertendo para binário temos: (3C7B)16 = (0011.1100.0111.1011 )2 Segundo Convertendo de binário para octal (0011.1100.0111.1011) = (001.111.000.111.1011)2= (36173)8 2.5. Aritmética em Binário A adição em binário é muito simples. São poucas regras: 0+0=0 0+1=1 1+0=1 1 + 1 = 10 (a unidade, a esquerda, "vai 1" para o dígito de ordem superior) 1 + 1 + 1 = 11 (a unidade, a esquerda, "vai 1" para o dígito de ordem superior) 9 Exemplo: 00011010 2 00001100 2 00100110 2 (2610 ) (1210 ) 3810 11 (vai um) 00011010 00001100 00100110 Vamos ver agora a subtração em binário: 0-0=0 10 - 1 = 1 ("e empresta 2 (10)2 do próximo bit mais significante") 1-0=1 1-1=0 Exemplo: 001001012 000100012 00010100 2 (3710 ) (1710 ) (2010 ) "2" 00100101 00010001 00010100 (lembrando que 102 equivale a 210, símbolo usado no exemplo acima, para facilidade de compreensão) Exercícios 1) Escreva na forma fatorada os numerais abaixo. a) (258)10= b) (642)8= c) (6B4)16= d) (10100110)2= e) (27814)10= f) (1110111010)2 = g) (B03F)16= h) (110112112)8= 2) Converta para base dez os numerais abaixo. a) (110011)2= b) (110011)8= c) (1101)16= d) (5372)8 = 10 e) (46D3)16= f) (100011110)2= 3) Converta da base dez para a base indicada os numerais abaixo. a) (69)10 = (?)2 b) (69)10 = (?)8 c) (69)10 = (?)16 d) (278)10 = ( ? )2 e) (592)10= ( ? )2 f) (592)10= ( ? )8 g) (592)10= ( ? )16 h) (3553)10=( ? )8 i) (3553)10=( ? )16 j) (703168)10= (?)16 4) Converta da base 2 para base 8 a) (110001)2 b) (111011111101)2 c) (1001101100111)2= d) (111011101)2= 5) Converta da base 2 para base 16 a) (110001)2 b) (111011111101)2 c) (1001101100111)2= d) (111011101)2= 6) Converta da base 8 para base 16. a) (5321)8= b) (12301)8= c) (60211)8= 7) Converta da base 16 para base 8. a) (3987)16= b) (4B3F)16= c) (A73E)16= 8) Realizar as conversões entre bases numéricas que se pedem. Resultados obtidos utilizando apenas calculadora não serão aceitos. Justifiquem sempre as conversões. (Sugestão: se quiserem, utilizem a calculadora apenas para conferir o resultado final). a) (100)10 = (?)16 b) (255)10 = (?)16 c) (531)10 = (?)16 d) (1037)10 = (?)16 e) (3156)10 = (?)16 11 f) (FACADA)16 = (?)2 g) (100B0CA)16 = (?)2 h) (110000001100101011011010)2 = (?)16 i) (1111000011001010)2 = (?)16 j) (5C3)16 = (?)10 k) (D0E)16 = (?)10 l) (CA0)16 = (?)10 m) (101011010)2 = (?)8 n) (51)8 = (?)10 o) (365)10 = (?)8 p) (5107)8 = (?)2 q) (FACADAD0E)16 = (?)8 r) (305614)8 = (?)16 9) Fornecer, na base Hexadecimal, 20 números na ordem crescente, a partir de (250)10. (Nota: Tentem entender a ordem crescente de formação dos números hexadecimais). 10) Efetue as seguintes operações aritméticas: a ) 100110 2 1110012 b) 0011012 1112 c) 100110 2 101112 d )1110010 2 101010 2 e)110000 2 0011112 f )111001010 2 1001010 2 12