Representação de dados e sistemas de numeração MAT115 Introdução ao Processamento de Dados Professor: Ibirisol Fontes Ferreira <ibirisol@dcc.ufba.br> DCC: Departamento de Ciência da Computação
Todo o material aqui disponível pode, posteriormente, ser utilizado sobre os termos da: Creative Commons License: Atribuição - Uso não comercial - Permanência da Licença http://creativecommons.org/licenses/by-nc-sa/3.0/
O que será abordado? Códigos digitais e alfanuméricos Detecção e correção de erros
Números hexadecimais Um sistema de numeração composto por dezesseis caracteres Utilizado muitas vezes como uma forma alternativa de representar números binários Ainda mais, quando os números binários ficam muita grandes Os números hexadecimais são usados tanto no nível das aplicações como no nível de microprocessadores
Números hexadecimais Decimal Binário Hexadecimal 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F
Números hexadecimais Para representar números hexadecimais acima de F (15) basta acrescentar uma nova coluna com o respectivo valor F (15), 10 (16), 11 (17), 12 (18), 13 (19), 14 (20), 15 (21), 16 (22), 17 (23) 18 (24), 19 (25), 1A (26), 1B (27), 1C(28), 1D (29), 1E (30) 1F (31), 20 (32) Para cada quantidade de dígitos o valor máximo que pode ser representado é a combinação de Fs
Números hexadecimais Para converter números binários para sua representação em hexadecimal é bem simples Basta separar uma cadeia binária em grupos de 4 bits Começando do bit menos significativo Trocar os 4 bits pela representação em hexadecimal
Números hexadecimais Como converter o número binário 1100101001010111 para hexadecimal?
Números hexadecimais Como converter o número binário 1100101001010111 para hexadecimal? 1100101001010111 1100 1010 0101 0111 C A 5 7
Números hexadecimais Como converter o número binário d4ae52 para hexadecimal?
Números hexadecimais Como converter o número binário d4ae52 para hexadecimal? D4AE52 D 4 A E 5 2 1101 0100 1010 1000 0101 0010
Números octais O sistema número octal também é utilizado para representar números binários Porém, é menos usado que o hexadecimal Sua representação possuí oito dígitos 0, 1, 2, 3, 4, 5, 6, 7 A contagem acima do digito 7 é feita acrescentando uma nova coluna 10, 11, 12, 13, 14, 15, 16, 17, 20, 21...
Números octais A conversão entre o sistema de numeração octal para e decimal é feita multiplicando cada dígito pelo seu peso e somando os produtos Como proceder com a conversão do número octal 3647 para decimal?
Números octais 3647 3 * 8^3 6 * 8^2 4 * 8^1 7 * 8^0 1536 384 32 7 1959
Números octais A conversão de decimal para octal é bem simples também Basta dividir sucessivas vezes o valor decimal por 8
Números octais 217 / 8 = 27 1 27 / 8 = 3 3 3 3 1 3 / 8 = 0 3
Números octais Podemos representar um número octal em binário usando apenas 3 bits Nesse caso, a conversão para binário pode ser feita valorando as colunas necessárias para alcançar o valor octal
Números octais 5163 5 1 6 3 101 001 110 011
Números octais A conversão de binário para octal segue o esquema inverso, primeiro agrupamos os bits da cadeia três a três Depois convertemos da direta para esquerda cada agrupamento
Números octais 101001110011 101 001 110 011 5 1 6 3
Outras representações Temos uma outra forma de representar números decimais, chamada comumente de binary coded decimal (BCD) Nesse formato usamos apenas dez grupos de códigos No BCD podemos converter mais facilmente um número decimal em um binário Geralmente encontramos o sistema BCD em teclados e leitores digitais
Outras representações 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Checagem de erro Em vários sistemas digitais o mecanismo de detecção de erro é a utilização de um bit de paridade Nesse caso, usa-se um bit para tornar a soma de bit ou ímpar ou par Geralmente fica a cargo do projetista escolher uma das duas formas No momento de checar o erro, basta que a cadeia de bit seja somada e então seja visto se o valor está em conformidade com o bit de paridade
Checagem de erro Por exemplo, se tivermos a cadeia de bits 00010010011 com paridade par?
Alfanuméricos Para a comunicação humana nos usamos letras, símbolos, etc... Nesse sentido temos algumas codificações de informação no sistema que os computadores utilizam, um deles é o ASCII
Alfanuméricos Bin Oct Dec Hex Sinal 0110 0000 140 96 60 ` 0110 0001 141 97 61 a 0110 0010 142 98 62 b 0110 0011 143 99 63 c 0110 0100 144 100 64 d 0110 0101 145 101 65 e 0110 0110 146 102 66 f 0110 0111 147 103 67 g
Alfanuméricos 0110 1000 150 104 68 h 0110 1001 151 105 69 i 0110 1010 152 106 6A j 0110 1011 153 107 6B k 0110 1100 154 108 6C l 0110 1101 155 109 6D m 0110 1110 156 110 6E n 0110 1111 157 111 6F o 0111 0000 160 112 70 p 0111 0001 161 113 71 q 0111 0010 162 114 72 r
Alfanuméricos 0111 0011 163 115 73 s 0111 0100 164 116 74 t 0111 0101 165 117 75 u 0111 0110 166 118 76 v 0111 0111 167 119 77 w 0111 1000 170 120 78 x 0111 1001 171 121 79 y 0111 1010 172 122 7A z 0111 1011 173 123 7B { 0111 1100 174 124 7C 0111 1101 175 125 7D } 0111 1110 176 126 7E ~
...?
Referências Sistemas Digitais: Fundamentos e Aplicações. Floyd, Thomas L.. Bookman, 2007, 9 edição. PowerPoints for Digital Fundamentals, 10th edition, Acessado: Set/2014 IDOETA, Ivan Valeije; CAPUANO, Francisco Gabriel. Elementos de eletrônica digital. Livros Erica, 1982.