SISTEMAS NUMÉRICOS 1 Genericamente qualquer sistema de numeração pode ser caracterizado por: Sistema de Base N - Possui N dígitos e o maior é (N-1) - Qualquer número maior que (N-1) pode ser expresso como potência de N multiplicado por um coeficiente apropriado. Sistema Decimal: Base N = 10 10 dígitos e o maior é 9 (N-1): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (1.995,2) 10 = 1. 10 3 + 9. 10 2 + 9. 10 1 + 5. 10 0 + 2. 10-1 antes da vírgula as potências são positivas começando de 0, depois da vírgula as potências são negativas começando de 1 Sistema Binário Base N = 2 2 dígitos e o maior é 1 (N-1) 0, 1 (1011,11) 2 = 1. 2 3 + 0. 2 2 + 1. 2 1 + 1. 2 0 + 1. 2-1 + 1. 2-2 8 + 0 + 2 + 1 + 0,5 + 0,25 = (11,75) 10 Sistema Octadecimal (Octal) Base N = 8 8 dígitos e o maior é 7 (N-1) 0, 1, 2, 3, 4, 5, 6, 7 (745,13) 8 = 7. 8 2 + 4. 8 1 + 5. 8 0 + 1. 8-1 + 3. 8-2 448 + 32 + 5 + 0,125 + 0,0468 = (485,1718) 10 Sistema Hexadecimal (Hexa) Base N = 16 16 dígitos e o maior é 15 (N-1) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F equivale ao valor 10 equivale ao valor 11 equivale ao valor 12 equivale ao valor 13 equivale ao valor 14 equivale ao valor 15 (1FA2,C3) 16 = 1. 16 3 + F. 16 2 + A. 16 1 + 2. 16 0 + C. 16-1 + 3. 16-2 4096 + 3840 + 160 + 2 + 0,75 + 0,0117 = (8098,7512) 10
2 CONVERSÃO ENTRE SISTEMAS Regra Geral: Separar a parte decimal da parte inteira e fazer a conversão de cada parte. A parte inteira é dividida tantas vezes quanto o necessário pela base até o quociente ser menor do que a base. O resultado é formado pelos restos tomados na ordem inversa. A parte fracionária é multiplicada pela base. O resultado é formado pela parte inteira das multiplicações. O resultado final é dado juntando as partes convertidas. Conversão DECIMAL BINÁRIO Converter (30,72) 10 para o binário correspondente Parte Inteira: 30 2 0 15 2 1 7 2 1 3 2 1 1 Parar as divisões quando encontrar um valor menor do que a base Resultado lido de baixo para cima: (30) 10 = (11110) 2 Parte Fracionária: Resultado obtido pela parte inteira (de cima para baixo) 0,72 x 2 = 1, 44 (para continuar temos que retirar a parte inteira) 0,44 x 2 = 0, 88 0,88 x 2 = 1, 76 0,76 x 2 = 1, 52 (assim por diante até obter o número de casas desejadas) Resultado parte fracionária: (0,72) 10 = (0,1011) 2 Resultado Final: (30,72) 10 = (11110,1011) 2
3 Conversão DECIMAL OCTADECIMAL Converter (310,72) 10 para o sistema octal Parte Inteira: 310 8 6 38 8 6 4 Parar as divisões quando encontrar um valor menor do que a base Resultado lido de baixo para cima: (310) 10 = (466) 8 Parte Fracionária: Resultado obtido pela parte inteira (de cima para baixo) 0,72 x 8 = 5, 76 (para continuar temos que retirar a parte inteira) 0,76 x 8 = 6, 08 0,08 x 8 = 0, 64 (assim por diante até obter o número de casas desejadas) Resultado parte fracionária: (0,72) 10 = (0,560) 8 Resultado Final: (310,72) 10 = (466,56) 8 Conversão DECIMAL HEXADECIMAL Converter (310,72) 10 para o sistema hexa Parte Inteira: 310 16 6 19 16 3 1 Parar as divisões quando encontrar um valor menor do que a base Resultado lido de baixo para cima: (310) 10 = (136) 16
Parte Fracionária: 4 Resultado obtido pela parte inteira (de cima para baixo) 0,72 x 16 = 11, 52 (para continuar temos que retirar a parte inteira) 0,52 x 16 = 8, 32 0,32 x 16 = 5, 12 (assim por diante até obter o número de casas desejadas) Resultado parte fracionária: (0,72) 10 = (0,B85) 16 Resultado Final: (310,72) 10 = (136,B85) 8 Conversão BINÁRIO-HEXA e BINÁRIO-OCTAL Com três dígitos binários podemos ter 8 números distintos: 000 0 001 1 010 2 011 3 100 4 101 5 110 6 111 7 ou seja, 2 3 combinações. Com 4 dígitos binários podemos ter 2 4 combinações, ou 16 números distintos (de 0 até 15). Portanto: - Tendo um número binário, para converte-lo em número octal, devemos agrupar os dígitos binários a partir da vírgula em grupos de 3 e converter cada grupo. - Para converte-lo em número hexa, devemos agrupar os dígitos binários a partir da vírgula em grupos de 4 e converter cada grupo Exemplo: Octal: 2 3 7 4 6 4 5 2 Binário 1 0 0 1 1 1 1 1 1 0 0 1 1 0 1 0 0 1 0 1 0 1 0 Hexa: 4 F C D 2 A Para facilitar a conversão binário decimal, podemos colocar os pesos em cima de cada dígito começando antes da vírgula com 2 0 = 1 e dobrando para os dígitos sub-sequentes. O resultado é dado pela soma dos pesos onde o dígito binário for 1. Exemplo:
5 Converter o número binário em decimal: 101001 Colocamos em cima do número os pesos correspondentes: Pesos: 32 16 8 4 2 1 Número 1 0 1 0 0 1 Agora soma-se os pesos onde o número binário for 1 No exemplo: 32 + 8 +1 = 41 Portanto: (101001) 2 = (41) 10 Exercícios: 1) Converter de decimal para binário: a) 475,32 Resp.: 111011011,01 b) 256 Resp.: 100000000 c) 34,58 Resp.: 100010,10 2) Converter de decimal para hexadecimal: a) 5213,456 Resp.: 145D,71C b) 475,32 Resp.: 1DB,1E c) 8769,75 Resp.: 2241,C 3) Converter de Binário para decimal: a) 10111100 Resp.: 188 b) 11111111 Resp.: 255 c) 10011,1011 Resp.: 19,6875 4) Converter para o sistema decimal: a) (54,72) 8 Resp.: 44,90625 b) (FA2,34) 16 Resp.: 4002,2031 c) (645,21) 8 Resp.: 421,2656 d) (645,21) 16 Resp.: 1605,129 5) Converter os valores decimais abaixo para uma base = 7 (0, 1, 2, 3, 4, 5, 6) a) 389,54 Resp.: 1064,35 b) 543 Resp.: 1404 6) Converter da base 7 para a base decimal a) 361,3 Resp.: 190,428 b) 2154,32 Resp.: 774,4688
6 7) Converter o dígito binário abaixo para os sistemas octadecimal e hexadecimal. a) Octal: Binário: 1 1 0 0 1 0 1 1 0 1 0 1, 0 0 1 1 0 Hexa: b) Octal: Binário: 0 1 1 1 0 0 0 1 1, 1 1 0 1 1 0 1 Hexa: 8) Converta para o sistema binário: a) (675,32) 8 b) (D4E12,F92) 16 c) (1465,67) 8 d) (1495,67) 16 e) (8FFEA,21) 16 f) (707,707) 8 9) Verifique se as afirmações abaixo são falsas ou verdadeiras: a) O número 1753,76 pode ser um número pertencente ao sistema decimal, ou ao sistema octadecimal, e também ao sistema hexadecimal. b) O número 5438 pode ser um número do sistema octadecimal. c) Um sistema de base N=9 possui os números: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Material de Consulta: Malvino - vol.1 cap.4 Idoeta - cap.01
CÓDIGOS NUMÉRICOS 7 São conjuntos de bits (ou palavras) usados para representar dados ou informações em geral, além de representar os números. Através dos códigos, os computadores podem decodificar as informações do mundo exterior. Código Binário Ponderado: - BCD (ou BCD8421) [Binário Codificado em Decimal] Neste código cada dígito decimal é convertido dentro de um nibble (ou seja, 4 dígitos binários) e vice-versa. Exemplo: a) 150,76 0001 0101 0000, 0111 0110 b) 1001 0011, 0011 9 3, 3 Neste código as conversões são facilmente realizadas, mas a desvantagem é que o mesmo utiliza mais dígito do que o sistema binário, por exemplo: (11)10 binário 1011 BCD 0001 0001 Código Binário Não-Ponderado: -Código Gray (ou refletido) Neste código a representação de cada número difere do número precedente por um único bit (dígito). Por exemplo, passar do número 7 para o número 8, no código Gray seria passar de 0100 para 1100; apenas o bit mais significativo estaria mudando. Construção do Código Gray Partindo de: 0 para representar o decimal 0 e 1 para representar o decimal 1 decimal 0 0 decimal 1 1 1 0 Vamos refletir esses números (por isso é também chamado de código refletido). Antes da linha de reflexão vamos preencher com 0s à esquerda, depois da linha vamos preencher com 1s. Assim obtemos os números de 0 a 3 no código Gray:
8 decimal 0 00 decimal 1 01 decimal 2 11 decimal 3 10 Podemos repetir o processo para obter os outros valores do código Gray: decimal 0 000 decimal 1 001 decimal 2 011 decimal 3 010 decimal 4 110 decimal 5 111 decimal 6 101 decimal 7 100 E assim sucessivamente. Observe que de um número para outro somente um dígito altera o valor. Código ASCII (American Standard Code for Information Interchange) - Codifica informações alfa-numéricas (padrão para computadores). - Utiliza 7 bits + 1 bit de paridade Paridade: usado para verificar se não houve perda de informação. Pode ser: P = 0 paridade par (quando temos um número par de 1s ) P = 1 paridade impar (quando temos um número impar de 1s ) Bit de Paridade X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0 Bits de informação A palavra do exemplo acima possui ao todo 8 bits ou 1 byte Exemplo: Supondo que temos a seguinte palavra para transmitir. 001 1100 (a informação tem 3 1s, paridade impar). Se for para transmitir em paridade par, teremos: 1001 1100 (número par de 1s, paridade par) Se for para transmitir em paridade impar, teremos: 0001 1100 (número impar de 1s, paridade impar)
9 A tabela abaixo mostra o código ASCII. Pela tabela: A letra A 100 0001 (65) 10 O sinal = 011 1101 (61) 10 Material de Consulta: Malvino - vol.1 cap.4 Idoeta - cap.05 Exercícios: 1) Nos computadores 1 bit é a menor unidade de informação, podendo o mesmo ser 0 ou 1. Os múltiplos do bit são: nibble conjunto de 4 bits byte conjunto de 8 bits 1 kilo-byte (Kbyte) equivale a 1024 bytes 1 Mega-byte (Mbyte) equivale a 1024 Kbytes 1 Giga-byte (Gbyte) equivale a 1024 Mbytes Quantos bytes possui um computador de 128 K de memória? 2) Dê o código ASCII para cada um destes símbolos: a) 7 b) W c) f d)y
10 3) Um computador envia a palavra HELLO para outro computador utilizando o código ASCII com paridade ímpar. Supondo que o endereço inicial da memória seja 2000, a palavra é armazenada como: Endereço Informação código ASCII+paridade código em hexadecimal 2000 H 1100 1000 C8 2001 E 0100 1001 45 2002 L 0100 1100 4C 2003 L 0100 1100 4C 2004 0 0100 1111 4F Os bits mais significativos representam o bit de paridade, para obter a paridade ímpar devemos contar quantos dígitos "1" a palavra possui. Se o número de 1s for par (como no caso da letra H) o bit de paridade será 1, se for ímpar (demais casos) o bit de paridade será 0. Como seria armazenada a palavra GOODBYE? Utilize o mesmo endereço de memória (2000).