1 Aulas sobre Sistemas Octal e Hexadecimal Curso de Sistemas de Informações – Lógica e Eletrônica Digital Prof. Roger A. P. Cazangi A. SISTEMA OCTAL: Sistema cuja base é 8, passando a existirem, portanto, somente os algarismos: 0, 1, 2, 3, 4, 5, 6, 7 É um sistema pouco utilizado pela Eletrônica Digital, tratando-se apenas de um sistema intermediário entre o binário e o hexadecimal. A equação da lei de formação para números octais inteiros e positivos: X= ∑ (x × 8 ), onde k é o número de dígitos utilizados para 0 i i = k −1 (A1) i representar X e xi representa o valor do dígito na posição i. A.1 Conversão de Números Octais para Números Decimais Para converter números octais para números decimais basta utilizar a equação A1, a qual calcula a representatividade de cada dígito resultando no valor decimal representado no sistema octal. Por exemplo, peguemos o número 1448. Aplicando a equação teremos: 1448 = 1× 82 + 4 × 81 + 4 × 80 = 1× 64 + 4 × 8 + 4 ×1 = 64 + 32 + 4 = 100 Portanto, o número octal 1448 representa o valor decimal 100. Exercício: Converta os seguintes números octais em números decimais: a) b) c) d) 218 778 1008 4768 A.2 Conversão de Números Decimais para Números Octais Para converter números decimais em números octais utiliza-se o processo divisões sucessivas, de modo semelhante ao aplicado na conversão de números decimais para binários, mas dividindo-se o valor decimal por 8. Por exemplo, convertendo o número 92 para o sistema octal temos: 92 8 88 11 11 8 4 8 1 Æ último quociente 3 = 1348 último quoc. portanto: 1 2º resto 3 1º resto 48 2 Exercício: Converta os seguintes números decimais em números octais: e) f) g) h) 16 74 512 719 A.3 Conversão de Números Octais para Números Binários Como o Sistema Octal tem sua base igual a uma potência de 2 (pois 8 = 23), então a conversão entre os sistemas Octal e Binário é fácil e direta. Para a conversão octal Æ binário, basta converter cada algarismo individualmente para o binário, utilizando sempre 3 bits, e juntar os resultados na ordem dos algarismos. Por exemplo, para converter o número 278 para binário convertemos o número 2 e o número 7 separadamente: 2 = 010 7 = 111 Agora basta juntar os bits: 278 = 101112. Perceba que o zero à esquerda não produz nenhuma alteração no resultado e por isso é ignorado. Exercício: Converter os seguintes números octais para números binários: a) b) c) d) 108 348 5368 4467516 A.4 Conversão de Números Binários para Números Octais Basta realizar o processo inverso da conversão octal Æ decimal. Portanto, separa-se os bits do número binário em grupos de 3 em 3, a partir da direita. Se faltarem bits no último grupo da esquerda, completar com zeros. Depois é só converter os bits para valores octais e juntar os algarismos octais na ordem. Por exemplo, usemos o número 1100102. Separando em grupos de 3 bits: 110 010 1102 = 68 e 0102 = 28 Juntado os algarismos, temos que 1100102 = 628. Para outro exemplo, peguemos o número 10102. Ao separarmos em grupos de 3 bits, temos: 1 010. Neste caso, completamos com zeros o primeiro grupo da esquerda para obtermos: 001 010. Convertendo: 0012 = 18 e 0102 = 28. Juntando os algarismos: 10102 = 128. 3 Exercício: Converta os seguintes números binários em números octais: i) j) k) l) 10002 101112 110101012 10001100112 B. SISTEMA HEXADECIMAL: Sistema cuja base é 16, passando a existirem os seguintes algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F , onde A16 = 10, B16 = 11, C16 = 12, D16 = 13, E16 = 14 e F16 = 15. É um sistema é muito utilizado na área de Microprocessadores e também no mapeamente de memórias em sistemas digitais, tratando-se de um sistema numérico muito importante, sendo aplicado em projetos de software e hardware. A lei de formação para números hexadecimais é dada pela equação: X= ∑ (x ×16 ) , onde k é o número de dígitos utilizados para 0 i i = k −1 i (B1) representar X e xi representa o valor do dígito na posição i. B.1 Conversão de Números Hexadecimais para Números Decimais Para converter números hexadecimais para números decimais basta utilizar a equação B1, a qual calcula a representatividade de cada dígito resultando no valor decimal representado do sistema hexadecimal. Por exemplo, peguemos o número 3F16. Sabemos que F16 = 15. Aplicando a equação teremos: 3F16 = 3 ×161 + 15 ×160 = 48 + 15 = 63 Portanto, o número hexadecimal 3F16 representa o valor decimal 63. Exercício: Converta os seguintes números hexadecimais em números decimais: m) n) o) p) FA16 1C316 23816 1FC916 B.2 Conversão de Números Decimais para Números Hexadecimais Para converter números decimais em números hexadecimais utiliza-se o processo divisões sucessivas dividindo-se o valor decimal por 16. Por exemplo, convertendo o número 1000 para o sistema hexadecimal temos: 4 1000 16 992 62 8 62 16 48 3 Æ último quociente 14 Como 14 = E16, então tempos 3E816 último quoc. 3 2º resto 14 = E16 1º resto 8 Exercício: Converta os seguintes números decimais em números hexadecimais: q) r) s) t) 20 134 384 3882 B.3 Conversão de Números Hexadecimais para Números Binários Assim como o Sistema Octal, o Sistema Hexadecimal tem sua base igual a uma potência de 2 (pois 16 = 24), então a conversão entre os sistemas Hexadecimal e Binário ocorre como nas conversões entre os sistemas Octal e Binário, com a diferença que devem ser utilizados sempre 4 bits. Por exemplo, para converter o número C1316: C16 = 12 = 11002 116 = 00012 316 = 00112 Agora basta juntar os bits: C1316 = 1100000100112. Exercício: Converter os seguintes números hexadecimais para números binários: e) f) g) h) F16 1016 1ED16 6CF916 B.4 Conversão de Números Binários para Números Hexadecimais Basta realizar o processo inverso. Portanto, separa-se os bits do número binário em grupos de 4 em 4, a partir da direita. Se faltarem bits no último grupo da esquerda, completar com zeros. Depois é só converter os bits para valores hexadecimais e juntar os algarismos na ordem. Por exemplo, usemos o número 100110002. Separando em grupos de 4 bits: 1001 1000 10012 = 916 e 10002 = 816 Juntado os algarismos, temos que 100110002 = 9816. Para outro exemplo, peguemos o número 111102. Ao separarmos em grupos de 4 bits, temos: 1 1110. Neste caso, completamos com zeros o primeiro grupo da esquerda para obtermos: 0001 1110. Convertendo: 00012 = 116 e 11102 = 14 = E16. Juntando os algarismos: 111102 = 1E16. 5 Exercício: Converta os seguintes números binários em números hexadecimais: u) v) w) x) 10002 1001102 100011112 10110110012