M-Cours-Informatique

M-Cours-Informatique

Le langage binaire et hexadécimal

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écimale2^32^22^12^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^72^62^52^42^32^22^12^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 :

  • Un octet est un ensemble de 8 bit.
  • Un Kilo-octet (Ko) est un ensemble de 1000 octets.
  • Un Méga-octet (Mo) est un ensemble de 1000 Kilo-octets
  • Un Giga-octet (Go) est un ensemble de 1000 Méga-octets
  • Un Téra-octet (To) est un ensemble de 1000 Giga-octets

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 :

  • Le kibi-octet (Kio) qui est égal à 1024 octets.
  • Le Mébi-octet (Mio) qui est égal à 1024 Kibi-octets.
  • Le Gibi-octet (Gio) qui est égal à 1024 Mébi-octets.
  • Le Tébi-octet (Tio) qui est égal à 1024 Gibi-octets.

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 :

  • 0*0=0
  • 0*1=0
  • 1*0=0
  • 1*1=1

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 :

  • La méthode des divisions successives (que nous allons voir en premier).
  • La méthode des puissances.

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").

24
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.



28/03/2013
0 Poster un commentaire

A découvrir aussi


Inscrivez-vous au blog

Soyez prévenu par email des prochaines mises à jour

Rejoignez les 15 autres membres