CODAGE DE NOMBRES COURS
Codage de nombres
Les informations traitées par les ordinateurs sont de différentes natures : nombres, texte, images, sons, vidéo,
programmes, elles sont toujours représentées sous forme binaire une suite de 0 et de 1
Codage de l’information : permet d’établir une correspondance qui permet de passer d’une représentation (dite
externe) d’une information à une autre représentation (dite interne : sous forme binaire) de la même information, suivant un
ensemble de règle précise.
A. Codage d’un nombre entier
Il existe deux types d’entiers :
o les entiers non signés (positifs)
o les entiers signés (positifs ou négatifs)
1. Les entiers non signés
Le système de numération décrit la façon avec laquelle les nombres sont représentés. On peut décomposer tout
nombre N en fonction de puissances entières de la base de son système de numération.
Exemple :
Le système décimal (b=10) qui est utilisé et pratiqué dans notre vie quotidienne.
Ce système utilise dix chiffres : {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}.
Le chiffre de droite (3) s’appelle le chiffre de poids faible.
3
250310 = 𝟐 × 10 + 𝟓 × 10 + 𝟎 × 10 + 𝟑 × 102 1 0 Le chiffre de gauche (2) s’appelle le chiffre de poids fort.
L’exposant de la base, associé à un chiffre d’un nombre
quelconque, s’appelle le rang. Par exemple 3 est de rang
0 tandis que 2 est de rang 3 ;
On peut généraliser cette notion et écrire sous forme polynomiale tout nombre N de base b quelconque.
𝑖=𝑛 𝑎𝑖 est un chiffre qui appartient à la base b tel que 0≤ a i < b.
𝑁=∑ 𝑎𝑖 × 𝑏 𝑖 i est le rang du chiffre 𝑎𝑖
𝑖=0 n est l’exposant de b du chiffre de poids fort.
Il existe plusieurs systèmes de numérations dont les plus connus sont :
Le système binaire (b=2) qui est utilisé par les ordinateurs. Ce système utilise deux chiffres {0, 1}. L’unité de
transfert utilisée pour les échanges de données est le mot de 8 bits appelé octet
27 26 25 24 23 22 21 20
0 0 1 1 0 0 1 1 octet
001100112 = 0 × 2 + 0 × 2 + 1 × 2 + 1 × 2 + 0 × 2 + 0 × 2 + 1 × 21 + 1 × 20 = 5110
7 6 5 4 3 2
Sur Binaire Décimal Combinaisons
0 0
1 bit
1 1
21=2
2 bits Sur n bits, on dispose de 2n combinaisons possibles, qui
10 2 permettent de représenter les nombres entiers naturels
11 3
22=4
3 bits de 0 à 2n – 1
100 4
101 5
110 6
23=8
111 7
4 bits
1000 8
1001 9
1010 10
1011 11
1100 12
24=16
1101 13
1110 14
1111 15
CPGE-Lycée Moulay El-Hassan–Tanger-PSCI – SAIDI AHMED 1
CODAGE DE NOMBRES COURS
Le système hexadécimal (b=16) qui permet de coder quatre bits par un seul symbole. Ce système utilise size chiffres:
: {0,1,2,3,4,5,6,7,8,9,A=10(10),B=11(10),C=12(10),D=13(10),E=14(10),F=15(10)} .
1𝐶2𝐷16 = 1 × 163 + 𝐶 × 162 + 2 × 161 + 𝐴 × 160 = 1 × 163 + 12 × 162 + 2 × 161 + 10 × 160
Transcodage
Le transcodage est l’opération qui permet de passer de la représentation d’un nombre exprimé dans une base à la
représentation du même nombre mais exprimé dans une autre base.
Décimal binaire, hexadécimal
La règle à suivre est les divisions successives :
On divise le nombre par la base b
Puis le quotient par la base b
Ainsi de suite jusqu’à l’obtention d’un quotient nul
La suite des restes correspond aux symboles de la base visée.
On obtient en premier le chiffre de poids faible et en dernier le chiffre de poids fort
Décimal vers Binaire Décimal vers hexadécimal
7510=( ?)2 7510=( ?)16
Base Reste
75 2 1 Base Reste
37 2 1 75 16 11(B)
18 2 0 4 16 4
9 2 1
4 2 0
2 2 0
1 2 1 7510=4B16
7510=10010112
Hexadécimal vers binaire
En Hexa chaque symbole de la base 16 s’écrit sur 4 bits.
Replacer chaque symbole par sa valeur en binaire sur 4 bits.
Exemple
2A716=0011101001112
2 A 7
757F16=0111 0101 0111 11112 0010 1010 0111
Binaire vers hexadécimal
L’idée est de faire des regroupements de 4 bits à partir du poids faible.
Par la suite remplacer chaque regroupement par la valeur Héxa correspondante.
Exemple
75(10)=1001011(2)= 4B(16) 0100 1010
416 B16
100010101001112=0010 0010 1010 01112=22A716
Arithmétique en base 2
Les opérations sur les entiers s’appuient sur des tables d’addition et de multiplication :
a b a+b a*b
0 0 0 0
0 1 1 0
1 0 1 0
1 1 10 1
Exemple :
1 0 1 1 0 1 1 0 1 0
+ 1 1 0 1 1 - 1 0 0 1 1
1 1 0 0 0 1 0 0 1 1 1
Les multiplications et divisions se font sur le même mode, en adaptant les règles de l’arithmétique décimale.
Les causes possibles de dépassement de capacité :
o division entière : perte de partie fractionnaire
o multiplication, addition, soustraction : propagation de retenue au-delà de 231
CPGE-Lycée Moulay El-Hassan–Tanger-PSCI – SAIDI AHMED 2
CODAGE DE NOMBRES COURS
Addition binaire (8 bits) avec débordement (overflow): La retenue est perdue
Addition binaire (8 bits) Addition binaire (8 bits) avec débordement ou overflow
Multiplication binaire (4 bits)
Sur 4 bits le résultat est faux
Sur 7 bits le résultat est juste
Sur 8 bits on complète à gauche par un 0
Arithmétique en base 16
486516+ 7A5116= ?16
11=B16
18=1216
Résultat : C2B616
2. les entiers signés (positifs ou négatifs)
Il existe 2 méthodes pour représenter les nombres négatifs :
binaire signé
Complément à 2 (complément à vrai)
Représentation binaire signé
Le bit le plus significatif est utilisé pour représenter le signe du nombre (1 : signe négatif, 0 : signe positif) et les autres
bits codent la valeur absolue du nombre
Sur 3 bits valeur
000 +0 Sur 3 bits, l’intervalle des valeurs qu’on peut représenter en valeur absolue
001 +1 −(𝟐(𝟑−𝟏) − 𝟏) ≤ 𝑵 ≤ +(𝟐(𝟑−𝟏) − 𝟏)
010 +2
−𝟑 ≤ 𝑵 ≤ +𝟑
011 +3
Sur n bits,
100 -0
101 -1 −(𝟐(𝒏−𝟏) − 𝟏) ≤ 𝑵 ≤ +(𝟐(𝒏−𝟏) − 𝟏)
110 -2
111 -3
Faiblesse de la représentation avec la valeur absolue :
Le zéro possède deux représentations +0 et -0 ce qui conduit à des difficultés au niveau des opérations arithmétiques.
o Sur 4 bits : +0 = 0000(bs), -0 = 1000(bs)
la soustraction ne peut pas être effectuée en additionnant l’opposé d’un nombre.
Exemple :
Sur 8 bits, codage des nombres en (bs)
-24(10) = 10011000(bs)
100(10)=01100100(bs)
-100(10)=11100100(bs)
CPGE-Lycée Moulay El-Hassan–Tanger-PSCI – SAIDI AHMED 3
CODAGE DE NOMBRES COURS
Représentation en complément à 2
Les nombres positifs sont codés de la même manière qu’en binaire pure.
un nombre négatif est codé en ajoutant la valeur 1 à l’inversion de chaque bit de la représentation de sa valeur
absolue
Le bit le plus significatif est utilisé pour représenter le signe du nombre
Si on travaille sur 3 bits
Valeur Valeur en Valeur Sur 3 bits on remarque que les valeurs sont comprises entre -4 et +3
en CA2 binaire décimal Sur n bits, l’intervalle des valeurs qu’on peut représenter en CA2 :
000 000 +0 -(2(n-1)) ≤ N ≤ + (2(n-1)-1)
001 001 +1
010 010 +2
Dans cette représentation, le bit du poids fort nous indique le signe
011 011 +3 Un seul codage pour 0.
100 -100 -4
101 -011 -3
110 -010 -2
111 -001 -1
Exemple :
Quelle est la valeur décimale représentée par la valeur 101010 en complément à deux sur 6 bits ?
Le bit poids fort indique qu'il s'agit d'un nombre négatif.
Valeur = -CA2(101010)
= -(010101 + 1)
= -(010110)2= -(22)
o -24 en complément à 2 sur 8 bits
o 24 est codé par 0 0 0 1 1 0 0 0(2)
o -24 -->1 1 1 0 0 1 1 1(cà1)
o donc -24 est codé par 1 1 1 0 1 0 0 0(cà2)
Arithmétique en base 2
Effectuer les opérations suivantes sur 5 Bits….
(+9)+ (+4)=+13 (+9)+ (-4)=+5
0 1 0 0 1 0 1 0 0 1
+ 0 0 1 0 0 + 1 1 1 0 0
0 1 1 0 1 report 1 0 0 1 0 1
1310=011012 001012=510
(-9)+ (-4)=-13 (-9)+ (+9)=+13
1 0 1 1 1 1 0 1 1 1
+ 1 1 1 0 0 + 0 1 0 0 1
Report 1 1 0 0 1 1 Report 1 0 0 0 0 0
-CA2(100112)=-(011012)=-1310 000002=010
La retenue et le débordement
On dit qu’il y a une retenue si une opération arithmétique génère un report.
On dit qu’il y a un débordement (Over Flow ) ou dépassement de capacité: si le résultat de l’opération sur n bits et
faux
o Le nombre de bits utilisés est insuffisant pour contenir le résultat
o Autrement dit le résultat dépasse l’intervalle des valeurs sur les n bits utilisés.
Cas de débordement
(+9)+(+8)=+17 (-9)+(-8)=-17
0 1 0 0 1 1 0 1 1 1
+ 0 1 0 0 0 + 1 1 0 0 0
Négatif 1 0 0 0 1 Positif 0 1 1 1 1
Un débordement
si la somme de deux nombres positifs donne un nombre négatif.
ou la somme de deux nombres négatifs donne un Nombre positif
Il n’y a jamais un débordement si les deux nombres sont de signes différents.
CPGE-Lycée Moulay El-Hassan–Tanger-PSCI – SAIDI AHMED 4