Por que os computadores usam apenas 0 e 1?

15

Por que os computadores usam apenas 0 e 1? A adição de outros números, como 2 ou 3, não acelerará os computadores? Além disso, 2 e 3 podem ser usados ​​para reduzir o comprimento de bits de números inteiros (2 e 3 podem ser usados ​​para finalizar um número inteiro, de modo que o número 1 precise apenas de um dois bits.)

Por que o computador binário é mais preferido?

Mark Zio
fonte
1
Para torná-los pré-forma robusta na presença de ruído
Tensão de Spike

Respostas:

28

Não os aceleraria. Agora é fácil: para criar um portão lógico básico como um NAND, as entradas lógicas puxam a saída para Vdd ou para o aterramento. Se você usasse níveis intermediários, precisaria de FETs para níveis como Vdd / 2 ou Vdd / 4. Isso consumiria mais energia e exigiria componentes de trabalho mais precisos, que precisariam de mais tempo para chegar ao nível final. Se você colocasse mais valores em uma única unidade de dados, a precisão necessária aumentaria, assim como o tempo de acomodação. O sistema binário usado agora apenas empurra o FET para Vcc.

o exscape menciona imunidade a ruídos, e é a isso que se refere a precisão: quanto o sinal pode se desviar do nominal. Em um sistema binário que pode ser quase 50% ou mais de 0,5 V em um processador de 1,2 V. Se você usar 4 níveis diferentes, eles estão separados apenas a 300 mV, então a imunidade ao ruído não pode ser melhor que 150 mV, possível 100 mV.

Observe que existem dispositivos Flash que usam vários níveis para armazenar mais de 1 bit em uma única célula de memória, que é o Flash MLC (Multi-Level Cell). Isso não aumenta a velocidade, mas compacta mais dados em um único chip.

stevenvh
fonte
1
A imunidade ao ruído não é uma das principais razões? É pelo menos provavelmente o principal motivo do digital vs analógico.
Exscape 01/09/12
@exscape - atualizei minha resposta. Melhor agora? Obrigado pelo feedback
stevenvh
Por que não os acelera? Com mais de dois dígitos, podemos armazenar dados em um espaço menor, por exemplo, quatro em binário = 100 - requer 3 locais físicos - no ternário quatro = 11 - requer dois locais físicos. Portanto, no sistema ternário, o processador precisaria processar um número menor de registros, o que o tornaria relativamente mais rápido.
user31782
5

O armazenamento e computação em nível binário são muito baratos, pequenos e rápidos. Este texto pode ser simplista demais, mas acho que chega ao ponto:

A leitura de uma célula de memória binária consiste em apenas um comparador simples fazendo seu trabalho: alto / baixo. A computação se resume a tabelas muito simples de quatro combinações de entrada (00, 01, 10, 11) e saída de dois bits (0 e 1) principalmente.

Agora, se você precisar comparar vários valores possíveis, é necessário que haja uma configuração de comparador mais complicada, que é mais lenta ou muito maior que a simples. Além disso, as tabelas de computação se tornam maiores, portanto, a computação também é mais complicada. Embora possamos economizar uma pequena área para diminuir o armazenamento, tudo o mais, como computação e transporte, se tornaria exponencialmente mais difícil e lento.

Como discutido em outra resposta, toda a configuração também teria que ser construída com mais precisão para manter a imunidade a ruídos.

Todas essas coisas combinadas significam: é muito mais eficiente colocar bilhões de portas binárias em um chip do que apenas meio bilhão de portas quaternárias.

Posipiet
fonte
2

Ande pela sua casa ou, se você não tiver nenhum desses tipos de comutadores, vá a uma loja de ferragens, veja como é fácil ou difícil colocar e deixar o comutador no meio de um desligado, adicionando um terceiro estado, agora tente para ver se você não pode fazer posições distintas. Outro exemplo: pegue uma lata de coca-cola ou uma garrafa de cerveja ou qualquer outro objeto cilíndrico e coloque-o de lado, depois balanceie uma bola de gude na parte superior, quão fácil, rápido e estável é esse balanceado de mármore?

usar um transistor como comutador é muito fácil, conduza-o para um trilho ou outro, fácil de detectar a saída. Agora, se você tentar fazer com que todos os transistores não estejam desligados, mas calibrados para diferentes intervalos um para cada estado (além de tudo ligado e desligado, dois estados intermediários, como você sugere). Agora, todo o sistema precisa ser muito mais preciso, caro, sujeito a erros e falhas, etc.

