SlideShare une entreprise Scribd logo
Chapitre 2 : Représentation de l’information
             dans la machine
• Introduction
• Représentation des nombres négatifs
   – Signe / valeur absolue
   – Complément à 1
   – Complément à 2
• Représentation des nombres réels
   – Virgule fixe
   – Virgule flottante
• Le codage BCD et EXCESS3
• Représentation des caractères
Introduction
        Information

Instructions    Données

         Caractère    Numérique

                                  Entiers

                                            Non signés

                                             Signés

                                  Réels
1. Représentation des nombres entiers
• Il existe deux types d’entiers :
   – les entiers non signés ( positifs )
   – et les entiers signés ( positifs ou négatifs )
• Problème : Comment indiquer à la machine qu’un
  nombre est négatif ou positif ?

• Il existe 3 méthodes pour représenter les nombres
  négatifs :
   – Signe/ valeur absolue
   – Complément à 1( complément restreint )
   – Complément à 2 ( complément à vrai )
1.1 Représentation signe / valeur absolue ( S/VA )

 •   Si on travail sur n bits , alors le bit du poids fort est utilisé pour
     indiquer le signe :
       1 : signe négatif
       0 : signe positif
 •   Les autres bits ( n -1 ) désignent la valeur absolue du nombre.

 •   Exemple : Si on travail sur 4 bits.



              1 001                                      0 001


         Signe      Valeur absolue                  Signe       Valeur absolue

1001 est la représentation de - 1            0001 est la représentation de + 1
Sur 3 bits on obtient :
 signe    VA     valeur
                                • Les valeurs sont comprises
 0        00     +0
                                entre -3 et +3
 0        01     +1
 0        10     +2
 0        11     +3             -3 ≤ N ≤ +3
                                - ( 4-1 ) ≤ N ≤ + (4 -1 )
                                -(22 -1) ≤ N ≤ +(22-1 )
 1        00     -0
                                -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 )
 1        01     -1
 1        10     -2
 1        11     -3



     Si on travail sur n bits , l’intervalle des valeurs qu’on
     peut représenter en S/VA :
                 -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 )
Avantages et inconvénients de la représentation
              signe/valeur absolue


• C’est une représentation assez simple .
• On remarque que le zéro possède deux représentations +0 et -0 ce
  qui conduit à des difficultés au niveau des opérations arithmétiques.
• Pour les opérations arithmétiques il nous faut deux circuits : l’un
  pour l’addition et le deuxième pour la soustraction .

 L’idéal est d’utiliser un seul circuit pour faire les deux opérations,
   puisque   a- b =a + ( -b )
1.2 Représentation en complément à un
               ( complément restreint )

• On appel complément à un d’un nombre N un autre nombre
  N’ tel que :
                             N+N’=2n-1
   n : est le nombre de bits de la représentation du nombre N .

   Exemple :
Soit N=1010 sur 4 bits donc son complément à un de N :
              N’= (24 - 1)-N
N’=(16-1 )-(1010)2= (15 ) - (1010)2 = (1111)2 – (1010)2 = 0101

                          1 0 1 0
                      +
                          0 1 0 1
                          1 1 1 1
Remarque 1 :

• Pour trouver le complément à un d’un nombre, il suffit
  d’inverser tous les bits de ce nombre : si le bit est un 0
  mettre à sa place un 1 et si c’est un 1 mettre à sa place
  un 0 .
• Exemple :


         Sur 4 Bits              Sur 5 Bits

         1 0 1        0        0 1 0 1            0


         0 1 0        1        1 0 1          0   1
Remarque 2

• Dans cette représentation , le bit du poids fort nous indique le signe
  ( 0 : positif , 1 : négatif ).
• Le complément à un du complément à un d’un nombre est égale au
  nombre lui même .
                               CA1(CA1(N))= N
• Exemple :
  Quelle est la valeur décimale représentée par la valeur 101010 en
  complément à 1 sur 6 bits ?
• Le bit poids fort indique qu'il s'agit d'un nombre négatif.
• Valeur = - CA1(101010)
    = - (010101)2= - ( 21)10
Si on travail sur 3 bits :
                      Valeur en    Valeur en       Valeur
                      CA1          binaire         décimal
                      000          000             +0
                      001          001             +1
                      010          010             +2
                      011          011             +3
                      100          - 011           -3
                      101          - 010           -2
                      110          - 001           -1
                      111          - 000           -0



 •Dans cette représentation , le bit du poids fort nous indique le signe .

•On remarque que dans cette représentation le zéro possède aussi une
double représentation ( +0 et – 0 ) .
• Sur 3 bits on remarque que les valeurs sont comprises
entre -3 et +3

                             -3 ≤ N ≤ +3
                    - ( 4-1 ) ≤ N ≤ + (4 -1 )
                     -(22 -1) ≤ N ≤ +(22-1 )
                 -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 )


 Si on travail sur n bits , l’intervalle des valeurs qu’on peut
 représenter en CA1 :

                 -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 )
1.3 Complément à 2 ( complément à vrai )
 • Si on suppose que a est un nombre sur n bits alors :

                         a + 2 n = a modulo 2n

 et si on prend le résultat sur n bits on va obtenir la même
    valeur que a .
                               a + 2 n= a

 Exemple : soit a = 1001 sur 4 bits
      24= 10000
                        +
                              1 0 0 1
                          1 0 0 0 0
                                 1 1 0 0 1

Si on prend le résultat sur 4 bits on trouve la même valeur de a = 1001
•Si on prend deux nombres entiers a et b sur n bits , on
remarque que la soustraction peut être ramener à une
addition : a – b = a + (-b)
• Pour cela il suffit de trouver une valeur équivalente à -b ?
a – b = a + 2n – b = a + (2n – 1) – b + 1

On a b + CA1(b)= 2n – 1 donc CA1(b) = (2n – 1) – b

Si on remplace dans la première équation on obtient :
       a– b = a + CA1(b) + 1

La valeur CA1(b)+1 s’appelle le complément à deux de b :
                  CA1(b)+1 = CA2(b)

Et enfin on va obtenir : a - b = a+ CA2(b)  transformer
la soustraction en une addition .
Exemple

•   Trouver le complément à vrai de : 01000101 sur 8 bits ?

CA2(01000101)= CA1(01000101)+ 1
CA1(01000101)= (10111010)
CA2(01000101)=(10111010)+ 1 = (10111011)

