Testar bit em uma posição
42 é 101010 em binário, então o bit da posição 3, que vale 8, está ligado: digite um inteiro e uma posição contada a partir de 0 pela direita e receba um sim ou não e o valor desse bit. 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
- 42
- Posição
- 3
- Valor do bit
- 8
Esta calculadora verifica um ponto específico da representação binária de um inteiro não negativo. Informe o inteiro e uma posição de base zero, contando a partir do bit menos significativo na posição 0. O resultado mostra com verdadeiro ou falso se o bit está ativado e também retorna seu valor isolado: a potência de dois correspondente quando ativado, ou zero quando desativado. Isso ajuda a interpretar sinalizadores, máscaras, permissões, campos compactados e valores de protocolos sem converter manualmente o número inteiro para binário.
Escolha o inteiro e conte da direita
Comece com o inteiro não negativo que deseja examinar e identifique a posição relevante. A contagem começa em zero: o bit mais à direita, ou menos significativo, fica na posição 0; depois vêm 1, 2 e assim por diante. Cada posição representa uma potência de dois: 0 vale 1, 1 vale 2, 2 vale 4 e 3 vale 8.
Por exemplo, 42 em binário é 101010. Testar a posição 3 examina o valor 8, que está presente. Confirme que você conta da direita e começa em zero para evitar erros de deslocamento.
A calculadora aceita inteiros seguros não negativos e posições de 0 a 52.
Use aritmética exata para sinalizadores e máscaras
Testes de bit são comuns quando um inteiro armazena vários estados independentes. Um campo de permissões pode reservar bits para leitura, gravação e administração; um registrador de dispositivo pode reunir prontidão, erro e modo; formatos de arquivo e protocolos usam a mesma técnica. Use esta ferramenta quando você souber a posição documentada e precisar de uma resposta reproduzível.
O algoritmo divide pela potência de dois escolhida, elimina as posições inferiores e verifica se o restante é ímpar. Isso evita os operadores bit a bit do JavaScript, que convertem números em inteiros de 32 bits com sinal e podem errar acima da posição 31. O cálculo é determinístico e não acessa a rede.
Caso uma especificação conte a partir do bit mais significativo ou use posições iniciadas em um, converta primeiro para a convenção de base zero a partir do bit menos significativo.
Casos de uso
Examinar permissões
Verifique se uma permissão documentada está habilitada em uma máscara inteira e preserve seu valor numérico isolado.
Decodificar registradores
Leia um sinalizador individual de estado ou erro em um registrador compactado sem coerção para 32 bits com sinal.
Validar campos de protocolo
Teste uma posição específica ao depurar cabeçalhos codificados, metadados de arquivos ou estados serializados.
Perguntas frequentes
A posição zero é o bit esquerdo ou direito?
É o bit mais à direita, o menos significativo, e representa o valor 1.
Por que inteiros negativos são recusados?
O padrão depende da largura com sinal presumida. Valores não negativos geram resultados inequívocos entre linguagens.
Como verificar se o bit 3 está ligado em 42?
Digite 42 e a posição 3. Em binário, 42 é 101010 e a casa que vale 8 tem um, então a resposta é sim e o valor isolado é 8. A posição 2 do mesmo número daria não e 0.
O que o valor isolado do bit mostra?
É a potência de dois daquela posição quando o bit está ligado, e 0 quando está desligado. Ele serve para montar máscaras ou fazer contas, enquanto o sim ou não serve para tomar decisões.
Por que a posição máxima é 52?
Porque até ela cada número aceito e cada valor devolvido continuam exatos. Com posições maiores, um número grande poderia ser arredondado sem aviso e a resposta deixaria de ser confiável.
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/dev/test-bit \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":42,"position":3}'const res = await fetch("https://api.kit.forhosting.com/dev/test-bit", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": 42,
"position": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/test-bit",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": 42,
"position": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/test-bit", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":42,"position":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":42,"position":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/test-bit", 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": 42,
"position": 3
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.test_bit",
"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
Escolha o inteiro e conte da direita
Esses limites mantêm exatos tanto os dados recebidos quanto o valor isolado retornado em JavaScript e clientes JSON, sem arredondamento silencioso de números grandes.
Leia juntos o booleano e o valor isolado
A saída oferece duas respostas complementares. O valor original e a posição também são repetidos para facilitar auditorias. Nenhuma largura com sinal é presumida: somente inteiros não negativos são aceitos, evitando diferenças entre representações de complemento de dois de 8, 32 ou 64 bits. O campo is_set será verdadeiro quando a posição contiver um e falso quando contiver zero. O campo bit_value expressa o mesmo resultado numericamente: ele é a potência de dois da posição quando o bit está ativado, ou 0 quando está desativado. Com o valor 42 e a posição 3, is_set é verdadeiro e bit_value é 8. Na posição 2, is_set é falso e bit_value é 0. Assim, uma condição pode usar o booleano diretamente, enquanto cálculos e máscaras aproveitam o valor isolado.
Perguntas técnicas
O que significa bit_value?
É a potência de dois selecionada quando o bit está ativado, ou 0 quando está desativado.
Por que a posição máxima é 52?
JavaScript e JSON só representam inteiros com exatidão no intervalo seguro; a posição 52 ainda permanece exata.
Quanto custa uma chamada de API?
Cada chamada de API custa US$ 0,002. O cálculo também está disponível no executor gratuito do navegador.