Conversor de Octal para Decimal
Digite um número octal usando os dígitos de 0 a 7 e este conversor retorna o seu valor decimal (base 10). Abaixo da ferramenta, a fórmula e uma análise posicional passo a passo mostram como cada dígito contribui (dígito × 8^posição). A caixa de entrada aceita apenas números octais inteiros, portanto, para um valor fracionário como 12.4 ou um valor negativo, converta os dígitos e acrescente você mesmo a vírgula ou o sinal de menos.
Como funciona a conversão de octal para decimal
-
1
Insira o valor octal
Apenas os dígitos de 0 a 7 são válidos. Um 8 ou um 9 é um octal inválido e a ferramenta irá sinalizá-lo.
-
2
Multiplique por potências de 8
O dígito mais à direita recebe 8^0, o próximo 8^1, depois 8^2, e assim por diante para a esquerda.
-
3
Some os produtos
Adicione a contribuição de cada dígito para obter o total decimal.
-
4
Verifique com o binário
Você pode conferir expandindo para binário (3 bits por dígito octal) e somando como base 2.
A fórmula
Para um número octal com dígitos dₙ dₙ₋₁ ... d₁ d₀:
decimal = dₙ · 8ⁿ + dₙ₋₁ · 8ⁿ⁻¹ + ... + d₁ · 8 + d₀
Exemplo prático: octal 345 para decimal
| Dígito | Posição | 8^posição | Contribuição |
|---|---|---|---|
| 3 | 2 | 64 | 192 |
| 4 | 1 | 8 | 32 |
| 5 | 0 | 1 | 5 |
| Total | 229 |
Então 345 em octal = 229 em decimal.
Valores octais comuns e seus decimais
| Octal | Decimal | Contexto |
|---|---|---|
| 7 | 7 | Maior octal de um dígito |
| 10 | 8 | Primeiro octal de dois dígitos |
| 77 | 63 | Maior octal de dois dígitos |
| 100 | 64 | Primeiro octal de três dígitos |
| 755 | 493 | chmod 755 (rwxr-xr-x) |
| 777 | 511 | Permissões totais para todos |
| 1000 | 512 | Primeiro octal de quatro dígitos |
Onde a conversão de octal para decimal realmente importa
- Lendo chmod.
chmod 755significa decimal 493, mas interpretá-lo como três tripletas rwx é mais útil do que o valor decimal em si. - Decodificando literais em C.
0755em código C é 493, não 755. Literais inteiros que começam com 0 são octais em C, C++ e no JavaScript clássico. - Dumps de mainframes antigos. O PDP-11 e sistemas antigos semelhantes imprimiam a memória em octal.
- Trabalho escolar. A conversão de base é um clássico da matemática discreta e de qualquer introdução à computação.
Dicas
- Cuidado com a armadilha do 8 e do 9. Se a sua entrada tiver um 8 ou um 9, ela não é um octal válido: ou a fonte não era octal ou entrou um erro de digitação.
- Frações e sinais são resolvidos à mão. A caixa aceita apenas os dígitos de 0 a 7. Para o octal
12.4, converta12para 10 e leia.4como 4/8 = 0,5, chegando a 10,5. Para um valor negativo, converta os dígitos e recoloque o sinal de menos. - Confira com o binário.
345em octal é011 100 101em binário. Somando esses bits como base 2 obtém-se 128 + 64 + 32 + 4 + 1 = 229, a mesma resposta.
Perguntas frequentes
Em C, C++, Python 2 e no JavaScript mais antigo, um literal inteiro que começa com 0 é interpretado como octal. 0755 é igual ao decimal 493. O JavaScript moderno (ES5 estrito), o Python 3 e o Rust exigem um prefixo explícito 0o para evitar essa armadilha.
A entrada aceita apenas os dígitos de 0 a 7, então remova o sinal, converta os dígitos e recoloque o menos: o octal -345 é o decimal -229. Para as representações em complemento de dois usadas na programação de baixo nível, a largura em bits altera a interpretação, portanto sempre a informe.
A conversão é feita em inteiros de 64 bits, então é exata até 9.223.372.036.854.775.807 (octal 777777777777777777777, 21 setes). Entradas maiores recorrem a ponto flutuante e os últimos dígitos passam a divergir. Observe que os números do JavaScript só são exatos até 2^53 - 1 (octal 377777777777777777, cerca de 9 quatrilhões), então use BigInt se você colar um resultado grande em JS.
O método de Horner: comece em 0 e, para cada dígito da esquerda para a direita, faça total = total * 8 + dígito. Isso evita calcular potências explícitas e é assim que os compiladores avaliam os literais internamente.
Ferramentas relacionadas
Gerador de cards CSS
Crie um card com seu título, texto e link opcional. Ajuste cores, borda, espaçamento, sombra e efeito ao passar o mouse. Depois copie ou baixe o HTML e o CSS.
Gerador de textura de ruído
Gere uma textura de ruído em SVG que se repete sem emendas, com opacidade, frequência do grão, tipo de ruído e cor de fundo ajustáveis, e copie o CSS já pronto.
Gerador de Docker Compose
Gere um docker-compose.yml a partir de definições de serviços com imagem, portas e volumes, com padrões de boas práticas.
Conversor de base numérica
Converta números entre binário, octal, decimal, hexadecimal e qualquer base personalizada de 2 a 36, com o detalhamento posicional.
Conversor de Tamanho de Arquivo
Converta entre bytes, KB, MB, GB, TB e as unidades binárias IEC (KiB, MiB, GiB, TiB), combinando decimal e binário como preferir.
Gerador de Imagem Markdown
Gere a sintaxe de imagem do Markdown com texto alternativo, atributo de título e link opcional. Saída inline e em estilo de referência.
Ferramenta disponível em outros idiomas
- Octaal-naar-decimaal converter [NL]
- Chuyển đổi bát phân sang thập phân [VI]
- 8진수 → 10진수 변환기 [KO]
- Oktal zu Dezimal Konverter [DE]
- Konwerter ósemkowy na dziesiętny [PL]
- オクタルから十進数への変換器 [JA]
- Convertisseur Octal en Décimal [FR]
- เครื่องแปลงเลขฐานแปดเป็นฐานสิบ [TH]
- Konverter Oktal ke Desimal [ID]
- مُحوّل من النظام الثماني إلى النظام العشري [AR]
- Oktal-till-decimal-omvandlare [SV]
- Convertidor de Octal a Decimal [ES]
- Octal to Decimal Converter [EN]
- Convertitore da ottale a decimale [IT]
- Конвертер из восьмеричной системы в десятичную [RU]
- Sekizliden Onluya Dönüştürücü [TR]
- 八进制到十进制转换器 [ZH]