sexta-feira, 3 de fevereiro de 2023

Bits e Bytes

O ponto de partida dos dados do computador — a menor e mais fundamental unidade — é chamado bit. A palavra "bit" é uma oportuna contração para uma expressão maior e mais complexa, binary digit (dígito binário). Estamos acostumados com os dez dígitos decimais, de 0 a 9, que são usados para expressar os números que usamos. Os dígitos binários, bits, são semelhantes, mas enquanto existem 10 dígitos decimais distintos, existem apenas dois valores de bit diferentes, zero e um, que são escritos, logicamente, como 0 e 1.

Bits e Bytes
Bits e Bytes — Imagem: Creative Commons CC0 1.0 Universal (CC0 1.0) Public Domain Dedication

Os bits 0 e 1 representam Desligado e Ligado, Falso e Verdadeiro, Não e Sim. Eles possuem o significado numérico óbvio que você poderia imaginar: o valor de bit 0 realmente significa zero, ou nada, e 1 significa um. É o conceito do bit que torna possível as máquinas de manipulação de informação — os computadores. Como é prático fazer com que as máquinas eletrônicas trabalhem com sinais de Ligado/Desligado com grande velocidade, é possível fazer com que as máquinas realmente trabalhem com informação, que realmente processem dados. No entanto, tudo isso depende da nossa capacidade de combinar a informação que é significativa para nós com o "modelo" de informação com o qual o computador pode trabalhar — e isso depende da nossa capacidade de construir informações reais a partir dos simples bits 0 e 1.

O senso-comum e alguma teoria matemática complexa nos dizem que um bit é a menor fatia de informação possível. Os bits servem como blocos de montagem com os quais podemos construir e manipular fatias de informação maiores e mais significativas. Por si mesmos, os bits geralmente não têm muito interesse. Somente quando juntamos os bits em padrões maiores é que obtemos algo mais útil e interessante.

A coleção mais importante e significativa de bits é o byte. Um byte são 8 bits, reunidos como uma única unidade. Os bytes são importantes para nós porque eles são a unidade prática principal dos dados do computador. Você sem dúvida está acostumado a ouvir sobre capacidade do computador ou capacidade de armazenamento de disco medida em bytes (grandes números de bytes são medidos em kbytes, megabytes, gigabytes e terabytes). É por isso que o byte é realmente a principal unidade de dados; um bit pode ser o menor grão de areia dos dados do computador, mas o byte é o tijolo, o bloco de montagem real dos dados.

Nossos computadores trabalham principalmente com bytes. Eles podem trabalhar com agregados maiores de bytes, e também podem entrar nos bits dentro de um byte, mas são projetados principalmente para manipularem e trabalharem com bytes.

Como já dissemos, existem oito bits em um byte. Isso significa que existem oito 0s ou 1s individuais, ou posições Ligado e Desligado, dentro de um byte. A matemática de combinações nos diz que, se tivermos oito coisas (bits) e cada uma delas puder existir em uma dentre duas formas (0 ou 1), então o número de combinações distintas de posições de bit em um byte é 2 elevado à oitava potência, que é 256. Assim, há 256 valores diferentes, ou combinações de bit, que um byte pode assumir.

Quase nunca estaremos interessados em algo menor do que um byte, mas haverá ocasiões em que precisaremos nos referir aos bits individuais dentro de um byte — particularmente quando entrarmos em alguns aspectos mais técnicos.

Os Bits dentro de Bytes e Palavras

Quando queremos ver os bits dentro de um byte, precisamos de uma forma de nos referirmos a eles. Isso é feito por meio da sua numeração do bit da direita (ou bit menos significativo) começando com o número zero, como mostra a Tabela 1.

Pode parecer estranho numerar os bits a partir da direita e começar numerando de zero, mas existe um motivo fundamental para fazer isso dessa forma. O número de identificação do bit é também a potência de 2 que representa o valor numérico do bit nesse local (quando interpretamos o byte, e os bits nele contidos, como um número). Por exemplo, o bit 3 tem o valor numérico de 8, e 2 à terceira potência é 8.

Um esquema semelhante aplica-se quando estamos vendo dois bytes juntos como uma palavra (uma "palavra" refere-se a 16 bits; ou seja, 2 bytes). Ao invés de numerar os bits nos bytes individuais separadamente, numeramos todos juntos, de 0 a 15. Mas isso só é feito quando estamos olhando para um par de byte e tratando-os como uma única unidade: uma palavra de 16 bits.

Os bits dentro de um byte.
Tabela 1 — Os bits dentro de um byte.

Um byte dentro do nosso computador é uma matéria-prima, que pode ser usada para qualquer coisa. Duas das coisas mais importantes que fazemos com os computadores é trabalhar com números e manipular texto escrito (como as palavras que você está lendo aqui). Os bytes são usados como blocos de montagem para dados de número e texto (caracteres).

