Prévia do material em texto
Cálculo Numérico Computacional Sistema de Numeração Material Complementar Conversão entre os sistemas de numeração Cada um desses sistemas de numeração (decimal, binário, octal e hexadecimal) utiliza notação posicional — cada posição na qual um dígito é escrito tem um valor posicional diferente. Por exemplo, no número decimal 937 (o 9, o 3 e o 7 são referidos como valores de símbolo), dizemos que o 7 é escrito na posição das unidades, o 3 é escrito na posição das dezenas e o 9 é escrito na posição das centenas. Observe que cada uma dessas posições é uma potência da base (base 10) e que essas potências iniciam em 0 e aumentam por 1 à medida que nos movemos para a esquerda no número. A figura abaixo ilustra a representação e relação entre alguns números entre estes sistemas. Vamos as conversões: 1. Escrevendo um número binário em octal e hexadecimal Uma relação importante que tanto o sistema de numeração octal como o hexadecimal têm com o binário é que as bases octal (8 = 23)) e hexadecimal (16 = 24)) (8 e 16, respectivamente) são potências da base do sistema de numeração binário (base 2). Para converter o número binário em octal, divida o número binário em grupos de três bits consecutivos cada e escreva esses grupos sobre os dígitos correspondentes do número octal. Como 8 = 23, basta dividir o binário, da direita para esquerda em grupos de 3 bits. Para cada grupo de 3 bits, determina-se o octal equivalente. Exemplo: 110101112 011 010 111 (foi acrescentado 0 no último grupo porque zero à esquerda não conta) . Da tabela que relação os equivalentes em cada sistema de numeraççao temos: 011 = 3 ; 010 = 2 ; 111 = 7 Ou fazemos da seguinte forma, utilizando a notação posicional: 011 = 0.22 + 1.21 +1.20 = 3 010 = 0.22 + 1.21 +0.20 = 2 111 = 1.22 + 1.21 +1.20 = 7 Assim 0110101112 = 3278 Para o processo inverso, converter um octal para binário, basta converter cada algarismo, da direita para esquerda, com a fórmula da notação posicional. Exemplo: 6738 6738 = 110 111 011 Pois 6 = 110 ; 7 = 111 ; 3 011 O mesmo pode ser feito para converter o binário para hexadecimal. Divida o número binário em grupos de quatro bits consecutivos cada e escreva esses grupos sobre os dígitos correspondentes do número hexadecimal. Como 16 = 24, basta dividir o binário, da direita para esquerda, em grupos de 4 bits. Para cada grupo, acha-se o algarismo hexadecimal equivalente. Exemplo: 10110110112 0010 1101 1011 (foi acrescentado 00 no último grupo porque zero à esquerda não conta). Da tabela que relação os equivalentes em cada sistema de numeração temos: 0010 = 2 ; 1101 = D ; 1011 = Ou fazemos da seguinte forma, utilizando a notação posicional: 0010 = 0.23 + 0.22 + 1.21 + 0.20 = 2 1101 = 1.23 + 1.22 + 0.21 + 1.20 = 13 (D) 1011 = 1.23 + 0.22 + 1.21 + 1.20 = 11 (B) Assim 0010110110112 = 2DB16 Para o processo inverso, converter um hexadecimal para binário, basta converter cada algarismo, da direita para esquerda, com a fórmula da notação posicional. Exemplo:C916 C916 = 1100 1001 Pois C = 12 = 1100 ; 9 = 1001 2. Convertendo binário, octal ou hexadecimal para decimal Binário para decimal: Para converter um binário em decimal, multiplique o equivalente decimal de cada dígito por seu valor posicional e some esses produtos. Exemplo: 1101012 = 5310 Pois 1101012 = 1.25 + 1.24 + 0.23 + 1.22 + 0.21 + 1.20 = 32 + 16 + 4 + 1 = 5310 Octal para decimal Para converter um octal em decimal, usa-se a mesma técnica, mas utilizamos os valores posicionais octais apropriados. Exemplo: 76148 = 398010 Pois: 76148 = 7.83 = 6.82 + 1.81 = 4.20 = 3584 + 384 + 8 + 4 = 398010 Hexadecimal para decimal Para converter um hexadecimal em decimal, usa-se a mesma técnica, mas utilizamos os valores posicionais hexadecimais apropriados. Exemplo: AD3B16 = 4434710 Pois: AD3B16 = 10.163 + 13.162 + 3.161 + 11.160 = 40960 + 3328 + 48 + 11 = 4434710 3. Convertendo um decimal para binário, octal ou hexadecimal. Realizamos sucessivas divisões do número decimal pelo valor da base desejada. As divisões devem ser feitas enquanto o quociente for diferente de zero, até chegar no quociente zero. Quando não for mais possível fazer a divisão, acrescenta-se um zero e para. Cada resto encontrado é um algarismo da base desejada. O número na base desejada será obtido tomando-se o último quociente e todos os restos das divisões anteriores. O primeiro resto encontrado é o valor do algarismo mais à direita Exemplo: Conversão de 6 na base decimal (610) para binária (2): Conversão de 86 na base decimal (8610) para octal (8): Conversão de 847 na base decimal (84710) para hexadecimal (16):