É Todos os 1s e 0s: Como os Computadores Mapa do Mundo Físico

O número “12” não é o valor de 12 em uma caixa de ovos. A palavra “pedra” não é a pedra que se encontra lá fora. Em vez disso, são meramente símbolos, criados a partir de uma coleção de outros símbolos, que representam conceitos específicos que mapeiam bem o mundo ao nosso redor. São ferramentas que nos dão a capacidade de quebrar o mundo, uma massa de matéria, em pedaços manejáveis. Nós os usamos, não porque eles sejam objetivamente “verdadeiros”, mas porque eles são úteis no cumprimento de nossos objetivos, dado um conjunto de restrições físicas.

em essência, o uso de computadores binários não é mais complicado do que isso. Apenas outro sistema criado pelo homem para alcançar algum objetivo com um certo conjunto de restrições em mente.

Antes de pensar sobre como os computadores usam o sistema binário, é útil pensar sobre por que usamos o sistema denário. Nosso objetivo é ser capaz de representar valores numéricos e comunicar esses valores aos outros. Podemos imaginar um sistema no qual tínhamos um novo caráter para cada número imaginável. Por exemplo, 156 seria na verdade um tipo de linha squiggly com um gancho em cima, para não ser confundido com o símbolo de 38, que seria representado por um círculo com uma linha através do topo. Essa seria a maneira mais eficiente de representar valores, pois você só precisaria de um personagem de cada vez para representar mesmo os maiores números, em vez de uma cadeia de caracteres. Mas não seria o mais prático. Imagine uma professora do 1º Ano testando seus alunos sobre a diferença entre o personagem que representa 1.589 e o personagem que representa 2,000,478 e todos os personagens no meio.

claramente, há um limite para quantos caracteres queremos ter disponível em nosso sistema de representação. Então e a extremidade oposta do espectro: um sistema de contagem com um único caráter disponível? Claro, isso é possível.agora mostre — me 2,000,478 usando um sistema base-1. É evidente que isso também é impraticável.de repente, o sistema base-10 faz sentido não como o único sistema numérico disponível, mas um bom ajuste dada a nossa necessidade de praticidade, elegância e eficiência. Com apenas 10 availible caracteres que pode representar o número 2,000,478 facilmente multiplicando-se o valor numérico da coluna para a próxima potência de 10, conforme demonstrado abaixo:

  • 2 x 10⁶= 2,000,000
  • 0 x 10⁵= 0
  • 0 x 10⁴= 0
  • 0 x 103= 0
  • 4 x 102 = 400
  • 7 x 101 = 70
  • 8 x 10⁰ = 8

SOMA = 2,000,478

o Que é um grande sistema de representação de valores. Porque é que os computadores não usam esse sistema?

a Partir de Denary para Binário

correntes Elétricas estão em execução (abrir/on) ou não (fechado/desligado), o que significa que tem dois caracteres de valor disponível para nós: 1 e 0. Dadas essas restrições, podemos usar o mesmo método que usamos para escolher o sistema base-10 para encontrar um sistema de representação que os computadores podem usar.Com apenas dois estados disponíveis para representar caracteres diferentes, a única alternativa ao binário seria um sistema de contagem. Mas para representar o valor 255 num sistema de contagem precisaríamos de 255 dígitos. São 255 transístores” on ” para representar um número relativamente pequeno. O binário só precisa de 8 para alcançar o mesmo objetivo.

Aqui está como binário faz isso.

a base 2 system works similarly to the base-10 system but instead of multiplying the value of each column by the next multiple of 2, they are instead multiple by the next multiple of 2. Por exemplo, o número binário 10100 pode ser traduzido em um número de 10 base simplesmente adicionando os valores calculados abaixo junto:

  • 1 x 2⁴ = 16
  • 0 x 23 = 0
  • 1 x 22 = 4
  • 0 x 21 = 0
  • 0 x 2⁰ = 0

a Partir de Bits para Bytes

a Partir daqui, podemos começar a construir uma convenção de como usar este sistema numérico para mapear o mundo em torno de nós em pulsos elétricos de ligar e desligar. Primeiro, vamos dar aos nossos personagens um nome: dígitos binários ou Bits para abreviar, a menor unidade de dados em um computador.

em seguida, vamos determinar quantos bits serão necessários para representar um valor não-numérico, como uma letra ou um caractere especial. Este processo é tão inventado quanto o processo de escolher um sistema numérico para representar valor. Temos certos objetivos, certas ferramentas pré-estabelecidas, e um desejo geral de elegância e eficiência. Há 101 caracteres num teclado, o que significa que teremos de representar 101 em binário como o valor máximo. Acontece que 101 na base-10 é o número 01100101 em binário. É um requisito básico de 7 transístores disponíveis se quisermos mapear cada chave para um valor numérico específico. Mas e se houver outros personagens que queremos representar? Com 7, tudo ligado, só representamos até o número 127 na base-10. Mais vale dar-nos mais um pouco para trabalhar.

E assim, temos bytes, a unidade de base para a medição de dados, disse representar, no mínimo, um único caráter. Podemos agora representar os valores de 0-255 (000000-11111111).

Como computadores só podem compreender números, a American Standard Code for Information Interchange (ASCII), foi estabelecida a atribuir a cada caractere no teclado de um determinado valor numérico, como mostrado abaixo:

