quarta-feira, 7 de setembro de 2016

Convertendo números decimais em binários

Para converte um número decimal existem várias formas. Uma delas consiste na diminuição de multiplos de 2 (2x). Basta saber os múltiplos, abaixo os múltiplos até 212 :
·        212 = 4096
·        211 = 2048
·        210 = 1024
·        29 = 512
·        28 = 256
·        27 = 128
·        26 = 64
·        25 = 32
·        24 = 16
·        23 = 8
·        22 = 4
·        21 = 2
·        20 = 1


  

Exemplo:

O processo consiste em começar subtraindo o maior valor múltiplo de 2 possível, e repetindo o processo parando somente quando chegar a zero.
Após o final marca-se com 1 os bits referentes aos múltiplos que foram subtraídos e com 0 os demais.

Vamos mostrar como converter um número, por exemplo 185.





  

Sugestão de fluxograma para 8 bits:

  1. ·        Crie inicialmente um vetor com o número de bits necessários a conversão (unsigned char binario[8];).
  2. ·        Guarde o valor utilizando uma variável auxiliar.
  3. ·        Teste se a variável auxiliar se ela é maior que 128, se for subtraia 128 do número e marque o bit 7 como 1 (binario[7]=1;) se não marque o bit 7 como 0 (binario[7]=0;).
  4. ·        Repita o processo para os outros múltiplos de 2 (64, 32, 16, 8, 4, 2, 1 e 0).




  

Nenhum comentário:

Postar um comentário