Minilua

Como os computadores nos entendem? #1

Os computadores são máquinas incríveis, que facilitam a vida humana das mais variadas maneiras. Porém existe um grande problema: Eles não entendem humanos.

O que eles entendem

Hoje em dia, os computadores são máquinas altamente complexas, capazes de realizar tarefas incríveis, como hospedar sites, manipular imagens e até mesmo fazem descobertas em ramos, como a matemática, que um ser humano normal levaria séculos. Tudo isso porque nós somos capazes de programa-los.

Todo esse poder esconde uma verdade que poucos conhecem. Os computadores são burros e só entendem dois números: 0 e 1. Seja em seu smartphone ou em seu computador de mesa, a mesma coisa ocorre. Os dois mexem com zeros e uns, e nada mais!

Esses dois números representam, na verdade, tensões elétricas. O 1 normalmente é o valor de 5 volts e o 0 fica para valores menores, mas que não chegam a zero volts, afinal, sem uma corrente a coisa toda para. Cada uma desses números é chamado de bit e um grupo de oito deles formam um byte.

Sua velocidade de internet

Bits e bytes na sua internet: um fato muito interessante sobre os bits e bytes envolve a velocidade da internet. Quando contratamos uma empresa provedora, ela anuncia velocidades de, por exemplo, 10 Megas. Mas quando vamos fazer um download, a velocidade máxima fica em torno de 1,2 Mega por segundo. Isso tem tudo a ver com os bits e bytes.

Para parecer mais potente, as empresas de Internet anunciam suas velocidades de MegaBITS, mas os computadores normalmente tratam os dados em formas de BYTES. A diferença entre essas duas medidas é que um byte é composto de oito bits. Por isso, quando contratamos uma internet, temos que dividir a velocidade anunciada por oito para termos o valor real de nossa conexão. Por exemplo, uma internet anunciada como 15 Mega, vai te permitir, no máximo, velocidades de download perto de 1,8 megabytes.

Mas voltando ao entendimento entre humanos e computadores, existe uma grande dúvida: como que esses zeros e uns se transformam em sistemas operacionais, navegadores e todo tipo de programa complexo?

Falando com as máquinas

Os computadores entendem apenas algo chamado de linguagem de máquina, que são os zeros e uns. Mas para seres humanos esse tipo de coisa é muito complicado. Um programa moderno tem bilhões desses dois números. Imagine o quanto difícil seria ter que escrever eles apenas dessa maneira, demoraria anos para fazer qualquer coisa.

Na tentativa de resolver esse problema, a humanidade criou algo chamado linguagem de programação, que nada mais é que uma língua mais fácil de ser compreendida por nós e que pode ser traduzida para que o computador também a entenda.

Quando queremos que um computador mostre alguma coisa na tela, na linguagem C, nós escrevemos:

Printf (“Mostre isso na tela”) ;

Esse simples comando faz com que a frase “Mostre isso na tela” de fato apareça na tela do computador. Agora se tivéssemos que escrever esse mesmo comando com zeros e um para que o computador entendesse, seria algo mais ou menos assim:

01010000 01110010 01101001 01101110 01110100 01100110 00100000 00101000 00100010 01001101 01101111 01110011 01110100 01110010 01100101 00100000 01101001 01110011 01110011 01101111 00100000 01101110 01100001 00100000 01110100 01100101 01101100 01100001 00100010 00101001 00100000 00111011

O pior é que um simples zero fora do lugar pode fazer com que o código perca todo o sentido. Assim, as linguagens de programação facilitam a vida de todos, pois além de tornar o código mais legível, elas também possuem programas que ajudam na hora de fazer a correção.

É dessa maneira que os computadores entendem os humanos, pois usando linguagens de programação é possível passar alguma ordem para o computador sem que tenhamos que mexer com zeros e uns.