Noter cet article : 




Le langage binaire vient de la notation de contacteurs, notée 0 pour faux (quand le courant ne passe pas) et 1 pour vrai (quand le courant passe).
Ce codage est nommé base binaire et est utilisé par l'ordinateur pour comprendre et traiter les données. Les humains travaillent avec dix chiffres, c'est la notation décimale (base 10).
Le bit :
Le bit vient du terme Binary Digit (soit 0 soit 1 en langage binaire). On travaille donc avec les puissances de 2. C'est ainsi qu'avec 3 bit, on peux avoir 2^n valeurs codables, soit 2^3 (8) dans notre cas. Il y a donc 8 possibilités.
| 0 | 0 | 0 |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 0 | 1 | 1 |
| 1 | 1 | 1 |
| 1 | 1 | 0 |
| 1 | 0 | 1 |
| 1 | 0 | 0 |
Pondération du code :
Le code binaire est un code pondéré. C'est à dire qu'il s'écrit de la façon suivante : 2^3, 2^2, 2^1, etc...
| Décimale | 2^3 | 2^2 | 2^1 | 2^0 |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 2 | 0 | 0 | 1 | 0 |
| 3 | 0 | 0 | 1 | 1 |
| 4 | 0 | 1 | 0 | 0 |
| 5 | 0 | 1 | 0 | 1 |
| 6 | 0 | 1 | 1 | 0 |
| 7 | 0 | 1 | 1 | 1 |
| 8 | 1 | 0 | 0 | 0 |
| 9 | 1 | 0 | 0 | 1 |
| 10 | 1 | 0 | 1 | 0 |
| 11 | 1 | 0 | 1 | 1 |
| 12 | 1 | 1 | 0 | 0 |
| 13 | 1 | 1 | 0 | 1 |
| 14 | 1 | 1 | 1 | 0 |
| 15 | 1 | 1 | 1 | 1 |
Pour simplifier les résolutions d'équations, etc...il existe une autre forme non pondérée du code binaire, le code GRAY (aussi appelé binaire réfléchi). On ne peut modifier qu'un seul bit à la fois et il existe une symétrie :
| Valeur | ||||
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 2 | 0 | 0 | 1 | 1 |
| 3 | 0 | 0 | 1 | 0 |
| 4 | 0 | 1 | 1 | 0 |
| 5 | 0 | 1 | 1 | 1 |
| 6 | 0 | 1 | 0 | 1 |
| 7 | 0 | 1 | 0 | 0 |
| 8 | 1 | 1 | 0 | 0 |
| 9 | 1 | 1 | 0 | 1 |
| 10 | 1 | 1 | 1 | 1 |
| 11 | 1 | 1 | 1 | 0 |
| 12 | 1 | 0 | 1 | 0 |
| 13 | 1 | 0 | 1 | 1 |
| 14 | 1 | 0 | 0 | 1 |
| 15 | 1 | 0 | 0 | 0 |
L'octet :
Un octet est un nombre de 8 bit. Il permet de stocker des nombres pouvant aller jusqu'à 255 car il offre 2^8 soit 256 possibilités.
| 2^7 | 2^6 | 2^5 | 2^4 | 2^3 | 2^2 | 2^1 | 2^0 |
|---|---|---|---|---|---|---|---|
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Le quartet :
Peu utilisé en informatique, c'est un ensemble de 4 bit.
Octet, Kilo-octet, Méga-octet :
Depuis 1998, l'organisme international à décidé que les kilo-octet, etc... ne seraient pas en puissances de 2, soit 1024 octets, etc... mais en base 10 (ce qui est absurde reconnaissons-le). D'autres unités sont alors venues s'ajouter :
Les opérations en binaire :
L'addition :
L'addition en binaire se fait de la même manière qu'en notation décimale:
On commence à additionner les bits de droite (ceux appelés bit de poids faible) puis on a des retenues lorsque la somme de deux bits de méme poids dépasse 1 (chiffre maximum en binaire).
Exemple :
| 0 | 1 | 1 | 1 | 1 | 1 | |
| + | 0 | 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 1 | 0 | 0 | 0 |
La soustration :
La soustraction en binaire se fait de la même manière qu'une addition, sauf que lorsque l'on soustrait un bit à un d'un bit à zéro, on soustrait une retenue pour le bit de poids plus élevé.
Exemple :
| 0 | 1 | 1 | 1 | 1 | 0 | |
| - | 0 | 1 | 1 | 0 | 0 | 1 |
| 0 | 0 | 0 | 1 | 0 | 1 |
La multiplication :
La multiplication en binaire est la même chose qu'en décimale : un nombre multiplié par 0 est égal à 0. On a donc :
Exemple :
| 0 | 1 | 1 | 1 | 1 | 1 | ||
| * | 1 | 1 | 0 | ||||
| 0 | 0 | 0 | 0 | 0 | 0 | ||
| 0 | 1 | 1 | 1 | 1 | 1 | ||
| 0 | 1 | 1 | 1 | 1 | 1 | ||
| 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 |
Convertions :
Pour convertir un nombre décimal en binaire, on a deux possibilités :
On divise par deux le nombre jusqu'à ce que le nombre trouvé soit 1:
Exemple pour 27:
| 27 | 2 | |||
| 1 | 13 | 2 | ||
| 1 | 6 | 2 | ||
| 0 | 3 | 2 | ||
| 1 | 1 |
On part ensuite du sens inverse. Donc 27= 0001 1011 (en binaire).
Deuxième méthode : on utilise les puissances :
27 = 1*2^0+ 1*2^1+ 1*2^3 + 1*2^4
Le langage hexadécimal est venu pour freiner l'accroissement en longueur des nombres binaires. C'est une base 16. On a en fait pris les 10 premiers chiffres suivis des six premières lettres :
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
| Base décimale | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Base hexa | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| Binaire | 0 | 1 | 10 | 11 | 100 | 101 | 110 | 111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
Convertions :
Du décimal à l'hexadécimal :
Méthode des divisions successives (exemple pour 36 en décimal) :
| 36 | 16 | |||
|---|---|---|---|---|
| 4 | 2 |
36=24 en hexadécimal (soit 4 * 16^0 + 2 * 16^1)
De l'hexadécimal au binaire :
Exemple avec 24 en hexadécimal (36 en décimal donc) :
On utilise ce qu'on appelle le code 1248 (se lit "un deux quatre huit").
| 2 | 4 |
|---|---|
| 0010 | 0100 |
2=0010 en binaire (sur 4 bits), et 4 est égal à 0100 en binaire sur 4 bits. On en déduit ensuite le nombre binaire final :
00100100
Ce nombre est bien égal à 36 en décimal, nous avons donc converti notre nombre hexadécimal en binaire, puis en décimal.
Partager cet article sur un forum (lien sous forme de BBCODE) :
[url=http://www.vulgarisation-informatique.com/binaire-hexa.php]Le langage binaire et hexadécimal[/url]
Partager cet article sur un site ou un blog (lien sous forme HTML) :
<a href="http://www.vulgarisation-informatique.com/binaire-hexa.php">Le langage binaire et hexadécimal</a>
Vous souhaitez contribuer à la rédaction de cet article ? (cliquez sur l'icône de gauche pour afficher le menu)
langage binaire
Langage binaire - base de 8
Le langage binaire et hexadécimal
langage ftp
Langage C
probleme de langage win
Problème langage C
Quel langage utiliser?
[Ts langage] Fonction mail / mailto
comment lancer une application par le langage c
[linux/windows]choix langage/BD compatible
[Langage C] suppression de définitions de variable[...]
[Besoin d'aide]Projet en langage C : pointeurs et [...]
Quel langage pour gestion de données, Tri, présent[...]