Système binaire - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Exemple d'informations binaires

Le système binaire est un 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. Ceux-ci ne peuvent prendre que deux valeurs, notées par convention 0 et 1.

C'est un concept essentiel de l'informatique. En effet, les processeurs des ordinateurs sont composés de transistors ne gérant chacun que deux états.

Un calcul informatique n'est donc qu'une suite d'opérations sur des paquets de 0 et de 1, appelés octets lorsqu'ils sont regroupés par 8.

Conversions

Le codage le plus courant est l'équivalent en base deux de la numération de position que nous utilisons quotidiennement en base 10.

Énumération des premiers nombres

Les premiers nombres s'écrivent :

      décimal  binaire         0       0000         1       0001         2       0010         3       0011         4       0100         5       0101      

(Sachant que les colonnes binaires correspondent respectivement à 8,4,2 et 1)

On passe d'un nombre binaire au suivant en ajoutant 1, comme en décimal, sans oublier les retenues et en utilisant les tables d'additions suivantes:

       0+0=0    0+1=1    1+0=1   1+1=10      

ainsi:

         11      +   1       ====        100      

Détail :

      1 + 1 = 10           => on pose 0, et retient 1      1 + 1(retenue) = 10  => on pose 0, et retient 1      0 + 1(retenue) = 1   =>         1      

L'arithmétique binaire (plus simplement le calcul binaire) est utilisé par les systèmes électroniques les plus courants (calculatrices, ordinateurs, etc.) car le niveau de tension peut servir à représenter les deux chiffres 0 et 1 ; 0 représentant l'état bas et 1 l'état haut.

Tout entier naturel peut s'écrire en binaire, c'est-à-dire qu'il se décompose en somme de puissances de 2 (1, 2, 4, 8, 16, 32, 64, etc.), par exemple 35 se décompose en :

(1 * 25) + (0 * 24) + (0 * 23) + (0 * 22) + (1 * 21) + (1 * 20) = 32 + 2 + 1 = 35

donc le nombre décimal 35 se note 100011 en binaire.

Expression d'un nombre

Un nombre décimal à plusieurs chiffres tel que 123 s'exprime ainsi :

1 * 100 + 2 * 10 + 3 * 1 = 1 * 102 + 2 * 101 + 3 * 100

Sa représentation en binaire est 1111011 et s'exprime de la même façon :

1 * 64 + 1 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 1 * 1 = 1 * 26 + 1 * 25 + 1 * 24 + 1 * 23 + 0 * 22 + 1 * 21 + 1 * 20

Représentation des entiers positifs

Pour trouver la représentation binaire d'un nombre, on le décompose en somme de puissances de 2. Par exemple avec le nombre dont la représentation décimale est 42 :

        42 = 32 + 8 + 2        42 = 25 + 23 + 21        42 = 1×25 + 0×24 + 1×23 + 0×22 + 1×21 + 0×20        42 = 101010 en binaire      

Avec N bits, ce système permet de représenter les nombres entre 0 et 2N-1. Il est donc possible de compter sur ses dix doigts jusqu'à 1023 (210-1) en binaire (à condition de savoir lever chaque doigt indépendamment). Un doigt baissé représente 0, et un doigt levé représente une puissance de 2 correspondant au doigt, par exemple :

      Doigt                  Main            Puis. Valeur en                                             de 2  numération                                                   décimale      Auriculaire   de la main droite levé   2^0        1      Annulaire                »             2^1        2      Majeur                   »             2^2        4      Index                    »             2^3        8      Pouce                    »             2^4       16      Pouce         de la main gauche levé   2^5       32      Index                    »             2^6       64      Majeur                   »             2^7      128      Annulaire                »             2^8      256      Auriculaire              »             2^9      512                                                  -------                                            Somme  =1 023            (Pour mémoire                          2^10  =1 024)      

Ceci confirme la formule

      2n-1=20+21+...+2n-1      

Représentation des entiers négatifs

Pour compléter la représentation des entiers, il faut pouvoir écrire des entiers négatifs. On ajoute pour cela à la représentation un bit de signe, placé en tête. Un bit de signe nul indique une valeur positive, un bit de signe positionné à 1 est une valeur négative. Cette règle permet de rester cohérent avec le système de représentation des entiers positifs : il suffit d'ajouter un 0 en tête de chaque valeur.

Complément à un

Ce codage, fort simple, consiste à inverser la valeur de chaque bit composant une valeur binaire.

Par exemple, pour obtenir -7 :

      0111 valeur décimale 7      1000 complément à un      

Le souci avec un tel système est qu'il y a toujours deux représentations de la valeur 0 pour un nombre de bit donné.

Complément à deux

Afin de pallier ce défaut, on a introduit la représentation par complément à deux. Celle-ci consiste à réaliser un complément à un de la valeur, puis d'ajouter 1 au résultat.

Par exemple pour obtenir -7:

      0111 codage de 7 en binaire      1000 complément à un      1001 on ajoute 1: représentation de -7 en complément à deux      

Ce codage a l'avantage de ne pas nécessiter de différenciation spéciale des nombres positifs et négatifs, et évite en particulier le problème d'ordinateurs anciens (Control Data 6600) qui avaient un « +0 » et un « -0 » dont il fallait faire comprendre aux circuits de tests que c'était le même nombre ! Voici une addition de -7 et +9 réalisée en complément à deux sur 4 bits :

      -7        1001       +9        1001      __        ____       2    (1) 0010     (on 'ignore' la retenue)         

Avec n bits, ce système permet de représenter les nombres entre -2n-1 et 2n-1-1.

Entre les bases 2, 8 et 16

Du binaire vers octal ou hexadécimal

Les bases 8 (octale) et 16 (hexadécimale) sont des bases multiples de la base 2. Ces deux bases ont été 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 : 8 = 23, il suffit de regrouper à partir de la droite et par paquets de 3 les chiffres binaires (voir bāguà). Chaque paquet de 3 (le dernier devant être parfois complété par des 0 à gauche), étant 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.
  • Hexadécimal : base 16 : 16 = 24, donc on regroupe à partir de la droite et par paquets de 4 les chiffres binaires. Chaque paquet de 4 bits étant la représentation binaire d'un chiffre en base 16. Il faut donc 16 chiffres, il a été décidé d'utiliser les 10 chiffres décimaux plus les 6 premiers caractères de l'alphabet avec la convention suivante: A16=1010=10102, B16=1110=10112, C16=1210=11002, D16=1310=11012, E16=1410=11102 et F16=1510=11112.
  • 101011011102 va s'écrire 101 0110 1110 et en convertissant la valeur de chacun des blocs en décimal on obtient : 5, 6, 14 c'est-à-dire 56E16.

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.

  • 1A2F16 va s'écrire 1, 10=8+2, 2, 15=8+4+2+1 soit 1 1010 0010 11112
  • 1568 va s'écrire 1, 5=4+1, 6=4+2 soit 1 101 1102

Table des valeurs des groupements de chiffres binaires

Binaire Décimal Octal Hexadécimal
0000 0 0 0
0001 1 1 1
0010 2 2 2
0011 3 3 3
0100 4 4 4
0101 5 5 5
0110 6 6 6
0111 7 7 7
Binaire Décimal Octal Hexadécimal
1000 8 10 8
1001 9 11 9
1010 10 12 A
1011 11 13 B
1100 12 14 C
1101 13 15 D
1110 14 16 E
1111 15 17 F
Page générée en 0.259 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise