Vous êtes sur la page 1sur 43

1

Cours

Chapitre I
Systèmes de Numération et codes

Mhiri I. 2
Nombres, textes, images,
sons, vidéos,…

L’information sera exprimée Chaque nombre binaire est


Chaque nombre est codé sous
par une suite de nombres représenté par un état
forme binaire
(numérisation) physique
4
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 1. Numération décimale

Ce système de numération dispose de dix symboles (ou chiffres) :


0, 1, 2, 3, 4, 5, 6, 7, 8, 9. On travaille alors en base 10.
Base 10 :{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Exemple :

8235 = 8000 + 200 + 30 +5


3 2 1 0

8235 = 8.103 + 2.102 + 3.101 + 5.100


103 102 101 100  Poids
8 2 3 5  digits
5
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 1. Numération décimale

De manière générale, un nombre s’écrivant :


N = an-1...a1a0 (les ai représentent les n chiffres)
dans une base B (on dispose de B symboles) s’écrit :

N = an-1 Bn-1 + an-2 Bn-2 + ... + a1 B1 + a0 B0

N =  aiBi
Bn-1 Bn-2 .......... B1 B0  Poids

a a …...... a a  digits
n-1 n-2 1 0

On note alors N = (an-1...a1a0)B.


6
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 2. numération binaire

La numération en base deux (ou numération binaire) utilise deux symboles 0 et 1.

Base 2 :{0, 1}

(an‐1an‐2...a1a0)2 = an‐1.2n‐1 + … +a0.20

Exemple :
2 1 0

(100)2 = 1.22 + 0.21 + 0.20 = (4)10

7
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 2. numération binaire

➢ Un état binaire est appelé bit (contraction de binary digit).

➢ Un bit prend les valeurs 0 ou 1.

➢Les puissances successives de 2 (2n ) à savoir (1,2,4,8,16,32,64,128,256,...) sont


appelées poids binaires.

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

16 8 4 2 1
24 23 22 21 20  Poids
1 1 0 0 1  digits

MSB LSB
8
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 2. numération binaire

Un nombre à n chiffres en base deux distingue 2n états.


n=8 (00000000) -> (11111111)
n bits 2n nombres différents et le plus grand = (2n‐1).
Exemple :

➢n8=bits
8 alors : on
octet
peut(bit)
former 256 nombres ou combinaisons binaires différentes
➢ 16 bits mot (word). = 2 octets
➢(00000000
32 bits 11111111)
double d’où
mot (double word).= (28 -1) = 255.
Nmax4 =octets
Les unités sont :
▪Le bit
▪Un Ko vaut 210 = 1024 octets
▪L’octet
▪Un Mo vaut 220 =1 048 576 octets
▪Kilo (k): 103
▪Un Gio vaut 230 =1 073 741 824 octets
▪le méga (M) : 106
▪Un To vaut 240 =1 099 511 627 776 octets
▪le giga (G) : 109
▪13l/e09t/e20r1a5(T) : 1012
Chapitre 1 : Représentation de l’information numérique
I. Le système de numérisation 3. Numération hexadécimale

Il comporte 16 symboles:
Base 16: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}

Pour indiquer la base 16 :


➢ On place le caractère $ (dollar) devant le nombre: $47AB
➢ Ou H derrière (assembleur) : 47ABH
➢ Ou encore 0x en langage C: 0x47AB
Exemple :

1 0

(AC)16 = ACH = $AC =0XAC


= A.161+C.160 = 10 . 16 + 12 . 1
= (172)10 10
Chapitre 1 : Représentation de l’information numérique
II. Changements de base ‐ Conversions 1. décimal binaire
La méthode par divisions successives par 2
193 / 2 = 96 reste 1
(193)10 96 / 2 = 48 reste 0
48 / 2 = 24 reste 0

Sens de lecture
24 / 2 = 12 reste 0
12 / 2 = 6 reste 0
6/2 = 3 reste 0
3/2 = 1 reste 1
1/2 = 0 reste 1

(193)10 = (11000001)2
11
Chapitre 1 : Représentation de l’information numérique
I. Changements de base ‐ Conversions 1. décimal binaire

La méthode par soustractions successives des puissances de 2 soit


(255, 128, 64, 32, 16, 8, 4, 2, 1)

Exemple: Soit le nombre (175)10 à convertir en binaire : 175

175 - 128 = 47
47 - 32 = 15
15 - 8 = 7
7 - 4 =3
3 - 2 =1
1 - 1 =0
soit : 175 = 128+32+8+4+2+1 = (1 0 1 0 1 1 1 1)2

12
Chapitre 1 : Représentation de l’information numérique
II. Changements de base ‐ Conversions 2. décimal hexadécimal
La méthode par divisions successives par 16

(193)10
193 / 16 = 12 reste 1

