Ir para o conteúdo

Conversor de bases numéricas

Converta um número entre binário, octal, decimal, hexadecimal e qualquer base de 2 a 36, sem limite de tamanho e com complemento de dois. Roda no navegador.

  • Grátis
  • Sem cadastro
  • Nenhum arquivo enviado
  • Windows, Mac, Android, iPhone

Carregando a ferramenta…

Sobre esta ferramenta

Digite um número em qualquer base: o valor aparece na hora em binário, octal, decimal, hexadecimal e na base que você escolher. Números muito grandes são calculados com exatidão, sem arredondamento, e os negativos também aparecem em complemento de dois em 8, 16, 32 e 64 bits.

Quando usar

Ler um valor hexadecimal

Um código de cor, um endereço de memória, um código de erro do Windows ou um byte de um dump: converta para decimal para saber o valor, ou para binário para ver quais bits estão ativos.

Montar máscaras de bits

Para permissões Unix, flags de API ou registradores de microcontrolador, escreva o valor em binário, agrupado de quatro em quatro, e obtenha a forma hexadecimal pronta para colar no código com o prefixo 0x.

Estudar computação

Exercícios de mudança de base e complemento de dois são clássicos das aulas de arquitetura de computadores. A ferramenta dá o resultado na hora para conferir um cálculo feito à mão.

Como usar

  1. Digite um número no campo da base dele.
  2. Leia o valor nas outras bases.
  3. Copie o resultado, com ou sem prefixo.

Como funciona

Cada dígito vale de 0 a 35 (0 a 9 e depois a a z). O número é lido dígito a dígito e acumulado com inteiros BigInt do JavaScript, sem limite de tamanho: um número de 200 dígitos é convertido com exatidão, enquanto a ponto flutuante perderia precisão acima de 2^53.

Para exibir, o valor é reescrito em cada base; a opção de agrupamento separa os dígitos de quatro em quatro em binário e hexadecimal, de três em três em decimal. O complemento de dois mostra como um número negativo é guardado na memória numa largura dada, o que explica, por exemplo, por que -1 é 0xFF num byte.

Dicas para um melhor resultado

  • Em hexadecimal, cada dígito corresponde a exatamente 4 bits: 0xF0 = 1111 0000. Por isso o hex é usado para ler binário.
  • Cole um valor direto do seu código com o prefixo (0x1F, 0b1010, 0o755): ele é reconhecido no campo correspondente.
  • Permissões Unix são escritas em octal: 755 = rwxr-xr-x. Digite no campo octal para ver os bits.
  • Para um número negativo, veja o complemento de dois da largura que sua linguagem usa (32 bits para um int em C ou Java).
  • As bases 32 e 36 servem para encurtar identificadores numéricos em endereços web.

Problemas comuns e soluções

“Dígito inválido”

Um dígito é grande demais para a base: o 2 não existe em binário, o 8 e o 9 não existem em octal. Confira se está digitando no campo certo.

O resultado difere da minha calculadora

Muitas calculadoras arredondam acima de 15 a 17 dígitos. Aqui os inteiros são calculados com exatidão: quem erra é a calculadora.

Quero converter um número com casas decimais

A ferramenta converte inteiros. Para a representação de um número de ponto flutuante (IEEE 754), é preciso uma ferramenta específica.

Perguntas frequentes

Existe limite de tamanho?

Não: os cálculos usam BigInt do JavaScript. Só a memória do seu aparelho limita o tamanho do número.

O que é complemento de dois?

É como os computadores guardam inteiros negativos: invertem-se os bits do valor absoluto e soma-se 1. Em 8 bits, -1 é 11111111.

As letras precisam ser maiúsculas?

Não, 0xff e 0xFF são aceitos. O resultado hexadecimal aparece em minúsculas, como na maioria das linguagens.

Quais bases são suportadas?

Todas as bases de 2 a 36: acima disso, não há dígitos e letras suficientes para escrever os valores.

Pesquisas relacionadas

Ainda com problema?

Pergunte no fórum: a categoria, a ferramenta, a ficha do seu dispositivo e o resultado do teste são preenchidos para você.