Transmission de l'information : codage binaire - hexadécimale - ASCII


Les informations


Les informations sont transmises sous forme binaire : l’information est soit présente (notée 1) soit absente (notée 0). Les valeurs 0 et 1 sont appelés niveaux logiques.

1 – Codage de l'information


1.1 - Le type d'information


Le mot « bit » vient de la compression de l’anglais « Binary digital ». Il s’agit de la plus petite information traitable par un système informatique. Il ne prend que la valeur 0 ou 1.

Physiquement, il s'agit d'une impulsion électrique d'un certain niveau qui correspond au 1 logique.



Pour pouvoir transmettre n’importe quel type d’information (textes, images, sons, …), il faut envoyer des séries de bits les uns derrière les autres.



Pour bien délimiter et identifier l’information, il faut encadrer les suites de bits.


Exemple : lorsque les données 01000101 et 01000010 doivent être transmises, on ne peut pas envoyer 0100010101000010. Le début et la fin de chaque donnée ne sont pas clairement identifiés. Il faut donc utiliser des séparateurs.

On crée une trame en précisant le début et la fin de l’envoi. La donnée est encadrée.


Début ou en-tête

0

1

0

0

0

1

0

1

Fin ou postambule




Pour éviter toutes confusions, on ajoute à la fin du nombre un indicateur de base : b, B ou (2). Suivant le nombre de bits, les groupes ont une appellation particulière : 


Nombre de bits

1

8

16

32

64

Français

BIT

OCTET

MOT

DOUBLE MOT

QUADRUPLE MOT

Anglais

BIT

BYTE

WORD

DWORD

QWORD


 NB :         avec 1 bit, on peut matérialiser 2 états : 0 ou 1

               avec 2 bits, on peut matérialiser 22 = 4 états : 00, 01, 10, 11

               avec n bits, on peut matérialiser 2n états



 Il existe comme dans le système décimal des multiples d’unité :

Multiples

Kio (kilo binaire octet)

Mio

Gio

Tio

Nombre d’octets

1024

1 048 576

1 073 741 824

1 099 511 627 779



2 – Notation binaire, décimal et hexadécimal


2.1 - Le décimal (base 10)


La base 10 (décimales) : les chiffres se comptent de 0 à 9.


Le nombre 510 n'a pas la même valeur que le nombre 150. Pourtant ils ont les mêmes chiffres. L'ordre de ses chiffre est fondamental dans leur écriture.


(510)10 =  (5 x 102) + (1 x 101) + (0 x 100)


On comprend l'importance de l'ordre dans ce chiffre, son rang ou poids. Le 0 a pour poids les unités, le 1 les dizaine et le 5 les centaines.


2.2 - Le binaire (base 2)


La base 2 (binaires) : les chiffres se comptent de 0 à 1.


Le nombre 10 n'a pas la même valeur que le nombre 01. Pourtant ils ont les mêmes chiffres. L'ordre de ses chiffre est fondamental dans leur écriture.


Les puissances successives de 2 (1,2,4,8,16,32,....) sont appelées poids binaires. Le poids du rang n est de 2n.


Le bit de poids le plus fort est appelé MSB (Most Significant Bit).


Le bit de poids le plus faible est appelé LSB (Less Significant Bit).


Le principe d'écriture d'un nombre est le même qu'en base 10 mais cette fois avec des puissances de 2.


Exemple : 

(510)10 =  (1 x 210) + (1 x 29) + (1 x 28) + (1 x 27) + (1 x 26) + (1 x 25) + (1 x 24) +  (1 x 23) + (1 x 22) + (1 x 21) + (0 x 20) = 1 x 256 + 1 x 128 + 1 x 64 + 1 x 32 + 1 x 16 + 1 x 8 + 1 x 4 + 1 x 2 + 0 x 1


2.3 - L'hexadécimal (base 16)



La base 16 (hexadécimales) : les chiffres sont ceux de la base 10 et six lettres de A à F (on compte de 0 à 15).


Décimal

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Héxadécimal

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F


La gestion de grand nombre en binaire introduit rapidement beaucoup de chiffres qui sont difficiles à manipuler.

En effet, la manipulation des nombres écrits en binaire est difficile pour l’être humain et la conversion en décimal n’est pas simple.

C’est pourquoi on va utiliser la base hexadécimale qui est un multiple de 2.


Exemple : 

(510)2 =  (1 x 162) + (F x 161) + (E x 160) = 1 x 256 + 15 x 16 + 14 * 1

3 – Conversion


3.1 – Conversion décimal vers binaire

