Olá pessoal, hoje iremos falar sobre um assunto que chateia muitos alunos de cursos superiores, que é a conversão de números binários em decimais e vice-versa.

Bom primeiramente, para que serve isto? Quem já trabalha com redes ou precisa configurar algum endereço IP já deve ter se perguntado por que os números só vão até 255?O número de endereço IP é formado na realidade por 4 octetos, isto é 4 unidades de 8 Bits (0 e 1) o que resulta em um endereço de 32 Bits assim sendo, vejamos como exemplo uma máscara de sub-rede de classe C:

Cada octeto é um conjunto de 8 Bits, isto é, 0 ou 1, desta forma vamos converter os octetos descritos acima em decimal em notação binária, eles ficariam assim:



Se pegarmos uma calculadora científica ou até mesmo a do Windows poderemos verificar que realmente 8 bits 1 é igual a 255. Ok, pulemos agora para a brincadeira, que é a conversão de endereços IP, como exemplo iremos utilizar um endereço muito simples e de fácil memorização 192.168.0.1, como faríamos para converter este número em binário? Istoa até parece uma terafa difícil, porém é muito simples pois cada posição do número binário possui um valor como a tabela abaixo


A regra é muito simples como em uma conta de adição onde o valor for 1 em binário se acrescenta o respectivo valor, exemplo, o valor 192 em binário seria como:



11000000 = 192, pois 128+64=192 e assim por diante e inversamente também, se você tiver um valor em binário como seria o seu equivalente, vejamos os valores:
10101010



128+32+8+2= 170, portanto 170 em decimal é igual a 10101010.

Outro exemplo:

168 em decimal queremos saber o equivalente em binário.



Agora estou com a tabela em branco para praticarmos:
1) Preciso de 168, portanto vou utilizar o valor na 1ª casa que é 128, e adiciono o 1 na casa.



2) Precisávamos de 168, já utilizamos 128, desta forma 168 - 128 + 40, o valor mais próximo de 40 é 32, então inserimos o 1 na casa do 32, pois estamos usando este valor, para quem estudou eletrônico isto é bem simples pois é como se estivéssemos ligando a chave do 32.



3) Falta pouco, 128 + 32 = 160, para 168 faltam 8, coincidentemente temos o valor exato, em uma das posições, então validamos o 1 na casa do 8.



4) Por último os campos não utilizados devem ser completados com 0 (zero), ficando assim



Detalhe Muito Importante!!!

Jamais deixe de representar as posições iniciadas com valor 0, para representar um octeto, simples se você encontrou um valor decimal como 00101111 não represente como 101111, pois é um OCTETO e deve ser representado pelos 8 Bits, sempre tem alguém que por este simples detalhe erra no momento da prova!

Confira uma tabela de relações dos tipos de números:

Tabela de relações

Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Binário 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111
Hexa 0 1 2 3 4 5 6 7 8 9 A B C D E F
Octal 0 1 2 3 4 5 6 7 - - - - - - - -

Abraço e até a próxima, sugiram novos temas!