$bitNot (NÃO Bit a Bit)

Última atualização: 2026-10-09

$bitNot (NÃO Bit a Bit)

$bitNot executa um NÃO bit a bit (complemento de dois) sobre um único inteiro — o único operador bit a bit que recebe um operando. Disponível desde o MongoDB 6.3, o resultado é igual a -x-1, então NOT 5 resulta em -6. É usado para construir máscaras complementares e negação geral em matemática de bits. Um argumento nulo ou ausente resulta em null; o operando deve ser int32 ou int64. Observe a inversão de sinal: isso é complemento de dois, não uma simples inversão da magnitude.

CategoriaMatemática
Versão do MongoDB6.3+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $bitNot: <expressão-inteira> }

⚙️ Parâmetros

inteiroUm inteiro int32 ou int64, ou uma expressão que resolva para um.

Retorno:O NOT bit a bit da entrada (-x-1); null quando null ou ausente

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $bitNot: inverter bits de permissão para construir uma máscara de exclusão
db.users.aggregate([
  { $project: {
      denied: { $bitNot: '$allowedBits' }
  } }
])

Saída:

{ '_id': 1, 'denied': -6 }
{ '_id': 2, 'denied': -1 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQuanto é $bitNot(5)?
AÉ -6, pois o NÃO em complemento de dois segue -x-1.
QPor que $bitNot produz resultados negativos?
AO NÃO em complemento de dois inverte o bit mais significativo, mudando o sinal.
QOnde o $bitNot é útil?
ANa construção de máscaras complementares ou na composição com outros operadores bit a bit.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%