Conversor de bases
0x2F é 47, e ninguém guarda isso na cabeça.
Os exemplos substituem temporariamente os dados e as configurações. Você pode restaurar seu trabalho anterior.
0 caracteres
Resultado
Cole ou digite acima para ver o resultado aqui.
Seus arquivos ficam no seu dispositivo
Esta ferramenta roda inteiramente no seu navegador. O que você cola é processado no seu dispositivo e nunca é enviado a um servidor, então é seguro usar com tokens, chaves e textos não publicados.
Exemplo
Exemplo: o registrador PORTB do Arduino Uno em binário, decimal e hexadecimal
Numa aula de robótica, a professora acende os LEDs dos pinos 13, 11 e 10 do Arduino Uno escrevendo direto no registrador PORTB. Ler a entrada como: Decimal; linhas 0b00100000, 0b00101100, 0x2C e 255.
- No Uno, os pinos digitais 8 a 13 são os bits 0 a 5 do PORTB. 0b00100000 liga só o bit 5, o pino 13 do LED da placa: decimal 32, hex 20.
- 0b00101100 liga os bits 5, 3 e 2, ou seja, os pinos 13, 11 e 10: decimal 44, hex 2C. O prefixo 0b faz a linha ser lida em binário mesmo com «Decimal» escolhido.
- A linha 0x2C faz o caminho inverso e devolve o mesmo binário, 101100. 255 é 11111111, o maior valor de 8 bits.
- A resposta vem sem os zeros à esquerda (101100); no código, escreva com 8 bits, 0b00101100, para ver bit a bit qual pino está ligado.
| Linha | Pinos ligados | Binário | Decimal | Hex |
|---|---|---|---|---|
| 0b00100000 | 13 | 100000 | 32 | 20 |
| 0b00101100 | 13, 11 e 10 | 101100 | 44 | 2C |
| 0x2C | 13, 11 e 10 | 101100 | 44 | 2C |
| 255 | bits 0 a 7 | 11111111 | 255 | FF |
PORTB = 44, PORTB = 0x2C e PORTB = 0b00101100 são a mesma instrução: o conversor mostra as formas lado a lado, com o octal junto, numa só vez.
Como funciona
- Digite os números, um por linha.
- Escolha em que base lê-los — ou escreva 0x, 0b ou 0o, e isso decide.
- Todas as bases comuns voltam de uma vez, então não há o que converter duas vezes.
- Ligue os bytes se estiver lendo um valor de um despejo de memória ou de um protocolo.
Perguntas frequentes
- Preciso dizer em que base está?
- Só para um número nu. 0x2F, 0b1010 e 0o17 dizem sozinhos e são lidos assim, qualquer que seja o ajuste, porque é assim que eles chegam: copiados de um depurador, de um editor hexadecimal ou de um rastro de pilha.
- Um valor de 64 bits sobrevive?
- Sobrevive. A aritmética é feita em precisão arbitrária, então 0xFFFFFFFFFFFFFFFF volta como 18446744073709551615 e não como o número arredondado que uma ferramenta apoiada nos números comuns do JavaScript daria. Esse arredondamento é silencioso, e é aí que mora o perigo.
- Para que servem as bases estranhas?
- As bases 32 e 36 aparecem em identificadores curtos e encurtadores de URL; as bases 12 e 7 aparecem em enigmas e lição de casa. Vai até 36, que é até onde chegam os dígitos mais o alfabeto.
- Ele faz frações?
- Não, só números inteiros. Uma fração binária é outra questão, com armadilhas próprias, e fingir que 0,1 converte limpo seria a maior delas.
- Por que o binário perde os zeros à esquerda?
- Os números voltam sem zeros à esquerda, como se escreve em matemática: 0b00101100 vira 101100 e 0x20 vira 100000. Para 8 bits, complete à esquerda até oito dígitos (00101100, 00100000).
- E números negativos?
- O sinal de menos é mantido: -5 volta como -101 em binário. Isso é sinal e módulo, não complemento de dois. Para o complemento de dois de -5 em 8 bits, converta 251 (256 − 5): 11111011, hex FB.
Ferramentas relacionadas
∿ Tabela ASCII e Unicode O código de um caractere, ou o caractere de um código. ∿ Base64 De texto para Base64 e de volta, com UTF-8 correto e alfabeto seguro para URL opcional. # Gerador de hash O resumo MD5, SHA-1 ou SHA-2 de um texto, calculado no seu aparelho. ◒ Conversor de cor HEX, RGB, HSL e CMYK — mais a razão de contraste que decide a legibilidade.