• Remarque 1 :
Pour trouver le compétemment à 2 d’un nombre : il faut parcourir les
  bits de ce nombre à partir du poids faible et garder tous les bits
  avant le premier 1 et inverser les autres bits qui viennent après.


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



      1 0 1 1 1 0 1 1                 0 0 1 0 1 1 0 0
Remarque 2

• Dans cette représentation , le bit du poids fort nous indique le signe
  ( 0 : positif , 1 : négatif ).
• Le complément à deux du complément à deux d’un nombre est
  égale au nombre lui même .
                             CA2(CA2(N))= N
• 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)
Si on travail sur 3 bits :

                   Valeur en     Valeur en valeur
                   CA2           binaire
                   000           000        +0
                   001           001        +1
                   010           010        +2
                   011           011        +3
                   100           - 100      -4
                   101           - 011      -3
                   110           - 010      -2
                   111           - 001      -1




•Dans cette représentation , le bit du poids fort nous indique le signe .
•On remarque que le zéro n’a pas une double représentation.
•Sur 3 bits on remarque que les valeurs sont comprises entre -4 et +3


                                -4 ≤ N ≤ +3
                          - 4 ≤ N ≤ + (4 -1 )
                           - 22 ≤ N ≤ +(22-1 )
                        -2 (3 -1) ≤ N ≤ (2 (3 -1) -1 )


 Si on travail sur n bits , l’intervalle des valeurs qu’on peut
 représenter en CA2 :
                     -(2 (n -1)) ≤ N ≤ +(2 (n -1) -1 )


La représentation en complément à deux ( complément à vrai )
est la représentation la plus utilisée pour la représentation des
              nombres négatifs dans la machine.
Opérations arithmétiques en CA2
 Effectuer les opérations suivantes sur 5 Bits , en utilisant la représentation en CA2




                                                                       0 1 0 0 1
                      0 1 0 0 1                                 +
                 +                              +9
  +9                                                                   1   1 1 0 0
                      0 0 1 0 0                 -4
  +4
                                                +5
  + 13                                                           1 0 0 1 0 1
                      0 1 1 0 1


  Le résultat est positif                         Report

  (01101)2= ( 13)10
                                             Le résultat est positif
                                             (00101)2= ( 5)10
1 0 1 1 1                           1 0 1 1 1
 -9              +                    -9             +
                      1 1 1     0 0                       0 1 0 0 1
 -4                                   +9
 - 13                                 +0
                  1 1       0 0 1 1                  1   0 0 0 0 0


   Report                             Report

Le résultat est négatif :
Résultat = - CA2 (10011)= -( 01101)   Le résultat est positif

= - 13                                (00000)2= ( 0)10
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 .
   – Le nombre de bits utilisés est insuffisant pour contenir le résultat
   – Autrement dit le résultat dépasse l’intervalle des valeurs sur les
     n bits utilisés.
Cas de débordement

                       0 1                                  1 0
                         0 1 0 0 1                            1 0 1 1 1
  +9               +                                    +
                                       -9
                        0 1 0 0 0                            1 1 0   0 0
   +8                                  -8
  + 17                  1 0   0 0 1    - 17
                                                              0   1 0 1 1


         Négatif
                                              Positif




 •Nous avons 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 y a jamais un débordement si les deux nombres sont de signes
 différents.
2. La représentation des nombres réels
• Un nombre réel est constitué de deux parties : la partie
  entière et la partie fractionnelle ( les deux parties sont
  séparées par une virgule )
• Problème : comment indiquer à la machine la position de
  la virgule ?
• Il existe deux méthodes pour représenter les nombre
  réel :
   – Virgule fixe : la position de la virgule est fixe
   – Virgule flottante : la position de la virgule change
      ( dynamique )
2.1 La virgule fixe
•   Dans cette représentation la partie entière est représentée sur
    n bits et la partie fractionnelle sur p bits , en plus un bit est
    utilisé pour le signe.
•   Exemple : si n=3 et p=2 on va avoir les valeurs suivantes

Signe    P.E     P.F      valeur
0        000     00       + 0,0             Dans cette représentation les
0        000     01       + 0,25            valeurs sont limitées et nous
0        000     10       + 0,5             n’avons pas une grande précision
0        000     11       + 0,75
0        001     .00      + 1,0
.        .       .        .
.        .       .        .
2.2 Représentation en virgule flottante
• Chaque nombre réel peut s’écrire de la façon suivante :
                             N= ± M * b e
   – M : mantisse ,
   – b : la base ,
   – e : l’exposant

• Exemple :
    15,6 = 0,156 * 10+2
   - ( 110,101)2 = - (0,110101)2 * 2+3
    (0,00101)2= ( 0,101)2 * 2-2


Remarque :
on dit que la mantisse est normalisée si le premier chiffre
  après la virgule est différent de 0 et le premier chiffre
  avant la virgule est égale à 0.
• Dans cette représentation sur n bits :
   – La mantisse est sous la forme signe/valeur absolue
      • 1 bit pour le signe
      • et k bits pour la valeur.
   – L’exposant ( positif ou négatif ) est représenté sur p
     bits .


  Signe mantisse     Exposant         Mantisse normalisée

      1 bit              p bits                 k bits


  •Pour la représentation de l’exposant on utilise :
     • Le complément à deux
     • Exposant décalé ou biaisé
Représentation de l’exposant en complément à deux

•    On veut représenter les nombres ( 0,015)8 et -( 15, 01)8 en virgule
     flottante sur une machine ayant le format suivant :

        Signe mantisse         Exposant en CA2    Mantisse normalisée

            1 bit                    4 bits                8 bits

    (0,015)8=(0,000001101)2= 0,1101 * 2-5

    Signe mantisse : positif ( 0)
    Mantisse normalisé : 0,1101
    Exposant = -5  utiliser le complément à deux pour représenter le -5
    Sur 4 bits CA2(0101)=1011

               0            1 0 1 1           1 1 0 1 0 0 0 0
                    1 bit        4 bits                       8 bits
- (15,01)8 = - (001101,000001)2= - 0,1101000001 * 24

  Signe mantisse : négatif ( 1)
  Mantisse normalisée : 0,1101000001
  Exposant = 4 , en complément à deux il garde la même valeur ( 0100)
  On remarque que la mantisse est sur 10 bits (1101 0000 01), et sur la
  machine seulement 8 bits sont utilisés pour la mantisse.
  Dans ce cas on va prendre les 8 premiers bits de la mantisse


         1           0 1 0 0      1 1 0 1 0 0 0 0
             1 bit       4 bits               8 bits


