Conversão entre bases
Posted on seg 17 agosto 2026 in sistemas digitais • 3 min read
Fórmula geral de conversão de bases
A conversão entre números representados em bases diferentes, desde que ambos adotem um sistema de numeração posicional, segue a fórmula geral de conversão de bases. A maioria dos autores apresenta-a como:
A fórmula expressa \(i\) dígitos \(\alpha_i\) em uma base \(\beta\), representando a quantidade \(v\). O índice \(i\) vai de \(m\) a \(n\), passando pelo \(0\). Quando \(m=0\), o número é inteiro, e quando \(m<0\), o número é fracionário e em português usamos o ponto \(.\) para dividir entre a parte inteira e a fracionária. Não é correto \(m>0\) pois isto implica que todos os dígitos \(i<m\) representam a quantidade zero, o que viola o sistema de representação posicional (este dígito deve existir e representar a quantidade zero, i.e. 0). A expansão desta fórmula gera:
Para o sistema decimal inteiro sem sinal, a fórmula é bem simples de usar. Exemplo: considere o valor \(A22_{11}\). Qual valor ele representa em decimal?
Note que os valores foram convertidos da base original (11) para a base decimal (10). Os valores expressos na fórmula devem ser os valores na base alvo (10). Para conversões para outras bases, devemos usar o valor na base que queremos, não a decimal, e realizar todos os cálculos na base alvo. Exemplo: considere o valor \(A22_{11}\). Qual valor ele representa em hexadecimal?
Veja que todos os valores e cálculos foram realizados na base alvo (16), incluindo o valor da base original (11) que foi expresso em hexadecimal (B).
Vamos ver a conversão contrária, da base 16 para a base 11, para certificar-nos:
Veja que toda a fórmula foi expressa na base 11. O valor de 16 (a base hexadecimal) na base 11 é \(15_{11}\). A operação \(15_{11}^2=213_{11}\) foi realizada na base 11, assim como as multiplicações e as somas.
Conversão por divisão sucessiva
Um método muito comum que ensinamos para converter de decimal para outras bases usa a fórmula geral de expansão de bases ao contrário, fazendo divisões sucessivas para chegarmos ao número desejado. Lembre-se que todos os cálculos devem ser realizados na base alvo!
Por exemplo, considere o número \(1234_{10}\). Vamos converter para hexadecimal. Como a base alvo é decimal (estamos usando a fórmula ao contrário), todos os cálculos são feitos em decimal.
Genericamente, a divisão inteira dos dois lados da fórmula pela base \(\beta\) sempre produz \(\alpha_0\) como resto e o valor da divisão inteira corresponde ao restante da fórmula.
No exemplo, a primeira divisão pela base (\(16_{10}\)), divide toda a fórmula por \(16_{10}\), ou seja, o resultado da divisão inteira de \(1234_{10}\) por \(16_{10}\) é \(\alpha_{2}\times16^{2}+\alpha_{1}\) e o resto é o \(\alpha_{0}\):
Como sabemos que \(1234/16=77\) e o resto é \(2\), podemos continuar assumindo que \(\alpha_{0}=2\):
E repetimos o mesmo processo para obter \(\alpha_{1}\) e \(\alpha_{2}\):
Dado que \(77/16\) resulta em \(4\) e o resto é \(13\), podemos assumir que \(\alpha_{1}=13\):
Dessa forma, \(1234_{10}=4D2_{16}\) (lembre-se que \(13_{10}=D_{16}\)). Na figura abaixo podemos ver a mesma operação, mas realizada usando a forma gráfica.
