Ver Feed RSS

Redes de Computadores

Binário Parte 4 - Convertendo Base Hexadecimal

Avalie este Post de Blog

Introdução



Notação hexadecimal é uma maneira de representação que facilita o entendimento para os humanos, é uma maneira de se representar de 0 à 255 usando apenas dois dígitos, hexadecimal é base 16, assim como em decimal que é base 10 que vai de 0 a 9 e depois começa a repetir os símbolos para representar números maiores do que 9, em hexadecimal ou apenas Hex ou Hexa essa representação vai de 0 à F e depois para continuar representando valores maiores é feito a repetição usando os símbolos hexadecimal, ficando assim:
Decimal 0 = 0 Hex
Decimal 1 = 1 Hex
Decimal 2 = 2 Hex
Decimal 3 = 3 Hex
Decimal 4 = 4 Hex
Decimal 5 = 5 Hex
Decimal 6 = 6 Hex
Decimal 7 = 7 Hex
Decimal 8 = 8 Hex
Decimal 9 = 9 Hex
Decimal 10 = A Hex
Decimal 11 = B Hex
Decimal 12 = C Hex
Decimal 13 = D Hex
Decimal 14 = E Hex
Decimal 15 = F Hex
Como qualquer outra base essa pode ser convertida para decimal, binário, octal e etc. sendo que aqui vamos explorar mais a conversão decimal, binário e hexadecimal já que é a mais usada em TI, quando temos um valor em base 2 (binário) esse valor deve ser separados em grupo de 4 bits, essa separação existe apenas para resolvermos a conversão, esses 4 bits são chamados de nibbles ou seja 2 nibbles é igual à 1 byte, a primeira conversão é a mais fácil de todas, é o 0(zero) em decimal ou 00000000 em binário, e que em hexadecimal é representado por 00 (zero, zero), perceba na ilustração abaixo que tínhamos uma sequência de 8 bits e foi separado em 2 grupos de 4 bits e resolvido (convertido) nibble à nibble, cada 4 bits vai ser representado por apenas um digito em hexadecimal, daí sua importância na hora de fazer grandes representações de valores ou seja enquanto que para representar 1 byte em binário precisa de 8 dígitos (00000000 à 11111111) ou 3 dígitos em decimal (0 à 255) em Hexadecimal essa representação ocupa apenas 2 dígitos (00 à FF) isso ajuda muito quando desejamos fazer representações de valores grandes.
Clique na imagem para uma versão maior

Nome:	         hex-1.jpg
Visualizações:	650
Tamanho: 	65,0 KB
ID:      	43880



Durante esse tutorial será apresentado e explicado vários exemplos e em cada um de uma forma didática diferente para que no final o leitor possa resolver qualquer outra conversão de valores que não foi abordado aqui. Agora um exemplo de conversão do número 1 em decimal ou 00000001 em binário.

Clique na imagem para uma versão maior

Nome:	         hex-2.jpg
Visualizações:	538
Tamanho: 	55,8 KB
ID:      	43881



Um exemplo com o valor 15 em decimal, pode ser visto na ilustração abaixo, nesse caso foi pegue já que temos 00001111 o primeiro nibble tudo em 1 isso diz que pegamos essas potências correspondente e que se somados da 15 em decimal, como o 15 em decimal é representado pelo F em Hexadecimal fica 0F

Clique na imagem para uma versão maior

Nome:	         hex-3.jpg
Visualizações:	473
Tamanho: 	72,4 KB
ID:      	43882



Nesse exemplo abaixo pegamos o 16 em decimal, como em hexa o F representa o 15 decimal que é o máximo de representação com apenas 1 dígito agora devemos começar a repetir esses símbolos para pode representar valores maiores, para o 16 decimal o seu correspondente em hexa é 10 (Hum, Zero)

Clique na imagem para uma versão maior

Nome:	         hex-4.jpg
Visualizações:	566
Tamanho: 	83,1 KB
ID:      	43883



Temos o número 17 decimal que em hexadecimal fica 11 (Hum, Hum) perceba que pegamos a potência de 0 que da 1 e a potência de 4 que da 16, 1+16=17

Clique na imagem para uma versão maior

Nome:	         hex-5.jpg
Visualizações:	966
Tamanho: 	64,0 KB
ID:      	43884



Temos uma sequência de 8 bits binário, se somarmos as potências usadas as que corresponde a 1, temos o valor 145 decimal, agora para converter e representar em hexadecimal devemos separar em duas partes, onde o nibble menos significativo (direita) apenas a potência de 0 que vale 1 foi usada e portanto fica 1 mesmo em Hexadecimal, já no segundo nibble (esquerda) foi pegue o primeiro que vale 1 e o último que vale 8 e se somados 8+1=9 em hexadecimal, como resultado fica 91 Hex, que é igual à 145 decimal já que se somarmos as potências usadas 128+16+1=145

Clique na imagem para uma versão maior

Nome:	         hex-6.jpg
Visualizações:	573
Tamanho: 	122,8 KB
ID:      	43885




O último exemplo é muito simples, esse representa o maior valor que um byte pode representar, temos uma sequência de 8 bits em nível lógico 1, que se somado todas as potências temos 255 decimal e convertido para hexadecimal temos FF

Clique na imagem para uma versão maior

Nome:	         hex-7.jpg
Visualizações:	590
Tamanho: 	143,8 KB
ID:      	43886



Conclusão: Hexadecimal é apenas mais uma forma de representação bastante usado no mundo da computação já que com apenas dois dígitos podemos representar qualquer valor contido em um byte, o que facilita e muito a documentação e interpretação desses principalmente na hora de escrever, imagine o IPv6 que são 128 bits se tivéssemos que representar isso em binário seria muito extenso e extremamente passível de erros, por isso o IPv6 é representado em Hexadecimal, já que nesse caso com apenas uma sequência de 32 dígitos hexadecimal, observe que para cada 1 byte se usa 2 dígitos em Hexadecimal por isso que disse 32 dígitos porque são 16 bytes para representar um endereço de IPv6.

Atualizado 14-04-2013 em 12:47 por aldevan

Categorias
Artigos

Comentários


+ Enviar Comentário



Visite: BR-Linux ·  VivaOLinux ·  Dicas-L