Conversão de números fracionários entre sistemas de numeração
Esta calculadora online ajuda a converter um número fracionário de um sistema de numeração em um número fracionário de outro sistema de numeração
Depois de ter criado diversas calculadoras para conversão de sistemas de numeração (da mais simples a mais avançada: Conversão de números decimais em outras notações, Conversão de sistemas de numeração decimais, Conversão entre bases), surge a pergunta: o que devemos fazer a respeito dos números fracionários, como convertê-los? Então, decidi fazer outra calculadora, que também pode converter números fracionários entre diferentes sistemas de numeração.
Como se costume, a teoria se encontra abaixo da calculadora
Então, eu costumava pensar que a conversão de números fracionários era uma questão difícil, porém acontece que é na realidade fácil de entender. Tudo que precisamos é lembrar que estamos lidando com um sistema de numeração posicional.
Vejamos o exemplo. Observe o número decimal 6.125. Você pode escrevê-lo dessa maneira:
Fácil de acompanhar, certo? Mas acontece que é a mesma coisa para qualquer outro sistema de numeração posicional. Tenhamos, por exemplo, o infame sistema binário e o número binário fracionário 110.001. Você pode escrevê-lo assim:
Sim, eu inventei. O binário 110.001 é o decimal 6.125. Não foi fácil?
Há um porém. Já que temos frações e os denominadores são diferentes, não podemos manter sempre a mesma precisão para sistemas de numeração diferentes.
Novamente, vamos ver um exemplo. Observe o número decimal 0.8
.
Até então tudo bem... Para o sistema de numeração decimal. Mas para o sistema de numeração binário, nós teremos problemas. Observe
Podemos seguir adiante, mas mesmo agora, podemos ver que o decimal 0.8 é o binário 0.11001100... (e muitos outros dígitos). De fato, é o número periódico com período 1100, então não poderemos encontrar um número exato de dígitos binários para escrever 0.8 precisamente. Será 1100 todo o caminho pela frente.
É por isso que a conversão de números fracionários geralmente nos informa um erro de conversão. O erro depende do número de dígitos após o ponto que decidamos usar. Por exemplo, vamos converter o decimal 0.8 em binário e usar 6 dígitos após o ponto. Nós obteremos 0.110011. Porém não será o decimal 0.8, de fato, será o decimal 0.796875, a diferença sendo de 0.003125. E esse será o nosso erro durante a conversão decimal de 0.8 em binário com 6 dígitos após o ponto.
O valor do dígito mais à direita é chamado de resolução ou precisão e define o menor número não-zero possível que pode ser escrito usando o número de dígitos. No nosso exemplo, é . E o erro máximo de conversão possível nesse caso é a metade dele, ou 0.0078125. Note que o nosso erro de conversão para 0.8 não é tão ruim comparado ao erro possível máximo.
É isso.
Comentários