Sens de lecture
12 / 16 = 0 reste 12

(193)10 = C1

13
Chapitre 1 : Représentation de l’information numérique
II. Changements de base ‐ Conversions 3. Toutes les conversions vers le décimal

(N)B = an-1.Bn-1 + … + a0.B0 où B est codé en décimal

Binaire décimal

(01101)2 = 0 × 24 + 1 × 23 + 1 × 22 + 0 × 21 + 1 ×20
=8 +4 +1
= (13)10
Hexadécimal décimal

(01B)16 = 0 × 162 + 1 × 161 + B ×160


= 16 + 11
= (27)10 17
Chapitre 1 : Représentation de l’information numérique
II. Changements de base ‐ Conversions 4. Binaire hexadécimal

Convertir du binaire en hexadécimal diviser le nombre binaire en «tranches de


quatre» en partant de la droite.
Chacun des «paquets» est ensuite converti en hexadécimal.
Cette méthode revient à fractionner en décompositions successives.
Exemple : (110101110001)2 = ( 1101 0111 0001 )2
=( D 7 1 )16

Exemple :
Effectuer une série de factorisations partielles de la base de destination. Ici c'est 16 = 24.
Les résidus constituent les chiffres de la conversion.
(110101110001)2
(110101110001)2 =1.211+1.210+0.29+1.28+0.27+1.26+1.25+1.24+0.23+0.22+0.21+1.20
= {1.23+1.22+0.21+1.20}.(24)2 + {0.23+1.22+1.21+1.20}.24 +{0.23+0.22+0.21+1.20}
= 13.162 + 7.161 +1.160

15
Chapitre 1 : Représentation de l’information numérique
II. Changements de base ‐ Conversions 5. Hexadécimal Binaire

Ecrire chaque quartet sur 4 bits en complétant éventuellement avec des zéros (BC34) 16

(BC34) 16 = (1011 1100 00110100)2


( B C 3 4 )16

16
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.1. Code naturel

✓ C’est le code binaire naturel et ses dérivés (hexadécimal)

✓ Répond aux règles classiques de l’arithmétique des nombres positifs

17
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.2. Le décimal codé binaire (DCB) ou BCD enanglais

➢ Chaque chiffre décimal est codé en binaire sur 4 bits.


➢ Ce codage permet le passage facile du décimal au binaire
➢ Utiliser pour afficher des valeursnumériques.

Exemple :

7239 = (0111 0010 0011 1001)DCB = (0111001000111001)2.


7 2 3 9

18
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3. Représentation des nombres entiers négatifs

Il existe deux méthodes :

1. Le codage des négatifs par le signe et la valeur absolue

2. Complément arithmétique ou complément à deux

19
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3. Représentation des nombres entiers négatifs


Signe et valeur absolue

S
Sur 8 bits, +35(10) sera codée par:

0 0 1 0 0 0 1 1

Sur 8 bits, -35(10) sera codée par:


1 0 1 0 0 0 1 1

20
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3. Représentation des nombres entiers négatifs


Le complément à 1
Le complément à 1 d’un nombre est obtenu en inversant chaque bit
(0 remplacé par 1 et 1 remplacé par 0).

On a donc x + Complément(x) = 2n-1 (n est le nombre de bits de x).

Exemple :
Complément(22) = Complément(10110) = 01001

Par conséquent, la valeur négative –x est représentée par Complément(x) + 1.

21
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3. Représentation des nombres entiers négatifs


35(10):

0 0 1 0 0 0 1 1

Le complément à 1 de 35(10)
1 1 0 1 1 1 0 0

22
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés
1.3 Représentation des nombres entiers négatifs
Le complément à 2

• Le codage par complément à 2 permet la représentation


des nombres négatifs utilisée dans les calculateurs.
• Le signe est le bit de poids fort : 0 pour le signe positif et 1
pour le signe négatif.

C1 1 1 0 1 1 1 0 0

+1
C2 = -35 1 1 0 1 1 1 0 1

complément à 2 = complément à1 +1

23
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3. Représentation des nombres entiers négatifs


0 0 1 0 1 0 0 1 1
1
0
1
1 1 0 1 1 1 1 0 1
1
0
0
1 0 0 0 0 0 0 0 0

On ignore le 1 en 9e position.

24
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.3 Représentation des nombres entiers négatifs


Pour faire la conversion inverse, on procède de manière identique :

C1 0 0 1 0 0 0 1 0

+1

C2 = 35 0 0 1 0 0 0 1 1

Et on retrouve la valeur 35 de départ.

25
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.4. Représentation des nombres fractionnaires


Les nombres fractionnaires : comportent des chiffres après lavirgule.
Dans le système décimal, onécrit par exemple :

12,346 = 1*101 + 2*100 + 3*10‐1 + 4*10‐2 + 6*10‐3


