Muitas pessoas não estão familiarizadas com o sistema hexadecimal, também conhecido como hex. O hexadecimal é amplamente utilizado na computação, e se você nunca estudou esse sistema de numeração em Base 16, ele pode parecer um tanto enigmático.
Para aqueles que se sentem confusos com esse sistema aparentemente misterioso, apresento este breve guia sobre o sistema de numeração hexadecimal.
Você provavelmente já viu o hexadecimal em seu computador ou em programas de software. Ele costuma aparecer em formatos como 0x4D
ou simplesmente 4D
. Notamos que algo é diferente porque, além de frequentemente começar com 0x
, ele usa letras, além dos dígitos (0-9).
O hexadecimal é comumente encontrado em imagens de discos rígidos, como em investigações forenses digitais,
em ferramentas como Wireshark para análise de redes,
e também ao ler alertas de IDS (Sistema de Detecção de Intrusos), como no Snort.
Compreender o hexadecimal é essencial, pois os endereços MAC de todos os dispositivos de rede estão em hexadecimal. Além disso, o IPv6 será totalmente hexadecimal assim que for amplamente adotado.
Se você ainda não está familiarizado com hex, este é o momento ideal para aprender, pois entender isso agora pode evitar muita dor de cabeça no futuro.
Para entender melhor o sistema Base16, ou hexadecimal, é útil voltar ao sistema decimal (Base10), que usamos no dia a dia. No sistema decimal, temos 10 dígitos (0-9), e cada coluna representa um valor 10 vezes maior que o da coluna à direita. Por exemplo:
31337
Representa:
Cada posição vale 10 vezes mais que a anterior. No sistema hexadecimal, o funcionamento é semelhante, mas cada coluna vale 16 vezes mais que a anterior. Os primeiros quatro valores em hexadecimal são:
4096 256 16 1
Cada coluna vale 16 vezes mais que a coluna à direita.
O hexadecimal é um sistema de numeração em Base16. Assim como o sistema decimal, o hexadecimal precisa de 16 dígitos para cobrir todas as possibilidades. No entanto, como só temos 10 dígitos (0-9), acrescentamos as letras A-F para representar os valores adicionais, assim:
Isso significa que ao vermos um número como 0x45
, podemos avaliá-lo da seguinte forma:
Se tivermos um número como DE
, calculamos assim:
Na computação, um bit é um interruptor de ligado/desligado, representado por 0 ou 1, e um byte é composto por oito bits (0000 0000), com valores que vão de 0 a 255. O sistema Base2 (binário) que os computadores usam é representado por números como 1101 1100
, que é o equivalente a 222 no decimal, mas essa conversão não é intuitiva.
O hexadecimal facilita essa representação, permitindo que expressamos o valor de um byte com apenas dois dígitos, que variam de 0x00
a 0xFF
(0 a 255).
Uma maneira prática de fazer cálculos em hexadecimal é usando a calculadora do Windows. Abra a calculadora, vá ao menu “Exibir” e escolha “Programador”.
Na calculadora do modo Programador,
você verá quatro opções: Hex (hexadecimal), Dec (decimal), Oct (octal) e Bin (binário). Por padrão, ela estará em decimal. Para inserir um número hexadecimal, clique em “Hex” e digite o valor.
Depois, você pode alternar para a opção “Dec” para ver a conversão para decimal.
Se quisermos somar, subtrair, multiplicar ou dividir em hexadecimal, também podemos usar o modo Programador. Por exemplo, para somar DE
com A5
, insira DE
, pressione o sinal de adição (+), insira A5
e pressione igual (=). O resultado será 183
em hexadecimal,
e ao alternar para decimal, veremos o equivalente 387
.
Espero que este breve tutorial sobre hexadecimal tenha sido útil!