Se ao aprender sobre o sistema hexadecimal você compreendeu bem o que queremos dizer com sistemas numéricos, então não terá dificuldades em entender o sistema binário.

No sistema decimal, utilizamos dez algarismos para representar todos os números; no sistema hexadecimal, utilizamos dezesseis algarismos para esse fim. Já no sistema binário, usamos apenas dois algarismos para representar todos os números.

Além disso, se você leu o tutorial anterior, já deve perceber que o sistema numérico binário está totalmente alinhado com o fato de que, na eletrônica digital e na computação, sempre trabalhamos com dois estados: sem energia ou com energia; zero ou um.

Ou seja, no sistema binário, utilizamos apenas os algarismos 0 e 1 para representar todos os números e realizar cálculos.

Veja a tabela:

Binário Decimal Valor
0 0 zero
1 1 um
10 2 dois
11 3 três
100 4 quatro
101 5 cinco
110 6 seis
111 7 sete
1000 8 oito
1001 9 nove
1010 10 dez
1011 11 onze
1100 12 doze
1101 13 treze
1110 14 catorze
1111 15 quinze
10000 16 dezesseis
10001 17 dezessete
10010 18 dezoito
10011 19 dezenove
10100 20 vinte

E assim podemos continuar até o infinito…

Esta é a forma mais precisa e exata de representar bits, mas, obviamente, não é a mais prática, pois os números ficariam gigantescos.

Relação entre os sistemas binário e hexadecimal

A maneira mais prática de representar bits e bytes é em hexadecimal, pois existe uma relação direta entre o sistema hexadecimal e o binário.

Sabendo que 1 byte equivale a 8 bits, o valor de 1 byte no sistema binário pode variar de 00000000 até 11111111. Note que são 8 dígitos, cada um representando um bit.

Os algarismos do sistema hexadecimal vão de 0 a F. Ao convertermos F para o sistema binário, obtemos exatamente 1111. Ou seja, todos os algarismos do sistema hexadecimal podem ser representados por quatro dígitos binários.

Veja a tabela:

Binário Hexadecimal Valor
0000 0 zero
0001 1 um
0010 2 dois
0011 3 três
0100 4 quatro
0101 5 cinco
0110 6 seis
0111 7 sete
1000 8 oito
1001 9 nove
1010 A dez
1011 B onze
1100 C doze
1101 D treze
1110 E catorze
1111 F quinze

Sendo o valor de um byte um conjunto de oito dígitos binários, podemos dividi-lo em dois grupos de quatro dígitos e representar cada um desses conjuntos com um algarismo do sistema hexadecimal.

Vamos pegar um byte com um valor aleatório para exemplificar. Pode ser 10100011, o qual dividimos em dois grupos de quatro dígitos para verificar qual é o dígito hexadecimal correspondente:

1010 = A 0011 = 3

Ou seja, o byte com valor que, em sistema binário, seria representado por 10100011, pode ser representado como A3 no sistema hexadecimal. Isso é muito mais simples, prático e visual.

O sistema hexadecimal é perfeito para representar o valor de um byte, pois esse valor sempre pode ser representado por dois dígitos hexadecimais, variando de 00 a FF.

Suponhamos que tenhamos uma sequência de 16 bytes de valor aleatório, o que, em termos computacionais, ainda é considerado pouco. Esses 16 bytes, em sistema binário, seriam representados como: 01101101 10100100 11101001 01001011 01100111 01101111 01010000 00010111 01110011 01100111 11010011 01010000 11101110 11111011 10011111 11101111.

Veja como isso pode começar a ficar complicado. Mas, se convertermos cada um para hexadecimal, teremos: 6D A4 E9 4B 67 6F 50 17 73 67 D3 50 EE FB 9F EF.

É por isso que, ao manipular bytes (e consequentemente bits), utilizamos o sistema hexadecimal.


Voltar aos tutoriais