Como converter inteiros em binários e vice-versa

Web Adventures
4 min readJan 15, 2022

Números binários são tudo o que um computador entende. Letras, símbolos, comandos do usuário, tudo é convertido para binários, para que sua máquina possa processar e devolver uma resposta.

Saber manipular binários é um conhecimento básico e muito útil dentro da área de tecnologia, não só para desenvolvedores! Mas também, por exemplo, calcular máscaras de rede, intervalos de IP (Internet Protocol) e outras atividades voltadas à rede de computadores e computação em geral.

Mas se você está aqui, é porque já sabe disso, certo? Então, sem mais delongas!

Convertendo inteiros em binários

A nossa primeira missão é aprender a converter números inteiros em binários. E vou te ensinar a fazer isso de duas formas:

Divisão inteira por 2

Como você já sabe, números binários contém apenas dois estados: 0 e 1. Por isso, eles também são conhecidos como sistema numérico de base 2.

Para obter a representação binária de um inteiro através da divisão inteira por 2, vamos seguir estes passos:

  • Realize sucessivas divisões inteiras do número por 2, até que o número seja 1;
  • Anote os restos da divisões e o quociente da última divisão, que será sempre “1”;
  • Inverta a ordem dos restos da divisão.

E pronto! Você converteu um número inteiro em sua representação binária.

Potências de base 2

Para começar, vamos escrever uma tabela contendo as potências de base 2:

Esta tabela contém dois campos: as potências na base binária e seu valor em decimais, para facilitar nossa leitura.

Note que sempre que acrescentamos +1 ao expoente, o valor decimal é dobrado:

Neste caso, se você precisar trabalhar com números maiores que 256, basta acrescentar a próxima base binária: 2⁹, que no caso, dobrará o alcance da tabela para 512. Precisa de um alcance ainda maior? Acrescente mais uma base binária: 2¹⁰, que dobrará novamente o alcance para 1024. E assim sucessivamente.

O tamanho da tabela é arbitrário. Você pode acrescentar mais potências para trabalhar com números maiores, ou retirar algumas potências para trabalhar com números menores.

Entendi, mas como utilizo a tabela para converter os números?

Vamos converter novamente o número 25 para binário, dessa vez utilizando nossa tabela, siga os passos:

  • Decomponha 25 em partes menores de base 2. Observe a tabela e pense: “Quais números presentes na tabela, que somados, resultam em 25?”;
  • Observando a tabela, chegaremos a conclusão que 16 + 8 + 1 = 25, logo, 16, 8 e 1 são os números, que quando somados, resultam em 25;
  • As posições 16, 8 e 1 na tabela devem receber o valor binário 1;
  • O restante deve receber o valor binário 0;
  • Ao término, você obtém a representação binária de 25.

Este método talvez pareça mais trabalhoso do que somente dividir o número e obter os restos da divisão, porém ele tem duas vantagens:

  • Com prática, você começará a memorizar as potências de 2 e seus valores em decimais, conseguindo realizar estas operações mentalmente sem grande esforço;
  • Este método permite que consigamos fazer a operação inversa: converter binários para decimais de uma forma mais prática, e é isso que vamos fazer agora!

Convertendo binários em inteiros

Agora que já sabemos como trabalhar com a tabela de potências de 2, se torna muito simples converter binários em inteiros, tudo que precisamos fazer é inserir os dígitos do número binário na tabela e somar os valores decimais.

Vamos utilizar como exemplo, o número binário 1001011:

  • 1001011 tem 7 dígitos. Logo podemos deduzir que uma tabela de 7 posições é o suficiente para convertermos este binário em inteiro;
  • Após inserir o binário na tabela, basta somar os valores decimais marcados com 1 e ignorar os marcados com 0;
  • O resultado desta soma é a conversão do binário em inteiro.

E assim, aprendemos duas formas de conversão. Saber operar binários é essencial na computação, e você acabou de dar o primeiro passo!

Para auxiliar nos seus estudos, estarei deixando uma calculadora binária. Assim você poderá corrigir e comparar os resultados enquanto treina: https://www.to-convert.com/pt/numero/converter-decimal-para-binario.php

Espero que a explicação e os exemplos tenham ficado claros. Qualquer dúvida, estou à disposição para ajudar. Obrigado por ter chegado até aqui, e até a próxima!

--

--