Piikachu 0 #1 Posted August 18, 2010 Um número na base decimal (tradicional) pode ser transformado em binário seguindo as seguintes regras: 1. Pega-se o número em decimal e faz uma divisão inteira por DOIS. 2. Então com o resultado é feita novamente uma divisão inteira por DOIS e assim consecutivamente. 3. O número binário é o resultado da concatenação do último resultado com os restos de cada divisão. Acho que esse processo pode ser melhor visualizado nos exemplos a seguir: Número Decimal a ser transformado: 5 Número: 5 Result. divisão: 2 Resto: 1 Número: 2 Result. divisão: 1 Resto: 0 Número binário resultante: 101 Número Decimal a ser transformado: 49 Número: 49 Result. divisão: 24 Resto: 1 Número: 24 Result. divisão: 12 Resto: 0 Número: 12 Result. divisão: 6 Resto: 0 Número: 6 Result. divisão: 3 Resto: 0 Número: 3 Result. divisão: 1 Resto: 1 Número: 1 Result. divisão: 0 Resto: 1 Número binário resultante: 0110001 Para transformar um número na base dois (binário) para a base decimal, basta seguir as seguintes regras: 1. Pega-se o número da direita para a esquerda e multiplica-se cada dígito por DOIS elevado a posição em que se encontra no número. Essa posição começa pelo número ZERO. 2. O valor em decimal é o resultado da soma de cada uma dessas multiplicações. Isso pode ser verificado a partir dos exemplos a seguir: Número binário a ser transformado: 0101 Posição: 0 Bit: 1 Multiplicação: 1 x 2^0 Resultado: 1 Posição: 1 Bit: 0 Multiplicação: 0 x 2^1 Resultado: 0 Posição: 2 Bit: 1 Multiplicação: 1 x 2^2 Resultado: 4 Posição: 3 Bit: 0 Multiplicação: 0 x 2^3 Resultado: 0 Número decimal resultante: 1 + 0 + 4 + 0 = 5 Número binário a ser transformado: 1111 Posição: 0 Bit: 1 Multiplicação: 1 x 2^0 Resultado: 1 Posição: 1 Bit: 1 Multiplicação: 1 x 2^1 Resultado: 2 Posição: 2 Bit: 1 Multiplicação: 1 x 2^2 Resultado: 4 Posição: 3 Bit: 1 Multiplicação: 1 x 2^3 Resultado: 8 Número decimal resultante: 1 + 2 + 4 + 8 = 15 Um número na base decimal (tradicional) pode ser transformado em hexadecimal seguindo as seguintes regras (semelhantes a transformação para binário, só que utilizando a base DEZESSEIS): 1. Pega-se o número em decimal e faz uma divisão inteira por DEZESSEIS. 2. Então com o resultado é feita novamente uma divisão inteira por DEZESSEIS e assim consecutivamente. 3. O número binário é o resultado da concatenação do último resultado com os ?restos? de cada divisão. Acho que esse processo pode ser melhor visualizado nos exemplos a seguir: Número Decimal a ser transformado: 35 Número: 35 Resultado: 2 Resto: 3 Número: 2 Resultado: 0 Resto: 2 Número hexadecimal resultante: 23 Número Decimal a ser transformado: 233 Número: 233 Resultado: E (14) Resto: 9 Número: E (14) Resultado: 0 Resto: E (14) Número hexadecimal resultante: E9 Para transformar um número na base DEZESSEIS (hexadecimal) para a base decimal, basta seguir as seguintes regras (novamente semelhante a regra da transformação de binário para decimal, só mudando a base para DEZESSEIS): 1. Pega-se o número da direita para a esquerda e multiplica-se cada dígito por DEZESSEIS elevado a posição em que se encontra no número. Essa posição começa pelo número ZERO. 2. O valor em decimal é o resultado da soma de cada uma dessas multiplicações. Isso pode ser verificado a partir dos exemplos a seguir: Número binário a ser transformado: 7E Posição: 0 Dígito: E (14) Multiplicação: 14 x 16^0 Resultado: 14 Posição: 1 Dígito: 7 Multiplicação: 7 x 16^1 Resultado: 112 Número decimal resultante: 14 + 112 = 126 Número binário a ser transformado: 24D Posição: 0 Dígito: D (13) Multiplicação: 13 x 16^0 Resultado: 13 Posição: 1 Dígito: 4 Multiplicação: 4 x 16^1 Resultado: 64 Posição: 2 Dígito: 2 Multiplicação: 2 x 16^2 Resultado: 512 Número decimal resultante: 13 + 64 + 512 = 589 Cada algarismo no formato hexadecimal é representado por QUATRO algarismos em binário. A transformação é direta, assim como nos exemplos: Hexa: 7 Binário: 0111Hexa: B (11) Binário: 1011 Hexa: B4 Binário: 1011 0100 Hexa: A50F Binário: 1010 0101 0000 1111 Para transformar um número binário para hexadecimal, basta tratar o número em binário como se fossem conjuntos de QUATRO caracteres, separando da direita para esquerda, assim como segue no exemplo: Binário: 0100 Hexa: 4Binário: 1111 Hexa: F (15) Binário: 1100 1001 Hexa: C9 Binário: 1111 0110 0000 Hexa: F60 Bom, isso é tudo, esse tutorial é só pra mostrar que trabalhar com binários e outras bases numéricas não é tão complicado, ainda mais se você se acostuma com isso. Tutorial por: Carlos (JavaFree.org). Adaptado por: Piikachu. Share this post Link to post Share on other sites
DimiGhost 0 #2 Posted August 18, 2010 OMG mete fogo nisso hauhauhauhau já mexo com isso todos os dias da minha vida haha Share this post Link to post Share on other sites
Anywhere 0 #3 Posted November 17, 2010 Parabens cara, otimo tutorial, li inteirinho Só não entendi o finalzinho de como transformar o Hexa em Binário, e vice versa o.o Teria que fazer as divisões tmb? Share this post Link to post Share on other sites