(b) Transformando números menores que 1 da base 10 para a base 2.
Na transformação da base 10 para a base 2, divide-se o número dado por ½ = 0,5, obtendo-se b1 (primeiro dígito após a vírgula) que deverá ser 1 ou 0, e o resto r1.
Nessa divisão utilizamos o algoritmo da divisão N = b1.0,5 + r1. Divide-se r1 por ¼ = 0,25, obtendo-se b2 (segundo dígito após a vírgula) que também será igual a 1 ou 0 e o resto r2. Continua o processo, dividindo cada resto ri por 1/(2i+1) obtendo o dígito bi+1 e o resto ri+1 até que ri+1 seja igual a zero ou iniciar uma repetição de seqüência de dígitos. Veja abaixo a seqüência usada para obtenção dos dígitos aplicada ao número 0,78125. |
Como foi encontrado um resto igual a zero o processo é encerrado e o resultado é 0,110012. Vejamos a conversão de 0,1 para a base 2. |
Observe que a seqüência 0011 (2º ao 5º dígitos) se repete (6º ao 9º dígitos).
Temos aí uma dízima periódica. O número pode ser escrito na forma (0,0001100110011...)2 ou |
Conforme visto acima, a conversão de base pode levar a erros. Neste último exemplo, 0,110 é exato enquanto que sua conversão para a base 2 leva a um número fracionário com infinitos dígitos.
Dependendo da máquina usada, erros como esse pode ser propagado ao realizar operações com o mesmo.
Faça o seguinte teste em uma calculadora: primeira operação: divida 1 por 3; segunda operação: mantendo o resultado no visor multiplique o valor exibido por 3. Em algumas calculadoras o resultado será 1 e em outras 0,999999.... Entretanto, se o número de dígitos usados for a maior quantidade de dígitos da máquina, ela irá exibir o valor 0,99999..... |
Trabalhando no Excel ou StarCalc |
Veja o resultado da conversão do número 0,78125 para a base 2. |
As células indicadas servirão para referências. Você pode usar quaisquer outras células. (1) Na célula C7 digite o número a ser convertido. No caso do exemplo 0,78125. (2) Na célula D7 digite = 1/2 e pressione ENTER. (3) Na célula E7 digite = TRUNCAR(C7/D7). (4) Na célula F7 digite = SE(C8=0;"continua";"FIM"). Assim, o último dígito após a vírgula será exibido na coluna E em frente ao primeiro FIM. Se o número de linhas for insuficiente ou se o número for uma dízima ou se o número na base 2 for um número irracional, o valor FIM será exibido na última linha. Nesse caso selecione as últimas linhas e copie-as para as linhas seguintes. (5) Selecione as células C7, D7, E7, F7 e copie os conteúdos (fórmulas) para algumas células abaixo. Assim, está pronto o algoritmo para converter um número da base 10 para a base 2. No exemplo acima, teremos 0,781250 = 0,11001(2) e, como o valor FIM foi exibido, este valor é exato. Em geral, quando se pede para fazer a conversão, a precisão é fornecida. Na precisão fica definido o número de dígitos que deverá ser usado após a vírgula. Por exemplo: converter 0,666672 para a base 2 com precisão 0,000001. O resultado será 0,101010(2) (que não é exato). Teste substituindo o 0,78125 do algoritmo já construído. Você pode usar o mesmo quadro criado para converter o número 0,78125 para outras conversões. Neste caso basta substituir o 0,78125 pelo número desejado e pressionar a tecla ENTER. |
Esse blog é de caráter pessoal e destina-se aos alunos e companheiros interessados em Matemática.
Sendo a internet uma vasta rede de informações que se perde em quantidade de conteúdo, o que pretendemos é juntar todas essas informações em um local que meus alunos possam ter acesso de forma mais simples. Logo para construção desse blog o que estamos fazendo é garimpando na rede tudo que consideramos relevante e postando em um único lugar.
terça-feira, 6 de dezembro de 2011
CÁLCULO NUMÉRICO - Mudanças de bases - ERROS (5)
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário