• Home
  • Química
  • Astronomia
  • Energia
  • Natureza
  • Biologia
  • Física
  • Eletrônica
  • Convertendo números negativos em binários:um guia prático para complemento de dois

    Por Kevin Beck Atualizado em 30 de agosto de 2022

    scyther5/iStock/GettyImages

    Números negativos são um conceito familiar, mas convertê-los em binários pode parecer contra-intuitivo se você estiver acostumado apenas com aritmética decimal. No mundo da ciência da computação, entretanto, um método padronizado – complemento de dois – torna essa conversão simples e confiável.

    Como os computadores processam informações em um estado binário – 0 (desligado) ou 1 (ligado) – todas as operações aritméticas, incluindo o tratamento de valores negativos, são realizadas usando esses dois dígitos. É por esse design que você verá termos como bit, nybble (4 bits), byte (8 bits), word e long word em toda a documentação técnica.

    O que são números binários?


    Num sistema binário, cada posição representa uma potência crescente de dois:1, 2, 4, 8, 16 e assim por diante. Uma string binária como 0101 tem um valor decimal de 5 porque os 1s ocupam a 1ª e a 4ª casas (1+4=5). Da mesma forma, o byte 10011100 se traduz em 128+16+8+4=156 em decimal.

    O complemento de um número binário é obtido invertendo cada bit – alterando 0s para 1s e 1s para 0s. Por exemplo, o complemento de 10011100 é 01100011.

    Exemplos de números binários


    Essas conversões simples ilustram como os valores binários são mapeados para números decimais e como a operação de complemento é executada.

    Convertendo números negativos em binários


    Para codificar um número decimal negativo em binário, os programadores contam com o complemento de dois. Esta técnica instrui o processador a tratar qualquer número binário que comece com 1 como negativo. As etapas de conversão são:
    1. Converta o valor absoluto do número em binário.
    2. Calcule seu complemento invertendo cada bit.
    3. Adicione um ao valor complementado.

    Por exemplo, vamos converter –47:
    1. Binário para +47:00011111
    2. Complemento:11100000
    3. Adicione um:11100001

    O resultado, 11100001, é a representação em complemento de dois de –47, com o 1 inicial sinalizando um valor negativo. Este método é adotado universalmente em plataformas de hardware e software, garantindo um tratamento consistente de números inteiros assinados.



    © Ciências e Descobertas https://pt.scienceaq.com