Pourquoi les ordinateurs n'utilisent que 0 et 1?

15

Pourquoi les ordinateurs n'utilisent que 0 et 1? Est-ce que l'ajout d'autres numéros tels que 2 ou 3 accélère les ordinateurs? En outre, 2 et 3 peuvent être utilisés pour raccourcir la longueur de bits des entiers (2 et 3 peuvent être utilisés pour terminer un entier, de sorte que le nombre 1 n'a besoin que d'un deux bits.) ..

Pourquoi l'ordinateur binaire est-il préféré?

Mark Zio
la source
1
Pour les faire préformer solidement en présence de bruit
Voltage Spike

Réponses:

28

Cela ne les accélérerait pas. Maintenant, c'est facile: pour créer une porte logique de base comme une NAND, les entrées logiques tirent la sortie vers Vdd ou vers la masse. Si vous utilisiez des niveaux intermédiaires, vous auriez besoin de FET pour atteindre des niveaux comme Vdd / 2 ou Vdd / 4. Cela consommerait plus d'énergie et nécessiterait des composants plus précis, ce qui nécessiterait plus de temps pour s'installer au niveau final. Si vous remplissiez plus de valeurs dans une seule unité de données, la précision requise augmenterait, tout comme le temps de stabilisation. Le système binaire utilisé maintenant pousse simplement le FET à Vcc.

exscape mentionne l'immunité au bruit, et c'est à cela que se réfère la précision: à quel point le signal peut-il s'écarter de la valeur nominale. Dans un système binaire qui peut atteindre près de 50%, ou plus de 0,5 V dans un processeur 1,2 V. Si vous utilisez 4 niveaux différents, ils ne sont séparés que de 300 mV, alors l'immunité au bruit ne peut pas être meilleure que 150 mV, éventuellement 100 mV.

Notez qu'il existe des périphériques Flash qui utilisent plusieurs niveaux pour stocker plus de 1 bit dans une seule cellule de mémoire, c'est le Flash MLC (Multi-Level Cell). Cela n'augmente pas la vitesse, mais contient plus de données sur une seule puce.

stevenvh
la source
1
Mais l'immunité au bruit n'est-elle pas l'une des principales raisons? C'est au moins probablement la principale raison du numérique contre l'analogique.
exscape
@exscape - a mis à jour ma réponse. Mieux maintenant? Merci pour les commentaires
Steven
Pourquoi ne les accélère-t-il pas? Avec plus de deux chiffres, nous pourrions stocker des données dans un espace plus petit, par exemple quatre en binaire = 100 - nécessite 3 emplacements physiques - en ternaire quatre = 11 - nécessite des emplacements physiques de remorquage. Ainsi, dans le système ternaire, le processeur devrait traiter un nombre moindre de registres, ce qui le rendrait relativement plus rapide.
user31782
5

Le stockage et le calcul au niveau binaire sont très bon marché, petits et rapides. Ce texte est peut-être trop simplificateur, mais je suppose qu'il va droit au but:

La lecture d'une cellule de mémoire binaire consiste en un seul comparateur simple qui fait son travail: haut / bas. Le calcul se résume à des tableaux très simples de quatre combinaisons d'entrée (00, 01, 10, 11) à deux bits de sortie (0 et 1) principalement.

Maintenant, si vous devez comparer plusieurs valeurs possibles, il doit y avoir une configuration de comparateur plus compliquée qui est soit plus lente soit beaucoup plus grande que la simple. De plus, les tables de calcul deviennent plus grandes, donc le calcul est également plus compliqué. Bien que nous puissions économiser une petite zone pour réduire le stockage, tout le reste, comme le calcul et le transport, deviendrait exponentiellement plus difficile et plus lent.

Comme discuté dans une autre réponse, l'ensemble de la configuration devrait également être construit de manière beaucoup plus précise pour conserver l'immunité au bruit.

Toutes ces choses combinées signifient: il est beaucoup plus efficace de placer des milliards de portes binaires sur une puce que juste un demi-milliard de portes quaternaires.

Posipiet
la source
2

Faites le tour de votre maison, ou si vous n'avez aucun de ces types de commutateurs, allez dans une quincaillerie, voyez comment il est facile ou difficile de mettre et de laisser le commutateur au milieu de sur off, en ajoutant un troisième état, essayez maintenant pour voir si vous ne pouvez pas faire pour des postes distingués. Un autre exemple, prenez une canette de coca ou une bouteille de bière ou tout autre objet cylindrique et posez-le sur le côté, puis équilibrez un marbre sur le dessus, à quel point ce marbre équilibré est-il facile, rapide et stable?

l'utilisation d'un transistor comme interrupteur est très facile, conduisez-le sur un rail ou l'autre, facile à détecter la sortie. Maintenant, si vous essayez de faire en sorte que tous les transistors ne soient pas fermés, mais plutôt calibrés sur différentes plages, un pour chaque état (en plus de tous les allumés et éteints, deux états intermédiaires comme vous le suggérez). Désormais, l'ensemble du système doit être beaucoup plus précis, coûteux, sujet aux erreurs et aux pannes, etc.

