Académique Documents
Professionnel Documents
Culture Documents
Le système binaire (du latin binārĭus, « double ») est le système de numération utilisant la
base 2. On nomme couramment bit (de l'anglais binary digit, soit « chiffre binaire ») les
chiffres de la numération binaire positionnelle. Un bit peut prendre deux valeurs, notées par
convention 0 et 1.
Exemple d'informations binaires.
Définition
Le système binaire le plus courant est la base deux mathématique, permettant de représenter
des nombres à l'aide de la numération de position avec seulement deux chiffres : le 0 et le 1.
Dans ce type de codage, chaque nombre est représenté de façon unique par une suite
ordonnée de chiffres. Et chaque position m représente une puissance (m − 1) de la base. Si
l'on se limite dans un premier temps aux nombres entiers positifs, en base dix ces
puissances sont : un (1), dix (représenté par 10), cent (dix fois dix, représenté par 100), mille
(dix fois cent, représenté par 1000), dix mille, etc. En base deux, ces puissances sont : un (1),
deux (représenté lui aussi par 10), quatre (deux fois deux, représenté par 100), huit (deux fois
quatre, représenté par 1000), seize (deux fois huit, représenté par 10000), etc.
On voit que la signification des représentations 10, 100, 1000, etc. dépend de la base
utilisée : 10 est toujours égal à la base, c'est-à-dire dix en base dix, mais deux en base deux.
En base dix, on utilise dix chiffres, de zéro à neuf ; en base n, on utilise n chiffres, de zéro à n
– 1 ; donc en base deux on utilise les deux chiffres « 0 » et « 1 ».
Un nombre qui s'exprime en base B par les quatre chiffres 1101 s'analyse :
, qui donne :
On donne à chaque bit une puissance de deux, comme cette suite 1, 2, 4, 8, 16, 32, 64. Pour
obtenir le nombre 7, on additionne les trois premiers bits; pour obtenir 6, on additionne
seulement le bit de poids 4 et le bit de poids 2.
Opérations
Comment faire ?
Seules changent d'une part la forme de la suite de chiffres qui exprime le résultat (elle ne
compte que des zéros et un), d'autre part la signification de cette suite (10 signifie « deux » et
non « dix », 100 signifie « quatre » et non « cent », etc.).
Addition et soustraction
On passe d'un nombre binaire au suivant en ajoutant 1, comme en décimal, sans oublier les
retenues et en utilisant la table ordinaire (mais réduite à sa plus simple expression) :
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0
avec 1 retenue
0 - 0 = 0 0 - 1 = 1 avec 1 retenue 1 - 0 = 1 1 - 1 = 0
On constate que l'addition de deux bits A et B donne A XOR B avec une retenue valant A ET B.
Ainsi :
11
+ 1
____
100
Détail :
1 + 1 = 10 => on pose 0 et on retient 1
Multiplication et division
Multiplier par deux se fait en décalant chaque chiffre d'un cran à gauche et en insérant un
zéro à la fin.
1011 onze
La division entière par deux se fait en décalant chaque chiffre d'un cran à droite, le chiffre de
droite étant le reste supprimé.
1011 onze
Théorie informatique
L'arithmétique binaire (plus simplement le calcul binaire) est utilisée par les systèmes
électroniques les plus courants (calculatrices, ordinateurs, etc.) car les deux chiffres 0 et 1
s'y traduisent par la tension ou le passage d'un courant. Par exemple, le 0 peut être
représenté par l'état bas (tension ou courant nul) et 1 par l'état haut [réf. nécessaire] (tension qui
existe, courant qui passe).
Pour compléter la représentation des entiers, il faut pouvoir écrire des entiers négatifs.
Deux
représentations existent, le complément à un et le complément à deux.
Vérifications requises
Avant de coder avec tout complément, il est nécessaire de vérifier le bon nombre de bits est
utilisés pour encoder le nombre en tant que nombre binaire signé.
Complément à un
0111 sept
Un défaut de ce système est que zéro a deux représentations : 0000 et 1111 (« +0 » et
« −0 »). Il n'est pas utilisé par les ordinateurs courants, mais l'était par des ordinateurs
anciens comme le Control Data 6600. Les deux représentations du zéro compliquent les
circuits de test.
Complément à deux
0111 sept
1000 complément à un
+9 1001
__ ____
Avec n bits, ce système permet de représenter les nombres entre −2n−1 et 2n−1 − 1.
Les bases 8 (octale) et 16 (hexadécimale) sont des bases puissances de la base 2. Ces deux
bases sont couramment employées en informatique et pour des raisons pratiques; ces bases
étant fortement liées à la base 2 et les nombres écrits dans ces bases étant plus
« manipulables » (car d'écriture plus courte) par l'intellect humain. L'écriture de nombres dans
ces bases est facilement obtenue par regroupement de chiffres de l'écriture du nombre en
base 2.
Octal : base 8 = 23. Il suffit de parcourir le nombre binaire de la droite vers la gauche en
regroupant les chiffres binaires 3 par 3 : chaque paquet de 3 (le dernier devant être parfois
complété par des 0 à gauche) est l'écriture binaire d'un chiffre en base 8 (08 = 000, 18 =
001, 28 = 010, 38 = 011, 48 = 100, 58 = 101, 68 = 110, 78 = 111).
101011011102 va s'écrire 10 101 101 110 et en convertissant la valeur de chacun des
blocs en un chiffre octal, on obtient le nombre octal 25568.
On pourrait facilement étendre ce principe à toutes les bases qui sont puissances de 2.
Vers le binaire
Il suffit de convertir la valeur de chacun des chiffres sous leur forme binaire en utilisant un
nombre de chiffres correspondant à la puissance de la base : 16 = 24, 8 = 23, donc 4 chiffres
pour l'hexadécimal et 3 pour l'octal :
1A2F16 va s'écrire 1 ⇒ 0001, A ⇒ 1010, 2 ⇒ 0010, F ⇒ 1111, soit 0001 1010 0010 11112.
Le code de Gray, également appelé binaire réfléchi, permet de ne faire changer qu'un seul bit
à la fois quand un nombre est incrémenté ou décrémenté d'une unité. Le nom du code vient
de l'ingénieur américain Frank Gray, qui déposa un brevet sur ce code en 1947[2].
Pour calculer directement le code de Gray d'un entier à partir de celui de son prédécesseur on
peut procéder ainsi :
Afin de concilier la logique binaire de l'ordinateur avec la logique humaine, on peut convertir
en binaire, plutôt que les nombres eux-mêmes, chacun des chiffres qui les composent en
notation décimale positionnelle. Chacun de ces chiffres est alors codé sur 4 bits :
1994 = 0001 1001 1001 0100
Avec n bits (n multiple de 4), il est possible de représenter les nombres entre 0 et 10n/4-1. Soit
approximativement entre 0 et 1.778n-1. Le DCB est un code redondant, en effet certaines
combinaisons ne sont pas utilisées (comme 1111 par exemple).
Cette représentation évite par construction tous les problèmes gênants de cumul d'arrondi
qui interviendraient lors de la manipulation de grands nombres dépassant la taille des
circuits en arithmétique entière et obligent à recourir au flottant. Il est cependant possible de
manipuler des nombres à précision arbitraire en utilisant un codage plus efficace que le DCB.
Applications
Théorie de l'information
Article détaillé : Entropie de Shannon.
Logique
La logique classique est une logique bivalente: une proposition est soit vraie, soit fausse. Il
est donc possible de représenter la vérité d'une proposition par un chiffre binaire.
On peut par
exemple modéliser les opérations de l'arithmétique binaire à l'aide de l'algèbre de Boole.
L'algèbre de Boole représente un cas très particulier d'usage des probabilités ne faisant
intervenir que les seules valeurs de vérité 0 et 1. Voir Théorème de Cox-Jaynes.
Informatique
Histoire
Les hexagrammes chinois, plus tard reconnus comme la première expression d'une
numération binaire, apparaissent dans le Yi Jing vers 750 av J.C.(période des Zhou de
l'Ouest[3]) mais leur signification mathématique, si elle a été connue, fut oubliée ensuite[4].
À la même époque Francis Bacon utilise un code secret bilitère (à deux lettres) pour
protéger ses messages (il remplace les lettres du message par leur position en binaire,
puis les 0 et les 1 par des A et des B. Exemple : lettre E → 5 → 00101 → codée AABAB[8].
John Napier, mathématicien écossais inventeur des logarithmes, dans son traité
Rhabdologie publié en 1617, décrit trois systèmes pour faciliter les calculs, dont un, dit
checkerboard, est binaire[9].
L'espagnol Caramuel dans son Mathesis biceps vetus et nova publié en 1670, paraît le
premier à avoir donné une étude des numérations non décimales, dont binaire,
succinctement[10].
À Leibniz revient d'avoir étudié le système binaire pour lui-même, montré comment s'y
pratiquent les quatre opérations (« si aisées qu’on n’a jamais besoin de rien essayer ni
deviner, comme il faut faire dans la division ordinaire[11] »), noté que ce calcul « est le plus
fondamental pour la science, et donne de nouvelles découvertes[11] », et même envisagé
que « ce type de calcul pourrait également être réalisé avec une machine (sans roues), de
la manière suivante certainement très facilement et sans effort. Avec une boîte munie de
trous, qui peuvent être ouverts et fermés.[12] »
En outre, ayant communiqué « au R. P. Bouvet, Jésuite Français célèbre, qui demeure à
Pékin, (sa) manière de compter par 0 et 1, il n’en fallut pas davantage pour lui faire
reconnaître que c’est la clef des figures de Fohy », en 1601[11]. Ainsi fut déchiffrée l’énigme
des hexagrammes attribués à Fuxi, et Leibniz fait ensuite publier son exposé du système
binaire par l'Académie des sciences de Paris en 1703[11].
En 1847 George Boole publie les premiers travaux de son algèbre binaire, dite booléenne,
n'acceptant que deux valeurs numériques : 0 et 1.
Notes et références
2. (en) Frank Gray pour Bell Labs, Brevet U.S. 2,632,058 : Pulse code communication (https://
www.google.com/patents/US2632058) [archive], déposé le 13 novembre 1947, publié le
17 mars 1953, sur Google Patents.
3. (en) E. L. Shaugnessy, « I Ching (Chou I) », dans M. Loewe (dir.), Early Chinese Texts: A
Bibliographical Guide, Berkeley, 1993, p. 216-228.
6. (en) B. Van Nooten, « Binary numbers in Indian antiquity », Journal of Indian Philosophy,
vol. 21, no 1,mars 1993, p. 31–50 (ISSN 0022-1791 (https://www.worldcat.org/issn/0022-1
791&lang=fr) , DOI 10.1007/BF01092744 (https://dx.doi.org/10.1007/BF01092744) ).
9. (en) John Napier, Rabdologiæ, traduit du latin par William Frank Richardson, 'ntroduction
par Robin E. Rider, 1990, MIT Press (ISBN 0-262-14046-2).
10. Robert Ineichen, Leibniz, Caramuel, Harriot und das Dualsystem, Mitteilungen der
deutschen Mathematiker-Vereinigung, vol. 16, 2008, issue 1, p. 14.
11. Leibniz, Explication de l'arithmétique binaire, qui se sert des seuls caractères 0 et 1, avec
des remarques sur son utilité, et sur ce qu'elle donne le sens des anciennes figures
chinoises de Fohy (lire sur Wikisource et sur Mémoires de l'Académie des sciences (http
s://gallica.bnf.fr/ark:/12148/bpt6k3483p/f247.image) [archive] de Paris, 1703, p. 85-89).
12. De progressione dyadica, manuscrit daté de 1679, traduction de Yves Serra, p. 5 (lire en
ligne (http://bibnum.education.fr/sites/default/files/leibniz-numeration-
texte.pdf) [archive]) ; voir aussi Yves Serra, Le manuscrit « De Progressione Dyadica » de
Leibniz (lire en ligne (https://journals.openedition.org/bibnum/553) [archive] sur Bibnum
).
Voir aussi
Articles connexes
Auguste De Morgan
Système hexadécimal
Débit binaire
Préfixe binaire
Byte
Liens externes
(en) Polynesian people used binary numbers 600 years ago : Nature News & Comment (htt
ps://www.nature.com/news/polynesian-people-used-binary-numbers-600-years-ago-1.14
380) [archive]
Ce document provient de
« https://fr.wikipedia.org/w/index.php?
title=Système_binaire&oldid=196708261 ».
Dernière modification il y a 6 jours par Epok