Remarque :
si la mantisse est sur k bits et si elle est représenté sur la machine
 sur k’ bits tel que k> k’ , alors la mantisse sera tronquée : on va prendre
uniquement k’ bits  perdre dans la précision .
L’ Exposant décalé ( biaisé )
•   en complément à 2, l’intervalle des valeurs qu’on peut représenter sur
    p bits :

                           - 2 (p -1) ≤ N ≤ 2 (p -1) -1

Si on rajoute la valeur 2 (p -1) à tout les terme de cette inégalité :

          - 2 (p -1) + 2 (p -1) ≤ N + 2 (p -1) ≤ 2 (p -1) - 1 + 2 (p -1)

                      0 ≤       N + 2 (p -1)     ≤ 2 p- 1

•   On pose N’= N + 2 (p -1)   donc : 0 ≤       N’ ≤ 2 p -1

•   Dans ce cas on obtient des valeur positives.
•   La valeur 2p-1 s’appelle le biais ou le décalage
• Avec l’exposant biaisé on a transformé les exposants
  négatifs à des exposants positifs en rajoutons à l’exposant
  la valeur 2p -1.

           Exposant Biaisé = Exposant réel + Biais
Exemple

•   On veut représenter les nombres ( 0,015)8 et -( 15, 01)8en virgule
    flottante sur une machine ayant le format suivant :

       Signe mantisse            Exposant décalé     Mantisse normalisée

            1 bit                      4 bits                11 bits

    (0,015)8=(0,000001101)2= 0,1101 * 2-5

    Signe mantisse : positif ( 0)
    Mantisse normalisé : 0,1101
    Exposant réel = -5
    Calculer le biais : b= 24-1 = 8
    Exposant Biaisé = -5 + 8 = +3 = ( 0011)2


             0        0011            1 1 0 1 0 0 0 0 0 0 0

              1 bit          4 bits                11 bits
- (15,01)8=(001101,000001)2= 0,1101000001 * 24

Signe mantisse : négatif ( 1)
Mantisse normalisée : 0,1101000001
Exposant réel = + 4
Calculer le biais : b= 24-1 = 8
Exposant Biaisé = 4 + 8 = +12 = ( 1100)2




      1           1100            1 1 0 1 0 0 0 0 0 1 0
          1 bit          4 bits            11 bits
Opérations arithmétiques en virgule flottante

• Soit deux nombres réels N1 et N2 tel que
      N1=M1*be1 et N2=M2*be2



• On veut calculer N1+N2 ?
• Deux cas se présentent :
   – Si e1 = e2 alors N3= (M1+M2) be1
   – Si e1 <> e2 alors élevé au plus grand exposant et faire l’addition
     des mantisses et par la suite normalisée la mantisse du résultat.
Exemple

• Effectuer l’opération suivante : (0,15)8+ (1,5)8=(?) :




  (0,15)8= (0,001101) = 0,1101 *2-2
  (1,5)8= (001, 1 01) = 0,1101 *21
  (0,15)8+ (1,5)8 = 0,1101 *2-2 + 0,1101 *21
                 = 0,0001101 *21 + 0,1101 *21
                   = 0, 1110101 * 21



           0           0001        111010
               1 bit      4 bits                6 bits
Exercice
 Donner la représentation des deux nombres N1= (-0,014)8      et
 N2=(0,14)8 sur la machine suivante :




    Signe       Exposant biaisé         Mantisse normalisée
    mantisse    (décalé)

     1 bit       5 bits              10 bits



• Calculer N2-N1 ?.
Avant de représenter les deux nombres on doit calculer le biais (décalage)
     B = 2 5-1 = 24 = 16
     N1 = (-0,014) 8 = (-0,000001100) 2= (-0,1100) 2 . 2 - 5
         ExpB= -5 + 16 = 11 = (01011)2
       N2 = (0,14)8 = (0,001100)2= (0,1100)2. 2 -2
       ExpB = -2 + 16 = 14 = (01110) 2
     Donc on va avoir la représentation suivante pour N1 et N2:



N1       1     01011    1100000000                         1 010 1111 0000 0000
                                                                  ( AF00)16


 N2 0         01110     1100000000                         0011 10 11 0000 0000
                                                                  (3B00)16
N2 - N1 = 0,14 – (-0,014) = 0,14 + 0,014
N2 - N1 = (0,1100)2. 2-2 +(0,1100) 2 . 2-5
        = (0,1100)2. 2-2 +(0,0001100) 2 . 2-2
         = (0,1101100)2. 2-2


•Si on fait les calculs avec l’exposant biaisé :

N2 - N1 = (0,1100)2. 214 + (0,1100) 2 . 211
        = (0,1100)2. 214 + (0,0001100) 2 . 214
        = (0,1101100)2. 214


Exposant biaisé = 14
Exposant réel = Exposant biaisé – Biais
Exposant réel = 14 – 16 = -2

Donc on trouve le même résultat que la première opération.
3. Le codage BCD (Binary Coded Decimal )

•   Pour passer du décimal au binaire , il faut   Décimal   Binaire
    effectuer des divisions successives. Il       0         0000
    existe une autre méthode simplifiée pour      1         0001
    le passage du décimal au binaire.             2         0010
                                                  3         0011
•   Le principe consiste à faire des              4         0100
    éclatement sur 4 bits et de remplacer
                                                  5         0101
    chaque chiffre décimal par sa valeur
    binaire correspondante .                      6         0110
                                                  7         0111
•   Les combinaisons supérieures à 9 sont         8         1000
    interdites                                    9         1001
Exemple


         1    2     9             5    6     2

  0001       0010   1001   0101       0110   0010


129 = ( 0001 0010 1001)2   562 = (0101 0110 0010)2
Le codage EXCESS3 ( BCD+3 )
Décimal    BCD+3   Binaire
0          3       0011
1          4       0100
2          5       0101
                                    1    2     9
3          6       0110
4          7       0111
5          8       1000      0100       0101   1100
6          9       1001
7          10      1010
8          11      1011
9          12      1100
4. Codage des caractères
•   Les caractères englobent : les lettres alphabétiques ( A, a, B , B,.. ) ,
    les chiffres , et les autres symboles ( > , ; / : …. ) .
•   Le codage le plus utilisé est le ASCII (American Standard Code for
    Information Interchange)