Fondamentalement, cela a été essayé, un ou certains des premiers ordinateurs ont essayé d'être décimaux (10 niveaux de tension), cela a échoué. que ce soit un transistor à tube ou du silicium, il est beaucoup plus facile, moins cher, plus rapide, plus fiable d'utiliser le transistor comme interrupteur et de n'avoir que deux états, rail inférieur et rail supérieur.

old_timer
la source
J'ai un bouton de volume sur mon système musical qui va de 1 à 10. C'est très facile de choisir le volume exact. Je le fais bien la première fois chaque fois que je l'utilise. Donc, selon votre logique, il serait préférable d'avoir des transistors décimaux, semble-t-il.
intrepidis
1
Un certain nombre de boutons sur les chaînes stéréo ont deux signaux codés en gris, binaires, et les changements d'état indiquent une augmentation ou une diminution de la direction (encodeur rotatif). D'autres sont analogiques avec un ADC qui numérise la position en uns et zéros. Un très vieux ou très puriste pourrait ne pas passer au numérique et alimenter ce diviseur de tension directement dans l'ampli analogique. Mais je suppose que la plupart ne le font pas, généralement vous pouvez le dire.
old_timer
2

De toute évidence, cela peut être fait. Tout le stockage numérique † sur cette planète est à 4 états. L'ADN code les données comme l'une des quatre paires de bases par bit, disposées en octets de 3 bits chacune. Chaque octet peut donc avoir 64 états différents.

 

† À l'exception d'une fraction infinitésimale créée artificiellement par l'une des formes de vie sensibles.

Olin Lathrop
la source
@Dmit: Oui, mais il y a encore quatre combinaisons possibles. Prenez l'un des deux volets isolément et vous avez quatre choix sur chaque site, A, G, C ou T. Le fait que l'autre volet soit déterminé n'est pas pertinent. Si ce que vous dites est vrai, il n'y aurait que 8 choix par "octet", alors qu'il y en a vraiment 64, bien que tous ces codes ne soient pas utilisés, et certains sont redondants. Fait intéressant, les mitochondries et les chloroplastes ont des codages d'octets en acides aminés différents de ceux de notre ADN nucléaire.
Olin Lathrop
@Dmit: Autrement dit, AT est différent de TA et CG est différent de GC.
Olin Lathrop
Tu as raison, désolé.
Dmitry Grigoryev
0

Le système numérique binaire est composé de 0 et 1, comme vous le savez. D'autres systèmes numériques populaires ou précédemment utilisés étaient le système numérique octal, hexadécimal et décimal. Binaire, octal, décimal et hexadécimal a respectivement 2, 8, 10 et 16 chiffres. Pour la mise en œuvre de circuits logiques, le système binaire est un peu moins complexe. Pourquoi? C'est parce que nous ne pouvons compter que sur deux chiffres pour construire les circuits. La conception du circuit est relativement plus facile à mettre en œuvre. L'utilisation d'un système de nombres binaires dans la conception de circuits prend moins de temps, est moins complexe, nécessite moins d'éléments de circuit et dans tous les aspects, elle est plus abordable que d'autres. Les systèmes octal et hexadécimal ont été utilisés plus tôt dans la conception des ordinateurs. Mais ils étaient complexes. Les circuits étaient également complexes. Les ingénieurs ont donc commencé à utiliser le système binaire pour les avantages mentionnés précédemment.


la source
Les systèmes AFAIK, octal et hexadécimal n'étaient pas utilisés par le matériel. Ils étaient et sont toujours (même octaux) utilisés par le logiciel car ils regroupent plusieurs bits en une seule unité. Par exemple. un chiffre octal est exactement trois bits et un hexit (chiffre hexadécimal) est exactement 4 bits. Que diriez-vous plutôt 0b11111111 ou 0xff?
Oskar Skog
0

Pourquoi un système binaire est-il utilisé à la place du système décimal

Bonne question. En fait, il existe des ordinateurs qui n'utilisent pas le système binaire. Ces ordinateurs, construits à partir d'amplificateurs opérationnels, sont appelés ordinateurs ANALOGIQUES . Les ordinateurs analogiques peuvent additionner, soustraire, multiplier et diviser, et même effectuer certains types d'intégration.

Pourquoi l'ordinateur binaire est-il préféré?

Les ordinateurs binaires sont parfois plus précis. De plus, les ordinateurs binaires (comme mon ordinateur portable) peuvent être des millions de fois plus complexes. Je suppose. Les ordinateurs analogiques doivent être utilisés dans certaines conditions limitées et donner des réponses limitées. Vous pouvez rendre un ordinateur numérique aussi complexe que vous le souhaitez.

Baruch Atta
la source
-2

En plus des autres réponses, j'ai travaillé sur des circuits numériques natifs pour la logique trinaire. Je pense qu'il existe un ensemble complet qui fonctionne aussi rapidement que les circuits logiques binaires (ce qui signifie que nous obtenons les boos de performance 1,5x); mais il a un coût élevé. Les circuits brûlent de l'énergie à l'état inactif (pas seulement lors de la commutation) et donc vous avez tellement de chaleur à vider que cela ne vaut pas la peine pour les processeurs modernes. Il pourrait à peine bénéficier d'un bus principal.

Joshua
la source