Basicamente, isso foi tentado, ou alguns computadores antigos tentaram ser decimais (10 níveis de tensão), falharam. seja um transistor de tubo ou silício, é significativamente mais fácil, mais barato, mais rápido e mais confiável usar o transistor como um comutador e ter apenas dois estados, trilho inferior e trilho superior.

old_timer
fonte
Eu tenho um botão de volume no meu sistema de música que varia de 1 a 10. É muito fácil escolher o volume exato. Eu acerto da primeira vez toda vez que o uso. Então, pela sua lógica, seria melhor ter transistores decimais ao que parece.
Intrepidis
1
Vários botões nos aparelhos de som têm dois sinais codificados em cinza, binários, e as alterações de estado indicam um aumento ou diminuição da direção (codificador rotativo). Outros são analógicos com um ADC que digitaliza a posição em uns e zeros. Um muito velho ou muito purista pode não ser digital e alimentar esse divisor de tensão diretamente no amplificador analógico. Mas eu suspeito que a maioria não, normalmente você pode dizer.
old_timer
2

Claramente isso pode ser feito. Todo o armazenamento digital † neste planeta é de 4 estados. O DNA codifica os dados como um dos quatro pares de bases por bit, organizados em bytes de 3 bits cada. Cada byte, portanto, pode ter 64 estados diferentes.

 

† Exceto por uma fração infinitesimal criada artificialmente por uma das formas de vida sencientes.

Olin Lathrop
fonte
@ Dim: Sim, mas ainda existem quatro combinações possíveis. Pegue um dos dois fios isoladamente e você tem quatro opções em cada local, A, G, C ou T. O fato de o outro fio ser determinado não é relevante. Se o que você diz é verdade, haveria apenas 8 opções por "byte", quando houver realmente 64, embora nem todos esses códigos sejam usados ​​e alguns sejam redundantes. Curiosamente, mitocôndrias e cloroplastos têm codificações diferentes de bytes para aminoácidos que o nosso DNA nuclear.
Olin Lathrop
@ Dmit: Dito de outra forma, AT é diferente de TA e CG é diferente de GC.
Olin Lathrop
Você está certo, desculpe.
Dmitry Grigoryev
0

O sistema de números binários é composto por 0 e 1, como você sabe. Outros sistemas numéricos populares ou usados ​​anteriormente foram o sistema de números Octal, Hexadecimal e Decimal. Binário, Octal, Decimal e Hexadecimal têm 2, 8, 10 e 16 dígitos, respectivamente. Para implementar circuitos lógicos, o sistema binário é um pouco menos complexo. Por quê? Isso porque podemos confiar apenas em dois dígitos para construir os circuitos. O design do circuito é comparativamente mais fácil de implementar. O uso do sistema de números binários no projeto de circuitos consome menos tempo, é menos complexo, requer menos elementos do circuito e, em todos os aspectos, é mais acessível do que outros. Sistemas octais e hexadecimais foram usados ​​anteriormente no design de computadores. Mas eles eram complexos. Os circuitos também eram complexos. Então, os engenheiros começaram a usar o sistema binário para obter as vantagens mencionadas anteriormente.


fonte
Os sistemas AFAIK, octal e hexadecimal não foram utilizados pelo hardware. Eles foram e ainda são (até octais) usados ​​pelo software, porque convenientemente empacotam vários bits em uma unidade. Por exemplo. um dígito octal é exatamente três bits e um hexágono (dígito hexadecimal) é exatamente 4 bits. O que você prefere dizer 0b11111111 ou 0xff?
Oskar Skog
0

Por que um sistema binário é usado em vez do sistema decimal

Boa pergunta. Na verdade, existem computadores que não usam o sistema binário. Esses computadores, construídos a partir de amplificadores operacionais, são chamados de computadores ANALOG . Os computadores analógicos podem adicionar, subtrair, multiplicar e dividir e até fazer alguns tipos de integração.

Por que o computador binário é mais preferido?

Computadores binários são mais precisos, às vezes. Além disso, computadores binários (como meu laptop) podem ser milhões de vezes mais complexos. Eu acho. Os computadores analógicos precisam ser operados em determinadas condições limitadas e fornecer respostas limitadas. Você pode tornar um computador digital tão complexo quanto desejar.

Baruch Atta
fonte
-2

Além das outras respostas, desenvolvi circuitos digitais nativos para lógica trinária. Eu acho que existe um conjunto completo que roda tão rápido quanto os circuitos lógicos binários (o que significa que obtemos boos de desempenho de 1,5x); no entanto, tem um custo alto. Os circuitos queimam energia no estado ocioso (não apenas ao alternar) e, portanto, você tem tanto calor para despejar que não vale a pena para as CPUs modernas. Mal poderia se beneficiar de um ônibus principal.

Joshua
fonte