Conversor quaternário (base 4)
27 se escreve 123 na base 4: cada dígito quaternário, de 0 a 3, guarda exatamente dois bits, por isso a base 4 combina com as quatro letras do DNA e com códigos de dois bits. Converta inteiros de decimal para quaternário e de volta. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Valor
- 27
- Direção
- To quaternary
- Resultado
- 123
- Decimal
- 27
- Quaternário
- 123
- Alfabeto
- 0123
Um conversor quaternário reescreve um número inteiro não negativo entre a base 10 do dia a dia e a base 4, o sistema posicional de quatro dígitos cujo alfabeto é simplesmente zero, um, dois e três. Cada dígito em base 4 empacota exatamente dois bits, o que torna o quaternário uma ponte natural para alfabetos de quatro letras no estilo do DNA, canais de pixel de dois bits e máquinas de estados compactas que precisam de apenas quatro símbolos. Você escolhe a direção —decimal para quaternário ou quaternário de volta ao decimal—, cola o valor e recebe um resultado determinístico com o inteiro decimal limpo, a cadeia de dígitos em base 4, a contagem de dígitos e o alfabeto fixo. Qualquer caractere fora de zero a três falha com um erro de entrada inválida claro em vez de uma resposta silenciosamente errada.
Como funcionam a codificação e a decodificação quaternárias (base 4)
O quaternário é notação posicional com base quatro. Cada posição é uma potência de quatro, assim como as posições decimais são potências de dez: a das unidades é quatro elevado a zero, a seguinte é quatro, depois dezesseis, depois sessenta e quatro, duzentos e cinquenta e seis, e assim por diante. Os quatro símbolos de dígito são zero, um, dois e três — nada mais.
Esse alfabeto minúsculo é exatamente o que você precisa quando um valor vive em dois bits: o binário 00 mapeia para 0, 01 para 1, 10 para 2 e 11 para 3, de modo que uma longa cadeia de bits pode ser reagrupada em dígitos quaternários sem truques de preenchimento além de um zero inicial opcional em uma corrida de bits de comprimento ímpar.
Para codificar um inteiro decimal não negativo, divida repetidamente por quatro e registre cada resto como o próximo dígito menos significativo; inverta esses restos para obter a cadeia habitual da esquerda para a direita, sem zeros à esquerda exceto para o próprio zero. Para decodificar, percorra a cadeia da esquerda para a direita, multiplique o acumulado por quatro e some o próximo dígito — o esquema clássico de Horner.
Um prefixo opcional 0q ou 0Q é removido do mesmo modo que ferramentas binárias aceitam 0b, para que scripts marquem literais em base 4 com clareza. Um caractere inválido como espaço, sinal de mais, dígito quatro ou superior, letra ou pontuação aborta com entrada inválida nomeando o caractere errado e sua posição. Os valores devem permanecer dentro da faixa de inteiros seguros do JavaScript para que cada dígito continue exato ao serializar o resultado.
Entradas negativas são rejeitadas de propósito; o alfabeto quaternário não tem dígito de sinal, e a base 4 com sinal é outra convenção. Se você precisa de bases arbitrárias de dois a trinta e seis, essa é outra intenção de busca coberta por um conversor de radices geral, não por esta página específica de base 4.
Onde conversores quaternários aparecem no trabalho real
Tutoriais de bioinformática e cursos de teoria da codificação apresentam a base quatro porque os quatro nucleotídeos do DNA mapeiam com limpeza para códigos de dois bits e, portanto, para dígitos quaternários: um mapa didático comum é A igual a zero, C igual a um, G igual a dois e T igual a três, de modo que um oligo curto vira uma cadeia compacta em base 4 que alunos podem converter para decimal em demos de hashing ou chaves de quebra-cabeças.
Gráficos por computador e firmware embarcado às vezes empacotam dados de dois bits por canal —índices de paleta, flags de dither ou máquinas de estados com quatro modos— e engenheiros precisam de um oráculo determinístico que transforme essas cadeias de dígitos em inteiros para testes sem reescrever divmod em cada linguagem. Engenheiros de software que escrevem testes unitários para componentes de exibição multi-base geram cadeias base 4 esperadas e afirmam igualdade ida e volta de decimal para quaternário e vice-versa.
Designers de jogos inventam runas de quatro estados, inventários ou sistemas de numeração alienígenas e precisam de conversão determinística para ferramentas de lore e formatos de save. Trate tabelas gerais multi-base que vão até trinta e seis, dumps binários ou hexadecimais puros e codificação de bytes Base64 como intenções de busca distintas com suas próprias páginas, em vez de esticar este conversor inteiro quaternário além do seu escopo honesto.
Casos de uso
Mapas didáticos de dois bits no estilo do DNA
Mapeie exercícios A/C/G/T para os dígitos 0–3, converta a cadeia base 4 para decimal em demos de hash e confira as chaves dos alunos com um oráculo compartilhado.
Exercícios de valor posicional em base 4 na sala de aula
Converta inteiros de lição de casa entre base 10 e base 4 para que fichas e autoavaliadores concordem em cada resto e passo de Horner.
Perguntas frequentes
Que alfabeto este conversor quaternário usa?
Apenas os quatro caracteres 0, 1, 2 e 3. Não há dígitos letra. Um prefixo opcional 0q ou 0Q é aceito na entrada e removido antes da conversão.
O que acontece com um dígito quaternário inválido?
A mensagem nomeia o caractere errado e sua posição. Só os dígitos 0–3 são permitidos após um prefixo 0q opcional; espaços, pontuação, letras e dígitos 4–9 são rejeitados.
Isto é o mesmo que um conversor de radices geral ou o binário?
Não. Ferramentas gerais de radices cobrem bases 2–36 com dígitos letra A–Z. O binário é base 2 com apenas 0 e 1. Esta página é dedicada à base 4 para a intenção de busca de estilo DNA e empacotamento de dois bits.
Quanto custa?
A ferramenta do navegador é gratuita e roda localmente.
Como passo um número decimal para base 4 à mão?
Divida por 4 repetidas vezes e anote cada resto, que é sempre 0, 1, 2 ou 3. Leia os restos do último para o primeiro: 27 dá 123, porque 27 é um 16, dois 4 e três unidades.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/enc/base-quaternary \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"27","direction":"to_quaternary"}'const res = await fetch("https://api.kit.forhosting.com/enc/base-quaternary", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "27",
"direction": "to_quaternary"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/base-quaternary",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "27",
"direction": "to_quaternary"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/base-quaternary", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"27","direction":"to_quaternary"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"27","direction":"to_quaternary"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/base-quaternary", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"value": "27",
"direction": "to_quaternary"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.base_quaternary",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
O preço das chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item.
Como funcionam a codificação e a decodificação quaternárias (base 4)
O algoritmo usa apenas aritmética inteira exata: sem arredondamento em ponto flutuante, sem sementes aleatórias, sem relógios de parede e sem chamadas de rede, de modo que entradas idênticas sempre produzem o mesmo JSON.
O que você envia e o que recebe de volta
Envie dois campos obrigatórios: value e direction. Valores decimais absolutos maiores que Number.MAX_SAFE_INTEGER são rejeitados para que dígitos de ordem baixa não desapareçam em silêncio. Verificações clássicas: vinte e sete codifica como um-dois-três em base quatro, dezesseis como um-zero-zero, e decodificar três-dois-um devolve cinquenta e sete. Use o formulário gratuito do navegador para checagens rápidas e depois o mesmo contrato a partir de scripts quando precisar de tabelas em massa ou goldens. Direction deve ser to_quaternary quando value é um inteiro decimal não negativo, ou from_quaternary quando value é uma cadeia em base 4. Alias são aceitos para que formulários e scripts usem os nomes que cabem na interface: value também aceita n, number, input, text, decimal, quaternary e base4; direction também aceita dir, mode e op, além de sinônimos curtos como to, from, encode, decode, to_base4, from_base4, decimal_to_quaternary e quaternary_to_decimal. Para to_quaternary, value pode ser um inteiro JSON ou uma cadeia de dígitos com um mais opcional no início; frações, notação científica, palavras soltas, NaN, Infinity e negativos falham com invalid_input e não são cobrados. Para from_quaternary, cada caractere deve ser zero, um, dois ou três após um prefixo 0q opcional; qualquer outro caractere —incluindo quatro, cinco, sublinhado, hífen e espaço— falha com uma mensagem que nomeia o dígito quaternário inválido e sua posição baseada em zero. Em caso de sucesso a resposta ecoa a cadeia value limpa, a direção normalizada, decimal como número, quaternary como a cadeia compacta em base 4, result como a forma convertida principal (quaternário ao codificar, cadeia decimal ao decodificar), a cadeia de alfabeto 0123, base igual a quatro e digit_count da representação quaternária. O preço das chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago.
Onde conversores quaternários aparecem no trabalho real
Como esta capacidade é um motor de parse puro, o preço da API é a base publicada de US$ 0,002 por item bem-sucedido e a validação falha não consome saldo.
Casos de integração
Empacotamento de pixels e estados de dois bits
Codifique índices de paleta ou flags de quatro modos como cadeias de dígitos quaternários e decodifique-as de volta a inteiros em testes unitários e fixtures de firmware.
Perguntas técnicas
Como escolher a direção?
Use to_quaternary quando value é um inteiro decimal não negativo e você quer uma cadeia em base 4. Use from_quaternary quando value já é quaternário e você quer o inteiro decimal de volta.