Como um exemplo, aqui está como você poderia representar a frase “Olá, Mundo!”in binary:

  • Text: Hello World!números ASCII: 072 101 108 108 111 032 087 111 114 108 100 033ável li>
  • : 00110000 00110111 00110010 00100000 00110001 00110000 00110001 00100000 00110001 00110000 00111000 00100000 00110001 00110000 00111000 00100000 00110001 00110001 00110001 00100000 00110000 00110011 00110010 00100000 00110000 00111000 00110111 00100000 00110001 00110001 00110001 00100000 00110001 00110001 00110100 00100000 00110001 00110000 00111000 00100000 00110001 00110000 00110000 00100000 00110000 00110011 00110011

Como texto, imagens, também precisa ser convertido para binário. Nós podemos representar imagens em binário dividindo uma imagem em uma grade de pixels e dividindo cada cor de pixels em uma combinação de 3 cores (vermelho, verde e azul), tipicamente referido como esse valor RGB pixels. O valor máximo que cada uma dessas cores pode ter individualmente é 255 e o mínimo é 0, o que significa que cada valor de cores para cada pixel pode ser representado por 1 byte para um total de 3 bytes por pixel.

Como um exemplo, podemos representar a sombra do verde pixel mostrado acima no local (1,0) em RGB e binário abaixo:

  • Valores RGB: (6, 250, 7)
  • Binário: 00000110, 11111010, 00000111

por último, podemos representar o som dados binários usando bem a “amostragem”. Graficando as ondas sonoras de um som gravado e observando os valores das alturas das ondas em intervalos regulares, podemos então converter esses valores para binário e então recriar essa onda sonora usando esses valores binários em um momento posterior.

Por exemplo, a onda de som acima tem um valor decimal de 8 no intervalo de tempo de 1, dando a ele um valor de byte de 00001000.

do binário à lógica

Existem muitas maneiras diferentes de armazenar dados binários, incluindo cartões perfurados, fita magnetizada, discos ópticos, etc. Todos usam esta convenção de representar valores em um sistema base-2. No entanto, representar o mundo em binário é apenas metade da batalha. A outra metade está a operar. Indique os operadores bitwise.

operadores Bitwise operam em bits individuais e são as operações aritméticas fundamentais que uma CPU usa. Cada operador bitwise tem um conjunto de regras pré-determinadas que produzem uma determinada saída dada duas entradas.

operadores bit a Bit e suas correspondentes saídas

Você pode reconhecer essas ferramentas como aqueles que são parte de um sistema que usamos muito antes de eletricidade foi mesmo descoberto: a lógica. Enquanto um operador bitwise pode parecer estranho, eles são derivados de operadores lógicos e, como sistemas numéricos, nós usamos operadores lógicos como operadores bitwise porque eles servem nossos propósitos de forma eficiente e elegante dadas as nossas restrições físicas atuais.

nosso objetivo é tomar dois valores diferentes representados por dois caracteres possíveis produzir um novo valor de acordo com um conjunto de regras determinísticas. Você pode ver como o nosso sistema de lógica proposicional se traduz bem em Lógica Computacional abaixo:

pense sobre o e operador no contexto desta frase: “O Bob almoçou e foi ao cinema.”Se a primeira afirmação é verdadeira e a segunda afirmação é falsa, então a sentença é falsa.

T & F = F

Mas se a primeira afirmação é verdadeira e a segunda afirmação é verdadeira, então a afirmação é verdadeira.

T &T = T

E o operador: “Bob comeu o almoço ou Bob foi ao cinema”. Se a primeira afirmação é verdadeira e a segunda afirmação é falsa, a sentença ainda é verdadeira.

T v F = T

mas se ambos são falsos então a sentença é falsa.

F V F = F

agora substitua os t’s e F’s por 1’s e 0’s e temos os blocos de construção para manipular binários para criar novas cadeias de binários e, portanto, novas representações de valores. Nós usamos esses operadores bitwise em portas lógicas, switches eletrônicos que usam esta lógica para produzir novos valores. Imagine o seguinte cenário:

Você precisa iluminar o LED inferior direito em uma calculadora para começar a mostrar os números 0, 1, 3, 4, 5, 6, 7, 8, e 9, mas não o número 2. Isso significa os números binários. 00, 01, 100, 101 110, 111, e 1001 mas não 10 precisam produzir um único sinal ON (1). Para transformar esses sinais elétricos em um único sinal ON para que LED nós podemos acorrentar 3 ou portas lógicas e uma porta não lógica juntos para garantir que esses valores resultam em um 1 ou um 0. Abaixo, você pode ver um exemplo do número 7 representado em binário (1110) resultando em um único sinal ON, o que resulta na iluminação LED inferior direita para cima.

Quantum Computing

The only exception to this rule of representing the world in 1’s and 0’s in computers lies in Quantum computing.

Quantum computing attempts to use the “spooky” nature of sub-atomic particles to represent represent data. Fotões, por exemplo, têm sido mostrados para exibir comportamento aparentemente contraditório, representando vários estados ao mesmo tempo. O comportamento multi-estado nos dá valores extras para brincar com além do típico on/off que geralmente temos com sinais elétricos. Em vez de usar um bit para armazenar dados, computadores quânticos usam qubits, que podem ser um 1 ou 0 ou ambos ao mesmo tempo.



Deixe uma resposta

O seu endereço de email não será publicado.