Representation Donnees
Representation Donnees
Representation Donnees
Introduction
Les informations traitées par un ordinateur peuvent être de différents types à savoir les
textes, les nombres, etc... Mais elles sont toujours représentées et manipulées par l’ordinateur
sous forme binaire. Toute information sera traitée comme une suite de 0 et 1. L’unité
d’information est le chiffre binaire 0, 1 appelé bit (Binary Digit).
Le codage d’une information consiste à établir une correspondance entre la représentation
externe (habituelle de l’information) et sa représentation interne dans la machine.
I- Changement de base
Avant d’aborder la représentation des différents types de données c'est-à-dire caractères,
réels, entiers, etc …, il convient de se familiariser avec la représentation d’un nombre dans une
base quelconque. Nous utiliserons les bases 2, 8, 10,16.
Habituellement, on utilise la base 10 pour représenter les nombres c'est-à-dire que l’on écrit
à l’aide de dix symboles distincts qu’on appelle chiffre.
En base b, on utilise b chiffres. Pour représenter un nombre x par exemple en base b, notons
ai, la suite des chiffres utilisés pour écrire un nombre, alors x=aiai-1…….a0
En base 10, b=10, ai ϵ{0,1,2,3,4,------,9}
b=2 ai ϵ {0,1}
b=16 ai ϵ{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
1
décimal ou dans les autres systèmes de numération. C’est un système à poids positionnel
puisque chaque chiffre binaire est affecté d’un poids exprimé en puissance 2.
Poids 23 22 21 20 2-1 2-2 2-3
de rang
Nombre 1 0 1 1 , 1 0 1
2
III- Les conversions
Ici, il est question de procéder à la conversion d’un nombre d’une base à une autre.
III.1- conversion binaire décimal
Nous avons vu que les systèmes de numération binaire est un système à poids
positionnel dans lequel chaque bit est affecté d’un certain poids qui dépend de son rang par
rapport au poids de bit le plus faible. Ainsi, tout nombre binaire peut être transformé en son
équivalent décimal en additionnant les poids de diverses positions où se trouve le nombre 1.
11011 24 +23 +22+ 21+ 20= 2710
2423222120
La méthode consiste donc à trouver le poids c'est-à-dire la puissance de 2 pour chaque
position du nombre où il y a un 1 puis additionner le tout.
III.2- conversion décimal-binaire
Il existe deux façons de convertir un nombre décimal en son équivalent binaire.
1ère méthode : méthode des petits nombres
La méthode qui convient aux petits nombres est l’inverse de la démarche ci-dessus. Le
nombre décimal est exprimé comme une puissance de 2 puis on inscrit des 1 et 0 vis-à-vis des
positions binaires appropriées.
Exemple le nombre 45 100000
45=32+8+4+1 1000
=25+23+22+20 100
1
=101101
2ème méthode répétition des divisions successives
Elle convient mieux aux nombres décimaux, il s’agit de répéter la division par 2 du
nombre décimal à convertir et au report des restes pour chaque division jusqu’à ce que le
quotient soit 0. Le nombre binaire résultant s’obtient en écrivant le 1er reste à la position du bit
de poids faible et le dernier reste à la position du bit de poids le plus fort.
(729)10= (1011011001)2
III.3- Conversion octale- décimale
On convertit un nombre octal en son équivalent décimal en multipliant chaque chiffre
octal par son poids positionnel.
Exemple : (372)8 =3x82+7x81+2x80=25010
(24,6)8=2x81+4x80+6x8-1=(20,75)10
- Décimal-octal
3
On convertit un nombre décimal entier en son équivalent octal en employant la méthode
de la répétition des divisions par 8.
Exemple 26610=4128
4728=1001110102
- Conversion binaire- octale
C’est l’inverse de la marche précédente. On fait avec le nombre binaire des groupes de 3
bits en partant des chiffres de poids le plus faible puis on convertit ces triplets en leur
équivalent octal.
Exemple 100 111 010
(4 7 2) 8
III.5- Conversion Hexadécimale-Décimale
Pour convertir un nombre hexadécimal en son équivalent décimal, on exploite le fait
qu’à chaque position du chiffre hexadécimal correspondant un poids. Le chiffre de poids le
plus faible est 160=1.
35616=3x162+5x161+6x160
=768 +80 +6= 85410
2AF16= 2x162+10x161+15x160
III.6- Conversion Hexadécimale-binaire
La base du système hexa égale à la puissance 4ème de 2. L’équivalent binaire d’un
nombre hexadécimal s’obtient en écrivant la suite des équivalents binaires de chacun de ces
signes exprimés au moyen de quatre bits.
Exemple conversion en binaire de (4CA2)16
(4CA2)16= (100110010100010)2
- Binaire – hexa
4
Pour ce faire, on divise le nombre binaire en groupe de quatre bits et on substitue à chaque
groupe son chiffre hexadécimal équivalent. Au besoin, on ajoute des zéros à gauche pour
obtenir un dernier groupe de quatre bits.
Exemple : convertir en hexadécimal
0011 1010 0110
3 A 6
Le code BCD établit une correspondance entre chaque chiffre d’un nombre décimal et
un nombre binaire de 4 bits.
Exemple : 87510
1000 0111 0101 BCD
Le code BCD n’est pas un autre système de numérotation. Il est différent du système
de numérotation binaire.
Exemple : convertir 13710 en binaire pur et en BCD
13710 = 10010012
13710 = 0001 0 011 0111 (BCD)
5
2- Code majoré de trois
Il est apparenté au code DCB. Il facilite les calculs arithmétiques. On le trouve de la même
manière que le code DCB sauf qu’on ajoute 3 à chaque chiffre décimal avant d’opérer la
conversion.
Exemple : codez en +3 les chiffres et les nombres 4 et 48
4+3=7 (0111)(+3) 48=(01111011)en +3
Décimal DCB +3 Groupes invalides
0 0000 0011 0000
1 0001 0100 0001
2 0010 0101 0010
3 0011 0110 1101
4 0100 0111 1110
5 0101 1000 1111
6 0110 1001
7 0111 1010
8 1000 1011
9 1001 1100
On remarque que dans ce code, chaque bit a une pondération de +(-)(2n-1), n étant le rang du
bit dans le nombre. Le 1er chiffre 1 en partant de la gauche est affecté du signe +, le 2ème
chiffre 1 est affecté du signe -, Le 3ème est affecté du signe + etc ….
Exemple : donnez l’équivalence décimale du nombre binaire réfléchi 1011
+ - +
Chiffres 10 1 1
Rang 4 3 2 1
6
Puissance 2423 2221
Pondération + (24-1) – (23-1) – (22-1) + (21-1)
15-3+1=1310
1 2 3 4 5 6
Hors texte Partie Numérique
Les positions 3, 4, 5,6 constituent la partie numérique, les positions 1,2 la partie hors texte
2- Code EBCDIC (Extended Binary Coded Decimal Interchange Code)
C’est une extension à 8 positions binaires du code BCD qui permet de disposer de 8
combinaisons. La représentation à 8 bits constitue un octet. Pour représenter un caractère,
l’octet est divisé en deux parties :
- Le ½ octet de droite représente la partie numérique
- Le ½ de gauche représente la partie Hors texte