Telechargé par Nabila Touisi

Conversion entre bases

publicité
I-
Conversion entre bases :
1- Codage :
Définition :
Le codage est la conversion d’un nombre décimal en un système de base «B». Il
s’obtient en divisant successivement le nombre décimal par B jusqu’au
moment où le quotient devient nul. Le nombre cherché sera obtenu en
écrivant les restes du bas vers le haut.
Exemples : Coder le nombre décimal (45)10 en binaire puis en hexadécimal
2- Décodage :
Définition :
Le décodage est l’opération inverse du codage. La somme des pondérations
donne directement l’équivalent décimal du nombre.
Exemples :
Décoder les nombres suivants : 101110(2), 2CA(16), 124(8)
3- Transcodage :
Définition :
Le transcodage d’un nombre est le passage entre deux systèmes autres que le
décimal.
Méthode de transcodage :
D’une manière générale pour transcoder un nombre d’une base «B1» en une
base «B2 », il faut décoder le nombre écrit en base «B1», puis coder le nombre
résultat du décodage, dans le système de base «B2».
Le transcodage peut être réalisé directement de la base «B1» vers la base «B2»
dans les cas particuliers suivants :
 Conversion hexadécimal – binaire :
Il s’agit de remplacer chacun symbole hexadécimal par les 4 bits appropriés,
comme l’illustre l’exemple suivant.
Déterminez l’équivalent binaire du nombre hexadécimal CF03(16)
 Conversion binaire – hexadécimal :
Il s’agit de diviser le nombre binaire en groupe de 4 bits et de remplacer chacun
de ces groupes par le symbole hexadécimal équivalent, comme l’illustre
l’exemple suivant.
Convertir 10101001101(2) en base 16
 Conversion Octal – binaire :
La base 8 est une puissance de la base 2. Pour convertir un nombre octal en
binaire, cela veut dire que pour représenter un seul chiffre octal en binaire, il
faut utiliser 3 bits.
Ainsi, la représentation des chiffres de la base 8 en binaire est la suivante :
Chiffre octal
0
1
2
3
4
5
6
7
 Application 1 :
Chiffre binaire équivalent
000
001
010
011
100
101
110
111
Soit le nombre octal X= (175)8 = ( ?) 2 :
Pour trouver l’équivalent binaire de ce nombre octal, il suffit de trouver
l’équivalent de chaque chiffre octal.
1
0
0
1
7
1
1
1
5
1
Octal
0
1
Binaire
X= (175)8= (1111101)2
 Application 2 :
Soit le nombre binaire Y= (1111101)2 = ( ?) 8 :
Pour trouver l’équivalent octal de ce nombre binaire, il faut :
- Regrouper les bits du nombre binaire en groupe de 3bits en partant de la
droite. Si le dernier groupe ne contient pas trois bits, ajouter des zéros.
- Trouver l’équivalent octal de chaque groupe de 3 bits
0
1
0
1
1
7
1
1
1
5
0
1
Binaire
Octal
Y= (1111101)2 = (175) 8 (les deux zéros sur la gauche sont superflus)
Y1 = (11001010010110)2 = (011 001 010 010 110)2 = (31226)8
Y2 = (110010100,10101)2 = (110 010 100,101 010)8 = (624,51)8
 Conversion hexadécimal – Octale :
Pour convertir de l’hexadécimal à l’octal le plus simple est de passer par le
binaire
Exemple :
(1, BSC) 16 = ( ?)8
Etape 1 : on regroupe par 4 bits
Etape 2 : on regroupe par 3 bits
Résultat : (15,534)8
II-
Opérations arithmétiques en binaire :
Addition binaire : L'addition de deux nombres binaires est parfaitement
analogue à l'addition de deux nombres décimaux.
0+0=0
1+0=1
1 + 1 = 10
1 + 1 + 1 = 11
Soustraction binaire : la soustraction en binaire est également basée sur la
notion de retenue. Cependant, dans le système binaire, il n'y a que deux
chiffres dont le plus grand est 1.
0-0=0
1-0=1
1-1=0
0-1=1
Multiplication : La multiplication binaire s’effectue selon le principe des
multiplications décimal, on multiplie donc le multiplicande par chacun des bits
du multiplicateur.
Division : la multiplication était basée sur une succession d’addition
inversement la division va être basée sur une succession de soustraction.
III-
La complémentation :
1- Représentation des entiers signés :
Ce sont des nombres possédant un signe + ou -, il existe 3 méthodes pour les
représenter :
a) SVA : Signe et Valeur Absolue
b) Cà1 : Complément à 1
c) Cà2 : Complément à 2
1-1- Signe et Valeur Absolue (SVA) :
Si un nombre est représenté sur n Bits, alors la valeur absolue du nombre est
codée sur (n-1) bits
 0 : représente un nombre positif
 1 : représente un nombre négatif
Exemple :
(-5)10 = (-101)2= (1101) sva
+6+3 = 0110 + 0011 = 1001 = (-1)
1-2- Complément à 1 (Cà1) :
Dans cette représentation le premier bit est réservé pour le signe et si le
nombre est positif alors il garde son format, sinon (il est négatif) alors chaque
bit est inversé (0 devient 1 et 1 devient 0).
Exemple 1:
-13+4 = (11101)sva+(00100)sva=(10010)cà1+(00100)cà1= (10110)cà1
Pour le transformer en forme naturelle il faut remplacer le 1 (bit de signe) par
le signe (-) puis inverser le reste des bits, (10110)cà1=(-1001)=(-9)
Exemple 2 : opération 5 bits
+13-4=(+1101)2+(-0100)2
= (01101)sva+(10100)sva
= (01101)cà1+(11011)cà1
=1 (01000)cà1 retenu = (01000)cà1 + 1 = (01001)Cà1
(01001)sva= (+1001)2 = (+9)
1-3- Complément à 2 (Cà2) :
Dans cette représentation le premier bit est réservé pour le signe, et si le
nombre est positif alors il garde son format, sinon il est négatif) il est
transformé en cà1 puis ajouté a 1.
 L’intervalle des nombres représentables sur n bits en SVA est : [-(2n-1-1),
+ (2n-1-1)]
 Le nombre de combinaisons possibles sur n bits est : 2n
 Le nombre de valeurs : 2n
Exemple :
(-5)= (1101)sva=(1010)cà1=1010+1=1011cà2
Exemple 1 : opération sur 5 bits
-13+4= (-1101)2+(+0100)2
= (11101)sva+(00100)sva
= (10010)cà1+(00100)cà1
= (10011)cà2+(00100)cà2
= (10111)cà2 pas de retenu
(11000)cà1= (11001)sva = (-1001)2=(-9)
Exemple 2 : opération sur 5 bits
+13-4=(+1101)2+(-0100)2
= (01101)sva+(10100)sva
= (01101)cà1+(11011)cà1
= (01101)cà2+(11100)cà2
=(01001)sva= (-1001)2 = (+9)
1-4- Débordement Overflows :
Espace réservé pour le résultat est insuffisant
Exemple : addition de deux nombres de même signe avec un résultat de signe
différent.
Exemple :
+6+5= 0110 + 0101 = 1011 débordement (il manque d’espace)
Exercice d’application :
 Donner le complément à 2 des nombres signés sur 8 bits :
-1
-57
-128
-160
 Réaliser les opérations suivantes sur 8 bits :
-3
-5
+ - 127
+-4
= - 130
= -9
Téléchargement