Sistema binário: bits versus informações
Entenda como os computadores conseguem, por meio do sistema binário, armazenar as complexas representações humanas em amontoados de zeros e uns.
09/11/2023
Introdução
Se você é usuário de computador já deve ter se perguntado inúmeras vezes como eles armazenam fisicamente todas as nossas informações em um sistema binário. Como imagens tão ricas em cores, formas e detalhes conseguem ser carregadas e interpretadas a partir de um amontoado de bits armazenados eletronicamente? Qual seria esse segredo por trás de toda a tecnologia de representação da informação por meio de código binário?
O grande segredo da computação está na técnica que existe entre a representação mais simples e primitiva da informação (os bits) e a representação mais complexa da informação apresentadas aos nossos olhos.
Mas como será que isso ocorre? Como os dados armazenados de maneira tão primitiva conseguem ser interpretadas como simbologias humanas tão complexas e cheias de detalhes?
Para compreender como isso ocorre, precisamos primeiro entender o motivo pelo qual os computadores usam o sistema binário para representar as suas informações.
A limitação do sistema numérico decimal
Em nossas relações humanas usamos a simbologia dos números para representar quantidades. Quando queremos representar uma idade, contar quantidades de produtos, calcular pagamentos em dinheiro ou realizar qualquer tipo de operação que envolva valores.
Essa simbologia faz uso de um sistema denominado “sistema numérico decimal”, o qual utiliza dez símbolos para representar quantidades:
Apesar de serem apenas dez símbolos, eles nos permitem representar simbologias para todos os tipos imagináveis de quantidades, bastando apenas acrescentar mais símbolos à esquerda da representação. Observe na ilustração abaixo como podemos sempre progredir a contagem adicionando mais símbolos à esquerda.
O grande problema da computação é que o sistema eletrônico do computador não consegue representar estes dez símbolos. Não havendo possibilidade de realizar os cálculos e operações de informações eletronicamente por meio de outro sistema que não seja o sistema binário.
Quando o computador foi concebido, houve a necessidade de utilizar um sistema que conseguisse fazer todas as operações com apenas dois símbolos, pois esse era o limite máximo que um circuito eletrônico conseguia representar (um para a PRESENÇA de pulso elétrico e outro para a AUSÊNCIA).
O sistema binário de representação da informação
Para solucionar o problema de não poder utilizar o sistema decimal, a computação se apropriou do “sistema numérico binário”, que é um sistema numérico que utiliza apenas dois símbolos, 0(zero) e 1(um), para fazer suas representações de quantidades:
Mesmo possuindo apenas dois símbolos, o sistema ainda permitia representar todos os tipos imagináveis de quantidades. Bastava apenas manter a mesma regra de acrescentar mais símbolos à esquerda da representação.
Observe na ilustração abaixo como o sistema binário sempre permite progredir a contagem das quantidades adicionando mais símbolos à esquerda.
Perceba na ilustração acima que, no sistema binário, mesmo sendo um pouco mais precoce a adição de novos símbolos à esquerda (quando comparado com o sistema decimal) a regra se mantém a mesma. Desta forma, apenas crescendo o número cada vez mais, conseguimos representar todas as quantidades possíveis.
Portanto, é dessa forma que o computador consegue armazenar os seus dados e realizar cálculos matemáticos. Utilizando um sistema muito estranho e peculiar denominado “sistema numérico binário”. Mas ainda precisamos entender como ele consegue transformar todas essas informações binárias em informações humanas, tais como: imagens, musicas, documentos, etc.
Equivalência entre o sistema binário e o sistema decimal
Já entendemos como funciona o sistema decimal e o sistema binário de representação da informação. Mas qual a relação de equivalência entre eles? Como um computador representa um valor decimal específico de forma binária e vice-versa?
A regra é bem simples, começamos a partir da representação do valor 0(zero) em ambos os sistemas. A partir de então, vamos progredindo a representação das quantidades e realizando o incremento dos símbolos à esquerda em cada um dos sistemas numéricos. Observe que, para cada número decimal, existe uma representação binária que utiliza combinações de 0(zeros) e 1(uns).
Representação no sistema decimal | Representação no sistema binário |
---|---|
0 | 00000000 |
1 | 00000001 |
2 | 00000010 |
3 | 00000011 |
4 | 00000100 |
5 | 00000101 |
6 | 00000110 |
7 | 00000111 |
8 | 00001000 |
9 | 00001001 |
10 | 00001010 |
11 | 00001011 |
Mas nem tudo são números! A maior parte das informações que um computador mostra são caracteres textuais, não é verdade? Como seria então a representação das palavras em código binário?
A resposta para essa pergunta se resume a duas palavras: tabela ascii (pronuncia-se “asqui”). A tabela ascii é uma tabela que mapeia números para caracteres, de maneira que cada caractere possui um número diferente associado e ele. Por exemplo: a letra Z(maiúscula) é representada na tabela ascii pelo número 90(decimal). E como o número 90 é representado pelo número 0101 1010 no sistema binário, fica fácil para o computador poder armazená-lo.
Segue abaixo alguns exemplos de representações binárias para caracteres textuais:
Caractere | Número correspondente | Representação binária |
---|---|---|
a | 97 | 01100001 |
b | 98 | 01100010 |
c | 99 | 01100011 |
d | 100 | 01100100 |
) | 40 | 00101000 |
( | 41 | 00101001 |
* | 42 | 00101010 |
+ | 43 | 00101011 |
Agora veja um exemplo da representação da pequena frase “Hoje fez sol.” em código binário.
1.01001000 01101111 01101010 01100101 00100000
2.01100110 01100101 01111010 00100000 01110011
3.01101111 01101100 00101110
Com esses exemplos fica mais fácil entender como os computadores lidam com as informações humanas. Mas há muito mais complexidade do que isso. A representação das informações não se limita apenas à tabela ascii e às conversões de decimal para binário. Existem milhares de algoritmos e técnicas de conversão de informações dentro do sistema binário, como por exemplo as conversões de bits para sinais sonoros (realizados durante a leitura de um arquivo de música) ou a conversão de bits para cenários tridimensionais (realizados durante a execução de jogos digitais).
O importante é entender que a computação é uma ciência recente e a cada ano surgem diversas novas técnicas e formas para representação das informações.
Já pensou se um dia a tecnologia evolui a ponto de permitir que os circuitos eletrônicos possam representar mais símbolos e deixem de usar o sistema binário? Seria uma verdadeira revolução tecnológica!
David Santiago
Mestre em Sistemas e Computação. Graduado em Sistemas de Informação. Professor de Linguagem de Programação, Algoritmos, Estruturas de Dados e Desenvolvimento de Jogos Digitais.