Clique aqui para voltar à página inicial  http://www.novomilenio.inf.br/ano97/cpmcom08.htm
Publicado originalmente pelo autor no caderno Informática
do jornal A Tribuna de Santos, em 23 de setembro de 1997
Última modificação em (mês/dia/ano/horário): 05/20/00 22:31:30
POR DENTRO DO COMPUTADOR - 8
Bits e Bytes 

Também as letras e os símbolos do alfabeto são transformados em código binário ou hexadecimal. Por exemplo, definiu-se que a letra A maiúscula seria representada pelo número decimal 65, equivalente ao 41 hexadecimal. A letra [A] minúscula é representada pelo decimal 97, equivalente ao hexadecimal 61. Um simples [Oi] é passado para o computador, em linguagem hexadecimal, como [4F 69], numa linguagem de baixo nível como o Assembler. E essa linguagem ainda vai transformar esse código numa sucessão de zeros e uns: [01001111  01101001].

Repare que temos aí dois códigos de oito bits cada um: o bit é o zero ou um, e o código de oito bits é chamado de byte). Na verdade, o byte tem ainda um nono bit, chamado de bit check ou bit de paridade, que faz um controle dos demais, para detectar erros na transmissão dos dados (um determinado cálculo envolvendo os outros bits desse byte deve resultar em um ou zero. Se ao refazer esse cálculo o resultado estiver diferente, o computador acusará um erro na transferência dos dados. A chance de o erro ser detectado assim é de 50%, mas é melhor que nada, e há outros métodos complementares).

Imagine a loucura que seria criar um programa multimídia fazendo todas essas conversões! Por isso, foram sendo criadas, aos poucos, linguagens de nível mais alto (quanto mais alto o nível, mais próximo da linguagem humana). O Basic permitia ao programador usar termos básicos do idioma inglês para dar comandos (Run = rode, Return = volte, if/then = se/então, go = vá para), que seriam automaticamente interpretados pela linguagem e transformados no formato binário.

Linguagens - Com a evolução, surgiram linguagens especializadas, como o Cobol para a área de negócios, o Pascal para a área científica, o Logo para uso educacional e muitas outras. Hoje você já consegue até programar visualmente, clicando aqui e ali, arrastando e soltando, com o uso das linguagens de altíssimo nível, como o Visual Basic, conhecidas como orientadas a objeto (você se preocupa com o objetivo do programa, como quer que fique a tela de apresentação dos dados, e deixa que o programa faça toda a codificação das instruções para você).

Mas não se iluda: por trás do Windows, por exemplo, está a linguagem C+, que se encarrega de fazer a tradução para os bits zero e um. Junto com esses dados, também vão para o processador informações codificadas sobre posição (endereçamento) e instruções codificadas, de acordo com padrões predeterminados que permitirão ao chip (processador) saber o que deve fazer com essa enxurrada de bits.

Lógico, quanto mais tradução precisar ser feita, mais demorado fica rodar o programa. Por isso é que os programadores de jogos ainda hoje trabalham com o Assembler nos pontos mais críticos do programa, onde é necessária maior velocidade, e torcem o nariz para o Windows, que exige muita tradução de comandos. Você talvez nem perceba muito, porque os computadores pessoais estão bastante rápidos, e compensaram razoavelmente bem essa diminuição na velocidade...