•   Dans ce codage chaque caractère est représenté sur 8 bits .
•   Avec 8 bits on peut avoir 28 = 256 combinaisons
•   Chaque combinaison représente un caractère
     – Exemple :
         • Le code 65 (01000001)2correspond au caractère A
         • Le code 97 (01100001) correspond au caractère a
         • Le code 58 (00111010 )correspond au caractère :
•   Actuellement il existe un autre code sur 16 bits , se code s’appel
    UNICODE .

Contenu connexe

Tendances

Les algorithmes d'arithmetique
Les algorithmes d'arithmetiqueLes algorithmes d'arithmetique
Les algorithmes d'arithmetiquemohamed_SAYARI
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
salah fenni
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombres
salah fenni
 
bac info : série récursivité
bac info : série récursivitébac info : série récursivité
bac info : série récursivité
Ămîʼndǿ TrànCè
 
Fiche1 ex-sous-programme
Fiche1 ex-sous-programmeFiche1 ex-sous-programme
Fiche1 ex-sous-programme
Baghdadi Wajih
 
Limites classiques de toutes les fonctions 4
Limites classiques de toutes les fonctions 4Limites classiques de toutes les fonctions 4
Limites classiques de toutes les fonctions 4
ulrich loemba
 
Chap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheChap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-recherche
Riadh Harizi
 
éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009Morom Bil Morom
 
Exercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivitéExercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivitésalah fenni
 
Projet de programmation la conversion entre les bases
Projet de programmation   la conversion entre les bases Projet de programmation   la conversion entre les bases
Projet de programmation la conversion entre les bases Tunisie collège
 
Regression lineaire simple
Regression lineaire simpleRegression lineaire simple
Regression lineaire simple
Mehdi Rajawi
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)
salah fenni
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de données
ECAM Brussels Engineering School
 
Introduction a la compilation Analyse lexicale - C2
Introduction a la compilation  Analyse lexicale - C2Introduction a la compilation  Analyse lexicale - C2
Introduction a la compilation Analyse lexicale - C2
Beligh HAMDI
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximationWael Ismail
 

Tendances (20)

Les algorithmes d'arithmetique
Les algorithmes d'arithmetiqueLes algorithmes d'arithmetique
Les algorithmes d'arithmetique
 
pile file.pptx
pile file.pptxpile file.pptx
pile file.pptx
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
Exercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombresExercices en turbo pascal sur les nombres
Exercices en turbo pascal sur les nombres
 
bac info : série récursivité
bac info : série récursivitébac info : série récursivité
bac info : série récursivité
 
Fiche1 ex-sous-programme
Fiche1 ex-sous-programmeFiche1 ex-sous-programme
Fiche1 ex-sous-programme
 
Limites classiques de toutes les fonctions 4
Limites classiques de toutes les fonctions 4Limites classiques de toutes les fonctions 4
Limites classiques de toutes les fonctions 4
 
Chap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-rechercheChap04 les-algorithme-de-tri-et-de-recherche
Chap04 les-algorithme-de-tri-et-de-recherche
 
éNoncés+corrections bac2009
éNoncés+corrections bac2009éNoncés+corrections bac2009
éNoncés+corrections bac2009
 
Exercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivitéExercices en turbo pascal sur la récursivité
Exercices en turbo pascal sur la récursivité
 
Projet de programmation la conversion entre les bases
Projet de programmation   la conversion entre les bases Projet de programmation   la conversion entre les bases
Projet de programmation la conversion entre les bases
 
Regression lineaire simple
Regression lineaire simpleRegression lineaire simple
Regression lineaire simple
 
Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)Bac info 2000-2015 (Tunisie)
Bac info 2000-2015 (Tunisie)
 
Circuits logiques1
Circuits logiques1Circuits logiques1
Circuits logiques1
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de données
 
Introduction a la compilation Analyse lexicale - C2
Introduction a la compilation  Analyse lexicale - C2Introduction a la compilation  Analyse lexicale - C2
Introduction a la compilation Analyse lexicale - C2
 
Cours compilation
Cours compilationCours compilation
Cours compilation
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
 
Correction
CorrectionCorrection
Correction
 
Algorithmes de tri
Algorithmes de triAlgorithmes de tri
Algorithmes de tri
 

En vedette

L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
Union des Villes et Communes de Wallonie
 
Herramientas web 2fr
Herramientas web 2frHerramientas web 2fr
Herramientas web 2fr
zerafo
 
Doctrina del shock
Doctrina del shockDoctrina del shock
Doctrina del shock
PaulaGuadix
 
Fútbol y violencia las razones de una sin razón.
Fútbol y violencia las razones de una sin razón. Fútbol y violencia las razones de una sin razón.
Fútbol y violencia las razones de una sin razón.
jorgeguzman016
 
Web y Web 2.0
Web y Web 2.0Web y Web 2.0
Web y Web 2.0
Pauly Monar
 
portas abertas
portas abertasportas abertas
portas abertas
bertacolmenero
 
Hardware santi
Hardware santiHardware santi
Hardware santi
swichhhh
 
Diapo dut
Diapo dutDiapo dut
Icono netiqueta netiqueta
Icono netiqueta netiquetaIcono netiqueta netiqueta
Icono netiqueta netiqueta
mariappreciado
 
Ma commune et ses élus sur Facebook
Ma commune et ses élus sur FacebookMa commune et ses élus sur Facebook
Ma commune et ses élus sur Facebook
Union des Villes et Communes de Wallonie
 
presentación ventum 2015
presentación ventum 2015presentación ventum 2015
presentación ventum 2015
Alejandro López Mota
 
Abe subsides et aides publiques
Abe subsides et aides publiquesAbe subsides et aides publiques
Abe subsides et aides publiquesecobuild.brussels
 
¿Hasta que punto somos útiles?
¿Hasta que punto somos útiles?¿Hasta que punto somos útiles?
¿Hasta que punto somos útiles?
Mauricio Sandoval Sepúlveda
 
Web 2.0
Web 2.0Web 2.0
L'invité du mois: Béatrice Van Bastelaer
L'invité du mois: Béatrice Van BastelaerL'invité du mois: Béatrice Van Bastelaer
L'invité du mois: Béatrice Van Bastelaer
Union des Villes et Communes de Wallonie
 
Seminario de actualización fiscal 2015 para asociaciones
Seminario de actualización fiscal 2015 para asociacionesSeminario de actualización fiscal 2015 para asociaciones
Seminario de actualización fiscal 2015 para asociaciones
Geasoc
 