Não há nada de fundamental sobre um byte, ou qualquer outro grupo de dados, que o caracteriza como número ou texto. Ao invés disso, isso é simplesmente uma questão do que queremos fazer com nossos computadores. Se estivermos trabalhando com números, então os bytes no nosso computador são tratados como números, e os padrões de bit dentro dos bytes recebem uma interpretação numérica. Por outro lado, quando queremos trabalhar com informação de texto de caractere, os bytes são interpretados como caracteres que compõem a informação de texto escrito. Cada byte representa um caractere de texto.

Basicamente, nós (por meio de programas que usamos) colocamos bytes para funcionarem como números ou caracteres, dependendo para que precisamos deles em certo momento. Com efeito, os bytes são como o barro que podemos moldar em números ou caracteres de texto para atender a nossos propósitos. Para isso, cada padrão de bits recebe um significado em nossos bytes. Os padrões não são únicos, no entanto, e não existe nada de intrínseco sobre o significado que damos a esses padrões. O mesmo padrão de bits poderia ser, por exemplo, a letra A ou o número 65, dependendo de como o estamos usando.

Antes de entrarmos em mais detalhes sobre a interpretação dos dados, precisamos discutir sobre um termo especial — "palavra". Embora o byte seja a unidade mais básica e conveniente para os dados do nosso computador, às vezes nossos computadores precisam trabalhar com os bytes em pares, de modo que estarão lidando não com oito bits, mas com 16 bits de cada vez. Precisamos de um nome para um par bytes que sejam reunidos numa única unidade, e esse nome, em terminologia de computador, é palavra. "Palavra", conforme a usamos aqui, é um termo técnico, significando 16 bits de dados; dois bytes reunidos. A palavra não tem nada a ver com o significado diário comum de "palavra", e você não deve confundir as coisas.

A propósito, se você já ouviu falar em computadores como sendo de tantos bits — 8 bits, 16 bits, 32 bits ou 64 bits —, essa é a medida de quantos dados ele pode manusear de uma só vez. Apesar disso, na maioria das vezes nossos computadores e os programas que os fazem trabalhar, estarão manuseando dados em bytes individuais, um de cada vez.

Finalmente, há mais quatro termos básicos com relação a dados de computador que precisamos analisar: o kbyte (geralmente chamado K), o megabyte (geralmente chamado mega), o gigabyte e o terabyte.

É sempre prático podermos falar sobre as coisas em números redondos, particularmente quando estamos lidando com grandes quantidades. Nossos computadores lidam com grandes números de bytes, de modo que as pessoas se acostumaram a usar formas práticas de manusear com os dados de computador em números redondos. Mas, sendo os computadores o que são — circuitos binários —, o número redondo que é usado é número redondo em binário, ou apenas ligeiramente um número redondo em nosso sistema decimal. Este misterioso número redondo é 1.024; isso significa 2 elevado à décima potência, de modo que é realmente um número redondo em binário. Ele também é razoavelmente próximo a um número redondo em decimal, 1.000, motivo pelo qual é tão usado.

Este número, 1.024, é chamado um K, ou às vezes kilo (emprestado do termo do sistema métrico para mil unidades). Assim, 1.024 bytes são referenciados como um kbyte, ou 1KB, ou às vezes apenas 1K. Quando você ouve alguém falando sobre 64K, eles querem dizer 64 vezes 1.024, ou exatamente 65.536.

Saiba que o termo K é usado ora livremente e ora precisamente. O significado preciso de K é exatamente 1.024;o sentido mais livre é 1.000 ou algo próximo a isso.

Há um termo relacionado que também precisamos conhecer — mega. Este refere-se a um K de K, 1.024 vezes 1.024, ou exatamente 1.048.576. Isso é aproximadamente 1 milhão, e é a isso que um megabyte se refere — cerca de 1 milhão de bytes de armazenamento. Chamamos o termo de mega quando estamos sendo casuais sobre ele. "Aquele arquivo têm 500 mega" — é o modo como as pessoas usam o termo.

Os dois últimos termos que precisamos saber se tornou importante na última década, quando os tamanhos de disco cresceram bastante. Giga refere-se a K e megabytes; ou seja, 1.024 vezes 1.024 vezes 1.024 bytes. Assim, 1 gigabyte é exatamente 1.073.741.824 bytes. Tera é um megabyte de megabytes, 1.024 vezes 1.024 vezes 1.024 vezes 1.024; 1 terabyte é exatamente 1.099.511.627.776 bytes. Resumindo:

  • 1 kbyte ou 1 KB = 2 à potência de 10 = aprox. 1.000
  • 1 megabyte ou 1 MB = 2 à potência de 20 = aprox. 1 milhão
  • 1 gigabyte ou 1 GB = 2 à potência de 30 = aprox. 1 bilhão
  • 1 terabyte ou 1 TB = 2 à potência de 40 = aprox. 1 trilhão

Siga-nos no Twitter.

Nenhum comentário:

Postar um comentário