Calculadora bit a bit

Digite dois valores e escolha uma operação para ver o resultado em decimal, hexadecimal e binário, com os bits de cada etapa. A largura escolhida define quais bits existem, então NOT e os deslocamentos dão o resultado que um computador daria.

Gratuita Funciona no seu navegador Verificada em terça-feira, 10 de novembro de 2026

O número a trabalhar, na base escolhida em Sistema numérico. Valores decimais negativos são guardados em complemento de dois.

Usado somente por AND, OR, XOR, NAND e NOR.

Sistema numérico

Resultado

Hexadecimal — O resultado com o prefixo 0x.
Decimal (sem sinal) —
Decimal (complemento de dois) — Os mesmos bits lidos como número com sinal.
Binário —
Verificação — Diz se cada valor cabe na largura.
Bit a bit

Esta ferramenta funciona no seu navegador. O que você digita não é enviado para nós.

Como usar

  1. Digite o primeiro valor em Primeiro valor (A), e o segundo em Segundo valor (B) quando a operação o usar.
  2. Escolha o Sistema numérico em que os valores são digitados, e a Operação.
  3. Para um deslocamento ou rotação, defina Deslocar ou girar em. Escolha a Largura que o resultado deve ter.
  4. Leia o resultado em Hexadecimal, Decimal (sem sinal) e Binário, e a tabela bit a bit abaixo deles.

As operações lógicas

0xCA AND 0x0F = 11001010 AND 00001111 = 00001010 = 0x0A
  • AND dá 1 somente onde os dois bits são 1. Use-o para manter alguns bits e zerar os outros.
  • OR dá 1 onde algum dos bits é 1. Use-o para ligar bits.
  • XOR dá 1 onde exatamente um dos bits é 1. Aplicar o mesmo XOR duas vezes devolve o valor original.
  • NAND e NOR são AND e OR seguidos de NOT. NOT inverte cada bit dentro da largura.

Deslocamentos e rotações

O deslocamento à esquerda move cada bit uma posição para cima e preenche a parte de baixo com zeros; um bit que sai pelo topo se perde. O deslocamento lógico à direita move cada bit para baixo e preenche o topo com zeros. O deslocamento aritmético à direita preenche o topo com cópias do bit de sinal, então um valor negativo continua negativo. Uma rotação faz o bit que sai por uma extremidade voltar pela outra.

0xCA deslocado à esquerda em 1 = 10010100 (0x94); lógico à direita = 01100101 (0x65); aritmético à direita = 11100101 (0xE5); rotação à esquerda = 10010101 (0x95)

A largura importa

NOT de zero é 0xFF em 8 bits, 0xFFFF em 16 bits e 0xFFFFFFFF em 32 bits, porque o resultado tem tantos bits quanto a largura. Um valor que precisa de mais bits que a largura não é guardado por inteiro: a ferramenta usa os bits mais baixos e mostra a linha Verificação em vermelho.

O que a ferramenta não cobre

  • As linguagens diferem. Os operadores bit a bit do JavaScript convertem seus operandos em inteiros de 32 bits, então não mostram resultados de 64 bits. Esta ferramenta mostra os bits da largura escolhida, com BigInt para que valores de 64 bits sejam exatos.
  • Campos de bits dentro de uma estrutura, ordem dos bytes e formatos de arquivo: para esses casos, veja o visualizador hexadecimal.

Exemplo resolvido: 0xCA AND 0x0F em 8 bits

Digite CA como primeiro valor e 0F como segundo, com o Sistema numérico em hexadecimal e a Largura em 8 bits. O resultado é 00001010, que é 0x0A em hexadecimal e 10 em decimal. Só permanecem os bits que os dois valores têm ligados na mesma posição: dois deles, ambos nas quatro posições baixas que 0F mantém.

Resultado Valor
Hexadecimal 0x0A
Binário 0b0000 1010
Decimal (sem sinal) 10

Perguntas frequentes

Qual é a diferença entre deslocamento lógico e aritmético à direita?

Os dois movem os bits uma posição para baixo. O deslocamento lógico preenche o topo com zeros, então trata o valor como sem sinal. O aritmético copia o bit de sinal, então um valor negativo continua negativo: 0xCA é −54, e deslocado para a direita em 1 vale −27 (0xE5).

Por que o NOT dá um resultado diferente em larguras diferentes?

O NOT inverte cada bit que a largura tem. O zero é 00000000 em 8 bits, então o NOT dá 11111111 (0xFF); em 32 bits, o zero tem 32 bits, então o NOT dá 0xFFFFFFFF. O mesmo número tem um número diferente de bits em cada largura.

O que uma rotação faz que um deslocamento não faz?

Um deslocamento perde os bits que saem por uma extremidade. Uma rotação os devolve pela outra, então nenhum bit se perde. Girar pela largura inteira dá de novo o mesmo valor.

Por que um valor é marcado quando não cabe na largura?

Um valor que precisa de mais bits que a largura não pode ser guardado por inteiro. A ferramenta usa os bits mais baixos, então 300 em 8 bits vira 44, e a linha Verificação diz o que aconteceu, para que o resultado não seja tomado como o valor que você digitou.

Posso digitar números binários com espaços?

Sim. Espaços e sublinhados são ignorados, então 1100 1010 e 11001010 são o mesmo valor. O hexadecimal pode ter o prefixo 0x, e o binário pode ter o prefixo 0b.

Fontes

Números e texto verificados pela última vez em terça-feira, 10 de novembro de 2026.

Usamos cookies necessários para o site funcionar. Com o seu consentimento, o Google também usa cookies de publicidade para mostrar anúncios personalizados. Se você recusá-los, continuará vendo anúncios, mas eles não serão personalizados.