La méthode la plus utilisée pour convertir un nombre décimal dans sa représentation binaire est la méthode des divisions entières successives par 2 jusqu'a obtenir un quotient de 0 et on assemble les restes de chaque division.



Exemple : Convertir 24 exprimé en base 10 en binaire.


 (24)10 = (?)2





24

Reste


24÷2 = 12 reste 0 

12 

LSB 

12÷2 = 6 reste 0 


6÷2 = 3 reste 0 


3÷2 = 1 reste 1 


1÷2 = 0 reste 1 

MSB 






Sens de lecture


Ce qui nous donne (24)10 = (11000)2

3.2 – Conversion binaire vers décimal

La méthode la plus utilisée pour convertir un nombre binaire dans sa représentation décimale est la méthode de la sommation des puissances de 2. 


Rang : n

Puissance : 2n

24

23

22

21

20

Valeur Puissance : 2n 

16 

8

4

2

1

Nombre binaire (bit) 

1

0

0

0

Poids : 2n * bit

16

8

0

0

0

Somme 

16+8+0+0+0 = 24 


Ce qui nous donne (11000) = (24)10


Tableau des 16 premiers nombres binaires :

Héxadécimale

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

Décimale

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Binaire

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

1011

1100

1101

1110

1111


Tableau des puissances de 2 :

n

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

2n

1

2

4

8

16

32

64

128

256

512

1024

2048

4096

8192

16384

32768

65536



3.3 – Conversion binaire vers hexadécimal


Pour passer du binaire à l'hexadécimal, on effectue des regroupements de 4 bits et on écrit leur correspondance en hexadécimal. 

Exemple :

11000(2) = (1 8 )16



3.4 – Conversion hexadécimal vers binaire


Pour passer du binaire à l'hexadécimal, on associe 4 bits à chaque caractère hexadécimal. 

Exemple :

(C 1 F)16 = (1100 0001 1111)2



3.5 – Conversion décimal-hexadécimal


La méthode la plus utilisée pour convertir un nombre décimal dans sa représentation hexadécimal est la méthode des divisions successives par 16 jusqu'a obtenir un quotient de 0 et on assemble les restes de chaque division.


Exemple :

(2623)10 = (?)16







2623

Reste


2623÷16 = 163 reste 15

163 

F

LSB 

163÷16 = 10 reste 3 

10

3


10÷16 = 0 reste 10


A

MSB






Sens de lecture



(2623)10 = (A3F)16 ou (A3F)h



3.6 – Conversion hexadécimal-décimal


On multiplie chaque caractère hexadécimal par la puissance de 16 correspondante.


Rang : n

Puissance : 16n

163

162

161

160

Valeur Puissance : 16n 

4096

256

16

1

Nombre  

A

7

0

F

Poids : 16n * nombre

8

0

0

0

Somme 

Ax163 + 7x162 + 0x161 + Fx160 

= 10*4096+7*256 + 0x16 + 15x1 

= 42767



(2623)10 = (A3F)16


3 – Autre codage utilisés


Le code ASCII (American Standard Code for information Interchange) est devenu au fil du temps le standard pour coder les informations alphanumériques et autres caractères de commande.

C’est un codage sur sept bits (le 8ème bit est toujours nul) qui se présente de la façon suivante :



Code ASCII : le code d’un caractère est le numéro de la colonne suivi du numéro de ligne. On commence par le MSB et on finit par le LSB. Par exemple : le caractère « A » a pour code (41)ASCII, le b 16.


Remarque : Lors des communications (Internet par exemple) un bit de parité est ajouté, ce qui donne un ensemble de huit bits qui représente le codage complet d’un caractère. Ce bit de parité paire est mis à 1 si le nombre de un compris dans le codage 7 bits est impair sinon il est mis à 0 (zéro). Ensuite les 3 bits suivants codent le chiffre de la colonne et les 4 suivants celui qui correspond aux lignes.


Exemple : code hexa transmis si on tape BONJOUR :

Caractère ASCII

Code Hexadécimal

Code binaire sans parité

Code binaire avec parité

Code Hexa avec parité

B

42 

0100 0010

0100 0010

42

O

4F

0100 1111

1100 1111

CF

N

4E

0100 1110

0100 1110

4E

J

4A

0100 1010

1100 1010

CA

O

4F

0100 1111

1100 1111

CF

U

55

0101 0101

0101 0101

55

R

52

0101 0010

1101 0010

D2

On transmet donc en série la suite 42 CF 4E CA CF 55 D2

Créé avec HelpNDoc Personal Edition: Créer des documents d'aide PDF facilement