Licencias creative commons asignatura 2
Licencias creative commons asignatura 2Licencias creative commons asignatura 2
Licencias creative commons asignatura 2
Nicanor Pulido
 
Aula virtual vs aula tradicional
Aula virtual vs  aula tradicionalAula virtual vs  aula tradicional
Aula virtual vs aula tradicional
SergeyGeovanny
 

En vedette (20)

Histoire
HistoireHistoire
Histoire
 
L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
L'invité du mois - Alain de Roover - Secrétaire général de Wallonie Développe...
 
Herramientas web 2fr
Herramientas web 2frHerramientas web 2fr
Herramientas web 2fr
 
Doctrina del shock
Doctrina del shockDoctrina del shock
Doctrina del shock
 
Fútbol y violencia las razones de una sin razón.
Fútbol y violencia las razones de una sin razón. Fútbol y violencia las razones de una sin razón.
Fútbol y violencia las razones de una sin razón.
 
Web y Web 2.0
Web y Web 2.0Web y Web 2.0
Web y Web 2.0
 
portas abertas
portas abertasportas abertas
portas abertas
 
Hardware santi
Hardware santiHardware santi
Hardware santi
 
Diapo dut
Diapo dutDiapo dut
Diapo dut
 
Icono netiqueta netiqueta
Icono netiqueta netiquetaIcono netiqueta netiqueta
Icono netiqueta netiqueta
 
Ma commune et ses élus sur Facebook
Ma commune et ses élus sur FacebookMa commune et ses élus sur Facebook
Ma commune et ses élus sur Facebook
 
presentación ventum 2015
presentación ventum 2015presentación ventum 2015
presentación ventum 2015
 
Abe subsides et aides publiques
Abe subsides et aides publiquesAbe subsides et aides publiques
Abe subsides et aides publiques
 
¿Hasta que punto somos útiles?
¿Hasta que punto somos útiles?¿Hasta que punto somos útiles?
¿Hasta que punto somos útiles?
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
L'invité du mois: Béatrice Van Bastelaer
L'invité du mois: Béatrice Van BastelaerL'invité du mois: Béatrice Van Bastelaer
L'invité du mois: Béatrice Van Bastelaer
 
Seminario de actualización fiscal 2015 para asociaciones
Seminario de actualización fiscal 2015 para asociacionesSeminario de actualización fiscal 2015 para asociaciones
Seminario de actualización fiscal 2015 para asociaciones
 
Licencias creative commons asignatura 2
Licencias creative commons asignatura 2Licencias creative commons asignatura 2
Licencias creative commons asignatura 2
 
Aula virtual vs aula tradicional
Aula virtual vs  aula tradicionalAula virtual vs  aula tradicional
Aula virtual vs aula tradicional
 
Communications
CommunicationsCommunications
Communications
 

Similaire à Ch2 representation

sujet 1.pptx
sujet 1.pptxsujet 1.pptx
sujet 1.pptx
AYOUBBENHAMOU4
 
CODAGE.pptx
CODAGE.pptxCODAGE.pptx
CODAGE.pptx
NarjisAbi
 
architecture des calculateurs (2).pdf
architecture des calculateurs (2).pdfarchitecture des calculateurs (2).pdf
architecture des calculateurs (2).pdf
informatiquehageryah
 
Info1 cours 3-vf-mi-v1
Info1  cours 3-vf-mi-v1Info1  cours 3-vf-mi-v1
Info1 cours 3-vf-mi-v1
linuxscout
 
representation_numerique_de_l_information_annote.ppt
representation_numerique_de_l_information_annote.pptrepresentation_numerique_de_l_information_annote.ppt
representation_numerique_de_l_information_annote.ppt
physikcollege
 
E.N.pdf
E.N.pdfE.N.pdf
E.N.pdf
ssuserc1b923
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoire
linuxscout
 
Info1 cours 3-codage-m iv5
Info1  cours 3-codage-m iv5Info1  cours 3-codage-m iv5
Info1 cours 3-codage-m iv5
linuxscout
 
0. les réseaux le code binaire-hexa
0. les réseaux   le code binaire-hexa0. les réseaux   le code binaire-hexa
0. les réseaux le code binaire-hexa
Truc Much
 
Ch4 circuitscombinatoires
Ch4 circuitscombinatoiresCh4 circuitscombinatoires
Ch4 circuitscombinatoiresmickel iron
 
Info1 cours 4- bcd-gray v3
Info1  cours 4- bcd-gray v3Info1  cours 4- bcd-gray v3
Info1 cours 4- bcd-gray v3
linuxscout
 
Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumerationmickel iron
 
les matrices
les matricesles matrices
les matrices
Kha-lid Khalid
 
ch4_circuitscombinatoires.ppt
ch4_circuitscombinatoires.pptch4_circuitscombinatoires.ppt
ch4_circuitscombinatoires.ppt
amine17157
 
transparents-Algo-complexite.pdf
transparents-Algo-complexite.pdftransparents-Algo-complexite.pdf
transparents-Algo-complexite.pdf
abdallahyoubiidrissi1
 

Similaire à Ch2 representation (20)

sujet 1.pptx
sujet 1.pptxsujet 1.pptx
sujet 1.pptx
 
CODAGE.pptx
CODAGE.pptxCODAGE.pptx
CODAGE.pptx
 
Ch1 reponses
Ch1 reponsesCh1 reponses
Ch1 reponses
 
architecture des calculateurs (2).pdf
architecture des calculateurs (2).pdfarchitecture des calculateurs (2).pdf
architecture des calculateurs (2).pdf
 
Td02
Td02Td02
Td02
 
Info1 cours 3-vf-mi-v1
Info1  cours 3-vf-mi-v1Info1  cours 3-vf-mi-v1
Info1 cours 3-vf-mi-v1
 
representation_numerique_de_l_information_annote.ppt
representation_numerique_de_l_information_annote.pptrepresentation_numerique_de_l_information_annote.ppt
representation_numerique_de_l_information_annote.ppt
 
E.N.pdf
E.N.pdfE.N.pdf
E.N.pdf
 
Circuits logiques combinatoire
Circuits logiques combinatoireCircuits logiques combinatoire
Circuits logiques combinatoire
 
Info1 cours 3-codage-m iv5
Info1  cours 3-codage-m iv5Info1  cours 3-codage-m iv5
Info1 cours 3-codage-m iv5
 
0. les réseaux le code binaire-hexa
0. les réseaux   le code binaire-hexa0. les réseaux   le code binaire-hexa
0. les réseaux le code binaire-hexa
 