En général, en base b, onécrit :

anan-1 …a1a0, a-1a-2 …a-p = anbn+an-1bn-1+ …+a0b0+a-1b-1+ …+a-pb-p

26
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.4. Représentation des nombres fractionnaires

Virgule fixe
➢ Les ordinateurs n'ont pas de virgule au niveau de la machine.

➢ Ces nombres sont donc traités comme des entiers avec une virgule virtuelle gérée
par le programme.

➢ Cette gestion n'est pas facile, l'arithmétique en virgule flottante lui est préférée
(floating point).

➢ La position de la virgule est gérée automatiquement.

27
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.5. Représentation des nombres réels

Le codage utilisé est basé sur la notation scientifique des nombres :

N = ± m * be
N = ± mantisse * (base)exposant

– un signe ±
– une mantisse m
– un exposant e
– une base b

28
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.5. Représentation des nombres réels


Exemple:
351000 = 0,351 * 106
N est le nombre considéré = 351000
m est appelé la mantisse = 0.351
e est l'exposant = 6
B est la base = 10

Pour représenter de tels nombres il suffit de stocker l'exposant et la mantisse.

Ces nombres sont appelés nombre à virgule flottante, car il possède de nombreuses représentations
différentes qui dépendent uniquement de la position de la virgule :
0.3141592 . 101 = 3.141592 . 100 = 31.41592 . 10-1= 314.1592 . 10-2 etc...

29
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.5. Représentation des nombres réels


Exemple:

Binaire Décimal
(11, 01)2 = 1 * 21 + 1 * 20 + 0 * 2-1 + 1 * 2-2 = 3,25
Décimal Binaire
3 = (011)2
0,25 * 2 = 0,5 = 0+ 0,5
0,5 * 2 = 1,0 = 1+0

le nombre 3,25 qui s'écrit en base 2 (11, 01)2.

30
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.5. Représentation des nombres réels


Norme IEEE 754 (simple précision)
Normaliser la représentation en base 2 de telle sorte qu'elle s'écrive sous la forme
mantisse exposant:
N = 1,xxxxxxxxxxx*2n
Exemple
11,01 = 1,101 * 21

➢ le signe est représenté par un seul bit, le bit de poids fort (celui le plus à gauche) ;
➢ l'exposant est codé sur les 8 bits consécutifs au signe ;
➢ la mantisse (les bits situés après la virgule) sur les 23 bits restants ;
Ainsi le codage se fait sous la forme suivante:

S exposant mantisse
biaisé 23 bits 31
Chapitre 1 : Représentation de l’information numérique
III. Codage des nombres en machine 1. Codes pondérés

1.5. Représentation des nombres réels

Exemple
Soit à coder la valeur 525,5

525,5 s'écrit en base 2 de la façon suivante: 1000001101,1.

On la normalise tout d’abord sous la forme : 1,0000011011 x29

Par conséquent, le
bit s vaut 0,
l'exposant eb vaut 9 +127 = 136 : soit 1000 1000
et la mantisse m est 0000011011.

La représentation du nombre 525.5 en binaire avec la norme IEEE est:


0100010000000000000000000011011
32
Chapitre 1 : Représentation de l’information numérique
VI. Opérations arithmétiques de base 1. Addition et soustraction binaire

L'addition de deux nombres binaires :


Règles :
0+0=0
0+1=1
1+1=0 plus une retenue de 1
Exemple :

1 1 1
1 1 1 1 0 1
+ 1 0 1 1 1 0
1 1 0 1 0 1 1

33
Chapitre 1 : Représentation de l’information numérique
VI. Opérations arithmétiques de base 1. Addition et soustraction binaire

La soustraction de deux nombres


binaires : Règles :
0-0=0
1 – 1 =0
1-0=1
0-1=0 plus une retenue de 1
Exemple :
0110
- 0011

0011
34
Chapitre 1 : Représentation de l’information numérique
VI. Opérations arithmétiques de base 1. Addition et soustraction binaire

La soustraction binaire : Faire l’opération d’addition avec le complément à deux


du nombre négatif.

Exemple :
195 – 35 195 +(‐35) 195: 1 1 0 0 0 0 1 1
1 95
+ (‐ 35) 35 : 0 0 1 0 0 0 1 1
160

11000011
+ 1 10 1 1 1 0 1
110100000
Cette retenue n'est pas prise en compte
35
Chapitre 1 : Représentation de l’information numérique
VI. Opérations arithmétiques de base 2. Multiplication

0x0=0
0x1=0
1x0=0
1x1=1
La multiplication de deux nombres binaires se fait de la manière suivante :

36
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII
➢Les caractères (données non numériques) : Pour manipuler ces caractères il
est nécessaire de les coder. Il existe plusieurscodes.