Ch4 circuitscombinatoires
Ch4 circuitscombinatoiresCh4 circuitscombinatoires
Ch4 circuitscombinatoires
 
Info1 cours 4- bcd-gray v3
Info1  cours 4- bcd-gray v3Info1  cours 4- bcd-gray v3
Info1 cours 4- bcd-gray v3
 
Ch1 systemenumeration
Ch1 systemenumerationCh1 systemenumeration
Ch1 systemenumeration
 
les matrices
les matricesles matrices
les matrices
 
ch4_circuitscombinatoires.ppt
ch4_circuitscombinatoires.pptch4_circuitscombinatoires.ppt
ch4_circuitscombinatoires.ppt
 
Cours architecture
Cours architectureCours architecture
Cours architecture
 
transparents-Algo-complexite.pdf
transparents-Algo-complexite.pdftransparents-Algo-complexite.pdf
transparents-Algo-complexite.pdf
 
Corr exam2010
Corr exam2010Corr exam2010
Corr exam2010
 
CEB 6eme
CEB 6emeCEB 6eme
CEB 6eme
 

Ch2 representation

  • 1. Chapitre 2 : Représentation de l’information dans la machine • Introduction • Représentation des nombres négatifs – Signe / valeur absolue – Complément à 1 – Complément à 2 • Représentation des nombres réels – Virgule fixe – Virgule flottante • Le codage BCD et EXCESS3 • Représentation des caractères
  • 2. Introduction Information Instructions Données Caractère Numérique Entiers Non signés Signés Réels
  • 3. 1. Représentation des nombres entiers • Il existe deux types d’entiers : – les entiers non signés ( positifs ) – et les entiers signés ( positifs ou négatifs ) • Problème : Comment indiquer à la machine qu’un nombre est négatif ou positif ? • Il existe 3 méthodes pour représenter les nombres négatifs : – Signe/ valeur absolue – Complément à 1( complément restreint ) – Complément à 2 ( complément à vrai )
  • 4. 1.1 Représentation signe / valeur absolue ( S/VA ) • Si on travail sur n bits , alors le bit du poids fort est utilisé pour indiquer le signe :  1 : signe négatif  0 : signe positif • Les autres bits ( n -1 ) désignent la valeur absolue du nombre. • Exemple : Si on travail sur 4 bits. 1 001 0 001 Signe Valeur absolue Signe Valeur absolue 1001 est la représentation de - 1 0001 est la représentation de + 1
  • 5. Sur 3 bits on obtient : signe VA valeur • Les valeurs sont comprises 0 00 +0 entre -3 et +3 0 01 +1 0 10 +2 0 11 +3 -3 ≤ N ≤ +3 - ( 4-1 ) ≤ N ≤ + (4 -1 ) -(22 -1) ≤ N ≤ +(22-1 ) 1 00 -0 -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 ) 1 01 -1 1 10 -2 1 11 -3 Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en S/VA : -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 )
  • 6. Avantages et inconvénients de la représentation signe/valeur absolue • C’est une représentation assez simple . • On remarque que le zéro possède deux représentations +0 et -0 ce qui conduit à des difficultés au niveau des opérations arithmétiques. • Pour les opérations arithmétiques il nous faut deux circuits : l’un pour l’addition et le deuxième pour la soustraction . L’idéal est d’utiliser un seul circuit pour faire les deux opérations, puisque a- b =a + ( -b )
  • 7. 1.2 Représentation en complément à un ( complément restreint ) • On appel complément à un d’un nombre N un autre nombre N’ tel que : N+N’=2n-1 n : est le nombre de bits de la représentation du nombre N . Exemple : Soit N=1010 sur 4 bits donc son complément à un de N : N’= (24 - 1)-N N’=(16-1 )-(1010)2= (15 ) - (1010)2 = (1111)2 – (1010)2 = 0101 1 0 1 0 + 0 1 0 1 1 1 1 1
  • 8. Remarque 1 : • Pour trouver le complément à un d’un nombre, il suffit d’inverser tous les bits de ce nombre : si le bit est un 0 mettre à sa place un 1 et si c’est un 1 mettre à sa place un 0 . • Exemple : Sur 4 Bits Sur 5 Bits 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 1 0 1
  • 9. Remarque 2 • Dans cette représentation , le bit du poids fort nous indique le signe ( 0 : positif , 1 : négatif ). • Le complément à un du complément à un d’un nombre est égale au nombre lui même . CA1(CA1(N))= N • Exemple : Quelle est la valeur décimale représentée par la valeur 101010 en complément à 1 sur 6 bits ? • Le bit poids fort indique qu'il s'agit d'un nombre négatif. • Valeur = - CA1(101010) = - (010101)2= - ( 21)10
  • 10. Si on travail sur 3 bits : Valeur en Valeur en Valeur CA1 binaire décimal 000 000 +0 001 001 +1 010 010 +2 011 011 +3 100 - 011 -3 101 - 010 -2 110 - 001 -1 111 - 000 -0 •Dans cette représentation , le bit du poids fort nous indique le signe . •On remarque que dans cette représentation le zéro possède aussi une double représentation ( +0 et – 0 ) .
  • 11. • Sur 3 bits on remarque que les valeurs sont comprises entre -3 et +3 -3 ≤ N ≤ +3 - ( 4-1 ) ≤ N ≤ + (4 -1 ) -(22 -1) ≤ N ≤ +(22-1 ) -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 ) Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en CA1 : -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 )
  • 12. 1.3 Complément à 2 ( complément à vrai ) • Si on suppose que a est un nombre sur n bits alors : a + 2 n = a modulo 2n et si on prend le résultat sur n bits on va obtenir la même valeur que a . a + 2 n= a Exemple : soit a = 1001 sur 4 bits 24= 10000 + 1 0 0 1 1 0 0 0 0 1 1 0 0 1 Si on prend le résultat sur 4 bits on trouve la même valeur de a = 1001
  • 13. •Si on prend deux nombres entiers a et b sur n bits , on remarque que la soustraction peut être ramener à une addition : a – b = a + (-b) • Pour cela il suffit de trouver une valeur équivalente à -b ? a – b = a + 2n – b = a + (2n – 1) – b + 1 On a b + CA1(b)= 2n – 1 donc CA1(b) = (2n – 1) – b Si on remplace dans la première équation on obtient : a– b = a + CA1(b) + 1 La valeur CA1(b)+1 s’appelle le complément à deux de b : CA1(b)+1 = CA2(b) Et enfin on va obtenir : a - b = a+ CA2(b)  transformer la soustraction en une addition .
  • 14. Exemple • Trouver le complément à vrai de : 01000101 sur 8 bits ? CA2(01000101)= CA1(01000101)+ 1 CA1(01000101)= (10111010) CA2(01000101)=(10111010)+ 1 = (10111011) • Remarque 1 : Pour trouver le compétemment à 2 d’un nombre : il faut parcourir les bits de ce nombre à partir du poids faible et garder tous les bits avant le premier 1 et inverser les autres bits qui viennent après. 0 1 0 0 0 1 0 1 1 1 0 1 0 1 0 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1 0 0
  • 15. Remarque 2 • Dans cette représentation , le bit du poids fort nous indique le signe ( 0 : positif , 1 : négatif ). • Le complément à deux du complément à deux d’un nombre est égale au nombre lui même . CA2(CA2(N))= N • 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)
  • 16. Si on travail sur 3 bits : Valeur en Valeur en valeur CA2 binaire 000 000 +0 001 001 +1 010 010 +2 011 011 +3 100 - 100 -4 101 - 011 -3 110 - 010 -2 111 - 001 -1 •Dans cette représentation , le bit du poids fort nous indique le signe . •On remarque que le zéro n’a pas une double représentation.
  • 17. •Sur 3 bits on remarque que les valeurs sont comprises entre -4 et +3 -4 ≤ N ≤ +3 - 4 ≤ N ≤ + (4 -1 ) - 22 ≤ N ≤ +(22-1 ) -2 (3 -1) ≤ N ≤ (2 (3 -1) -1 ) Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en CA2 : -(2 (n -1)) ≤ N ≤ +(2 (n -1) -1 ) La représentation en complément à deux ( complément à vrai ) est la représentation la plus utilisée pour la représentation des nombres négatifs dans la machine.
  • 18. Opérations arithmétiques en CA2 Effectuer les opérations suivantes sur 5 Bits , en utilisant la représentation en CA2 0 1 0 0 1 0 1 0 0 1 + + +9 +9 1 1 1 0 0 0 0 1 0 0 -4 +4 +5 + 13 1 0 0 1 0 1 0 1 1 0 1 Le résultat est positif Report (01101)2= ( 13)10 Le résultat est positif (00101)2= ( 5)10
  • 19. 1 0 1 1 1 1 0 1 1 1 -9 + -9 + 1 1 1 0 0 0 1 0 0 1 -4 +9 - 13 +0 1 1 0 0 1 1 1 0 0 0 0 0 Report Report Le résultat est négatif : Résultat = - CA2 (10011)= -( 01101) Le résultat est positif = - 13 (00000)2= ( 0)10
  • 20. 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 . – Le nombre de bits utilisés est insuffisant pour contenir le résultat – Autrement dit le résultat dépasse l’intervalle des valeurs sur les n bits utilisés.
  • 21. Cas de débordement 0 1 1 0 0 1 0 0 1 1 0 1 1 1 +9 + + -9 0 1 0 0 0 1 1 0 0 0 +8 -8 + 17 1 0 0 0 1 - 17 0 1 0 1 1 Négatif Positif •Nous avons 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 y a jamais un débordement si les deux nombres sont de signes différents.
  • 22. 2. La représentation des nombres réels • Un nombre réel est constitué de deux parties : la partie entière et la partie fractionnelle ( les deux parties sont séparées par une virgule ) • Problème : comment indiquer à la machine la position de la virgule ? • Il existe deux méthodes pour représenter les nombre réel : – Virgule fixe : la position de la virgule est fixe – Virgule flottante : la position de la virgule change ( dynamique )
  • 23. 2.1 La virgule fixe • Dans cette représentation la partie entière est représentée sur n bits et la partie fractionnelle sur p bits , en plus un bit est utilisé pour le signe. • Exemple : si n=3 et p=2 on va avoir les valeurs suivantes Signe P.E P.F valeur 0 000 00 + 0,0 Dans cette représentation les 0 000 01 + 0,25 valeurs sont limitées et nous 0 000 10 + 0,5 n’avons pas une grande précision 0 000 11 + 0,75 0 001 .00 + 1,0 . . . . . . . .
  • 24. 2.2 Représentation en virgule flottante • Chaque nombre réel peut s’écrire de la façon suivante : N= ± M * b e – M : mantisse , – b : la base , – e : l’exposant • Exemple : 15,6 = 0,156 * 10+2 - ( 110,101)2 = - (0,110101)2 * 2+3 (0,00101)2= ( 0,101)2 * 2-2 Remarque : on dit que la mantisse est normalisée si le premier chiffre après la virgule est différent de 0 et le premier chiffre avant la virgule est égale à 0.
  • 25. • Dans cette représentation sur n bits : – La mantisse est sous la forme signe/valeur absolue • 1 bit pour le signe • et k bits pour la valeur. – L’exposant ( positif ou négatif ) est représenté sur p bits . Signe mantisse Exposant Mantisse normalisée 1 bit p bits k bits •Pour la représentation de l’exposant on utilise : • Le complément à deux • Exposant décalé ou biaisé
  • 26. Représentation de l’exposant en complément à deux • On veut représenter les nombres ( 0,015)8 et -( 15, 01)8 en virgule flottante sur une machine ayant le format suivant : Signe mantisse Exposant en CA2 Mantisse normalisée 1 bit 4 bits 8 bits (0,015)8=(0,000001101)2= 0,1101 * 2-5 Signe mantisse : positif ( 0) Mantisse normalisé : 0,1101 Exposant = -5  utiliser le complément à deux pour représenter le -5 Sur 4 bits CA2(0101)=1011 0 1 0 1 1 1 1 0 1 0 0 0 0 1 bit 4 bits 8 bits
  • 27. - (15,01)8 = - (001101,000001)2= - 0,1101000001 * 24 Signe mantisse : négatif ( 1) Mantisse normalisée : 0,1101000001 Exposant = 4 , en complément à deux il garde la même valeur ( 0100) On remarque que la mantisse est sur 10 bits (1101 0000 01), et sur la machine seulement 8 bits sont utilisés pour la mantisse. Dans ce cas on va prendre les 8 premiers bits de la mantisse 1 0 1 0 0 1 1 0 1 0 0 0 0 1 bit 4 bits 8 bits Remarque : si la mantisse est sur k bits et si elle est représenté sur la machine sur k’ bits tel que k> k’ , alors la mantisse sera tronquée : on va prendre uniquement k’ bits  perdre dans la précision .
  • 28. L’ Exposant décalé ( biaisé ) • en complément à 2, l’intervalle des valeurs qu’on peut représenter sur p bits : - 2 (p -1) ≤ N ≤ 2 (p -1) -1 Si on rajoute la valeur 2 (p -1) à tout les terme de cette inégalité : - 2 (p -1) + 2 (p -1) ≤ N + 2 (p -1) ≤ 2 (p -1) - 1 + 2 (p -1) 0 ≤ N + 2 (p -1) ≤ 2 p- 1 • On pose N’= N + 2 (p -1) donc : 0 ≤ N’ ≤ 2 p -1 • Dans ce cas on obtient des valeur positives. • La valeur 2p-1 s’appelle le biais ou le décalage
  • 29. • Avec l’exposant biaisé on a transformé les exposants négatifs à des exposants positifs en rajoutons à l’exposant la valeur 2p -1. Exposant Biaisé = Exposant réel + Biais
  • 30. Exemple • On veut représenter les nombres ( 0,015)8 et -( 15, 01)8en virgule flottante sur une machine ayant le format suivant : Signe mantisse Exposant décalé Mantisse normalisée 1 bit 4 bits 11 bits (0,015)8=(0,000001101)2= 0,1101 * 2-5 Signe mantisse : positif ( 0) Mantisse normalisé : 0,1101 Exposant réel = -5 Calculer le biais : b= 24-1 = 8 Exposant Biaisé = -5 + 8 = +3 = ( 0011)2 0 0011 1 1 0 1 0 0 0 0 0 0 0 1 bit 4 bits 11 bits
  • 31. - (15,01)8=(001101,000001)2= 0,1101000001 * 24 Signe mantisse : négatif ( 1) Mantisse normalisée : 0,1101000001 Exposant réel = + 4 Calculer le biais : b= 24-1 = 8 Exposant Biaisé = 4 + 8 = +12 = ( 1100)2 1 1100 1 1 0 1 0 0 0 0 0 1 0 1 bit 4 bits 11 bits
  • 32. Opérations arithmétiques en virgule flottante • Soit deux nombres réels N1 et N2 tel que N1=M1*be1 et N2=M2*be2 • On veut calculer N1+N2 ? • Deux cas se présentent : – Si e1 = e2 alors N3= (M1+M2) be1 – Si e1 <> e2 alors élevé au plus grand exposant et faire l’addition des mantisses et par la suite normalisée la mantisse du résultat.
  • 33. Exemple • Effectuer l’opération suivante : (0,15)8+ (1,5)8=(?) : (0,15)8= (0,001101) = 0,1101 *2-2 (1,5)8= (001, 1 01) = 0,1101 *21 (0,15)8+ (1,5)8 = 0,1101 *2-2 + 0,1101 *21 = 0,0001101 *21 + 0,1101 *21 = 0, 1110101 * 21 0 0001 111010 1 bit 4 bits 6 bits
  • 34. Exercice Donner la représentation des deux nombres N1= (-0,014)8 et N2=(0,14)8 sur la machine suivante : Signe Exposant biaisé Mantisse normalisée mantisse (décalé) 1 bit 5 bits 10 bits • Calculer N2-N1 ?.
  • 35. Avant de représenter les deux nombres on doit calculer le biais (décalage) B = 2 5-1 = 24 = 16 N1 = (-0,014) 8 = (-0,000001100) 2= (-0,1100) 2 . 2 - 5 ExpB= -5 + 16 = 11 = (01011)2 N2 = (0,14)8 = (0,001100)2= (0,1100)2. 2 -2 ExpB = -2 + 16 = 14 = (01110) 2 Donc on va avoir la représentation suivante pour N1 et N2: N1 1 01011 1100000000 1 010 1111 0000 0000 ( AF00)16 N2 0 01110 1100000000 0011 10 11 0000 0000 (3B00)16
  • 36. N2 - N1 = 0,14 – (-0,014) = 0,14 + 0,014 N2 - N1 = (0,1100)2. 2-2 +(0,1100) 2 . 2-5 = (0,1100)2. 2-2 +(0,0001100) 2 . 2-2 = (0,1101100)2. 2-2 •Si on fait les calculs avec l’exposant biaisé : N2 - N1 = (0,1100)2. 214 + (0,1100) 2 . 211 = (0,1100)2. 214 + (0,0001100) 2 . 214 = (0,1101100)2. 214 Exposant biaisé = 14 Exposant réel = Exposant biaisé – Biais Exposant réel = 14 – 16 = -2 Donc on trouve le même résultat que la première opération.
  • 37. 3. Le codage BCD (Binary Coded Decimal ) • Pour passer du décimal au binaire , il faut Décimal Binaire effectuer des divisions successives. Il 0 0000 existe une autre méthode simplifiée pour 1 0001 le passage du décimal au binaire. 2 0010 3 0011 • Le principe consiste à faire des 4 0100 éclatement sur 4 bits et de remplacer 5 0101 chaque chiffre décimal par sa valeur binaire correspondante . 6 0110 7 0111 • Les combinaisons supérieures à 9 sont 8 1000 interdites 9 1001
  • 38. Exemple 1 2 9 5 6 2 0001 0010 1001 0101 0110 0010 129 = ( 0001 0010 1001)2 562 = (0101 0110 0010)2
  • 39. Le codage EXCESS3 ( BCD+3 ) Décimal BCD+3 Binaire 0 3 0011 1 4 0100 2 5 0101 1 2 9 3 6 0110 4 7 0111 5 8 1000 0100 0101 1100 6 9 1001 7 10 1010 8 11 1011 9 12 1100
  • 40. 4. Codage des caractères • Les caractères englobent : les lettres alphabétiques ( A, a, B , B,.. ) , les chiffres , et les autres symboles ( > , ; / : …. ) . • Le codage le plus utilisé est le ASCII (American Standard Code for Information Interchange) • Dans ce codage chaque caractère est représenté sur 8 bits . • Avec 8 bits on peut avoir 28 = 256 combinaisons • Chaque combinaison représente un caractère – Exemple : • Le code 65 (01000001)2correspond au caractère A • Le code 97 (01100001) correspond au caractère a • Le code 58 (00111010 )correspond au caractère : • Actuellement il existe un autre code sur 16 bits , se code s’appel UNICODE .