➢Le plus connu de ces codes, est le code ASCII (American Standard Code for
Information Interchange) défini en 1963aux Etats‐Unis.

➢Les caractères, appelés symboles alphanumériques, incluent les lettres


majuscules et minuscules, les symboles de ponctuation (& ~ , .; # "‐etc...), et les
chiffres.

➢Un texte ou chaîne de caractères, sera représenté comme une suite de


caractères.
➢Le codage des caractères est fait par une table de correspondance indiquant
la configuration binaire représentant chaquecaractère.

37
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII

➢ Le code ASCII représente chaque caractère sur 7 bits

➢Notons que le code ASCII original, défini pour les besoins de


l'informatique en langue anglaise) ne permet pas la
représentation des caractères accentués (é, è, à, ù, ...), et encore
moins des caractères chinois ou arabes.

➢Pour ces langues, d'autres codages existent, utilisant 16 bits par


caractères (unicode).

38
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII

Info

Base 10: 73 110 102 111

Base 16: 49 6E 66 6F

Base 2: 01001001 01101110 01100110 01101111


Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII
Code ASCII : Les codes de contrôle:

Dec Hex Symbole Signification Dec Hex Symbole Signification


00 00 NUL Absence de caractère, blanc 16 10 DLE Data Link Escape, Echapement.
01 01 SOH Start Of Heading, début d'en-tête. 17 11 DC1 Device Controls 1, commande 1
02 02 STX Start of TeXte, début du texte. 18 12 DC2 Device Controls 1, commande 2
03 03 ETX End of TeXte, fin de texte. 19 13 DC3 Device Controls 1, commande 3
04 04 EOT End Of Transmission, fin de trans… 20 14 DC4 Device Controls 1, commande 4
05 05 ENQ ENQuiry, demande. 21 15 NAK Negative AcKnowledgement
06 06 ACK ACKnowledge, accusé de réception. 22 16 SYN SYNchronous, synchronisation
07 07 BEL Bell, sonnerie. 23 17 ETB End of Transmission Block
08 08 BS BackSpace, Effacement arrière. 24 18 CAN CANcel, annulation.
09 09 HT Horizontale Tabulation. 25 19 EM End of Medium, fin du support
10 0A LF Line Feed, Nouvelle ligne. 26 1A SUB SUBstitute, remplacement.
11 0B VT Vertical Tabulation. 27 1B ESC ESCape, extension du codage.
12 0C FF Form Feed, Nouvelle page. 28 1C FS File Separator.
13 0D CR Carriage Return, retour chariot. 29 1D GS Group Separator.
14 0E SO Shift Out, Changement de code. 30 1E RS Record Separator.
15 0F SI Shift In, retour au code standard. 31 1F US Unit Separator.

127 7F DEL Delete, Supprime


41
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII
Code ASCII: Les signes:
Dec. Hex. Caractère Dec. Hex. Caractère

32 20 Espace ou blanc 58 3A : Deux points


33 21 ! Point d’exclamation 59 3B ; Point virgule
34 22 " Double quote (guillemet) 60 3C < Inférieur
35 23 # Dièse 61 3D = Egal
36 24 $ Dollar 62 3E > Supérieur
37 25 % Pourcentage 63 3F ? Point d'interrogation
38 26 & Et commercial 64 40 @ Arobase
39 27 ' Accent, apostrophe
40 28 ( Parenthèse droite 91 5B [ Crochet gauche
41 29 ) Parenthèse gauche 92 5C \ Slash inverse
42 2A * Étoile, multiplication 93 5D ] Crochet droit
43 2B + Plus 94 5E ^ flèche haut
44 2C , Virgule 95 5F _ Souligné
45 2D - Tiret, moins 96 60 ` tick
46 2E . Point 123 7B { accolade gauche
47 2F / Slash 124 7C | trait vertical
125 7D } accolade droite
126 7E ~ Tilde
42
Chapitre 1 : Représentation de l’information numérique
V. Codage des caractères : Le code ASCII
8 9 A B C D E F
Caractères ASCII étendus
0 Ç É á _ + ð Ó -
1 ü æ í _ - Ð ß ±
2 é Æ ó _ - Ê Ô _
3 â ô ú ¦ + Ë Ò ¾
4 ä ö ñ ¦ - È õ ¶
5 à ò Ñ Á + i Õ §
6 å û ª Â ã Í µ ÷
7 ç ù º À Ã Î þ ¸
8 ê ÿ ¿ © + Ï Þ °
9 ë Ö ® ¦ + + Ú ¨
A è Ü ¬ ¦ - + Û ·
B ï ø ½ + - _ Ù ¹
C î £ ¼ + ¦ _ ý ³
D ì Ø ¡ ¢ - ¦ Ý ²
E Ä × « ¥ + Ì ¯ _
F Å ƒ » + ¤ _ ´

43