chapitre2 algébre2, DS

download chapitre2 algébre2, DS

of 25

Transcript of chapitre2 algébre2, DS

  • 7/24/2019 chapitre2 algbre2, DS

    1/25

    Aussi appel Complment Vrai (CV) :

    les nombres positifs sont cods de la mme manire quen binairepure.

    un nombre ngatif est cod en ajoutant la valeur 1 son

    complment 1

    Le bit le plus significatif est utilis pour reprsenter le signedu nombre

    Exemple : -24 en complment 2 sur 8 bits 24 est cod par 0 0 0 1 1 0 0 0 (2) -24 1 1 1 0 0 1 1 1 (c1) donc -24 est cod par 1 1 1 0 1 0 0 0 (c2)

    CODAGE DES ENTIERS RELATIFS-CODE COMPLMENT 2- (1)

  • 7/24/2019 chapitre2 algbre2, DS

    2/25

    Un seul codage pour 0. Par exemple sur 8 bits :

    +0 est cod par 00000000 (c2) -0 est cod par 11111111 (c1) Donc -0 sera reprsent par 00000000 (c2)

    Avec n bits, on peut coder de -(2n-1) (2n-1-1)

    Sur 1 octet (8 bits), codage des nombres de -128 127

    +0 = 00000000 -0=00000000

    +1 = 00000001 -1=111111111

    +127= 01111111 -128=10000000

    CODAGE DES ENTIERS RELATIFS-CODE COMPLMENT 2- (2)

  • 7/24/2019 chapitre2 algbre2, DS

    3/25

    1. Pour trouver le compte mment 2 dun nombre : il faut parcourir les bitsde ce nombre partir du poids faible et garder tous les bits avant le premier1 et inverser les autres bits qui viennent aprs.

    2. Notons CA2(N) le nombre en base 2 o tous les bits de N 2 ont tinverss un par un ensuite on lui ajout le nombre 1

    (Attention cest diffrent du codage en complment 2, quel le est ladiffrence )

    On a :CA2(CA2(N))= N

    et : N+CA2(N) = ?

    REMARQUES

  • 7/24/2019 chapitre2 algbre2, DS

    4/25

    3. Pour effectuer une soustraction, il suffit de faire une additionavec le complment deux. Le rsultat se lit directement encomplment deux :

    si le signe est + la lecture est directe,

    si le signe est - on convertit le rsultat en recherchant le complment deux de celui-ci.

    4. Comparer (+0)c2 et (-0)c2

    5. Donner l intervalle de codage en complment 2 pour un codage

    en3 bits.

    4. Dduire lintervalle du codage pour n bits

    REMARQUES

  • 7/24/2019 chapitre2 algbre2, DS

    5/25

    OPRATIONS ARITHMTIQUES EN CA2

    + 9

    + 4+ 13

    0 1 0 0 1

    0 0 1 0 0

    +

    0 1 1 0 1

    Effectuer les oprations suivantes sur 5 Bits , en utilisant la reprsentation en CA2

    Le rsultat est positif

    (01101)2= ( 13)10 Il suffit dignorer le bit de report gauche

    Le rsultat est positif

    (00101)2= ( 5)10

    + 9

    - 4

    + 5

    0 1 0 0 1

    1 1 1 0 0

    +

    1 0 0 1 0 1

    Report

    5

  • 7/24/2019 chapitre2 algbre2, DS

    6/25

    - 9

    - 4

    - 13

    1 0 1 1 1

    1 1 1 0 0

    +

    1 1 0 0 1 1

    - 9

    + 9

    + 0

    1 0 1 1 1

    0 1 0 0 1

    +

    1 0 0 0 0 0

    Le rsultat est ngatif :

    Rsultat = - CA2 (10011)= -( 01101)

    = - 13

    Le rsultat est positif

    (00000)2= ( 0)10

    ReportReport

    6

  • 7/24/2019 chapitre2 algbre2, DS

    7/25

    LA RETENUE ET LE DBORDEMENT

    On dit quil y a une retenue si une opration arithmtiquegnre un report (il suff it alors dignorer ce le bit de report).

    On dit quil y a un dbordement (Over Flow ) ou dpassement

    de capacit: si le rsultat de lopration sur n bits et faux .

    Le nombre de bits utiliss est insuffisant pour contenir lersultat

    Autrement dit le rsultat dpasse lintervalle des valeurs surles n bits utiliss.

    7

  • 7/24/2019 chapitre2 algbre2, DS

    8/25

    CAS DE DBORDEMENT

    + 9

    + 8

    + 17

    0 1 0 0 1

    0 1 0 0 0

    +

    1 0 0 0 1

    - 9

    - 8

    - 17

    1 0 1 1 1

    1 1 0 0 0

    +

    0 1 0 1 1

    Le dbordement est dtect si:la somme de deux nombres positifs donne un nombre ngatif .Ou la somme de deux nombres ngatifs donne un Nombre positif.Identiquement quivalent la retenue entrante sur le bit de poids fort est

    diffrente de la retenue sortante.

    1

    NgatifPositif

    1 0

    8

  • 7/24/2019 chapitre2 algbre2, DS

    9/25

    EXTENSION DE SIGNE EN ARITHMTIQUE SIGNE

    Entier sign sur n bits entier s ign sur n + k bits.

    Mthode

    On rajoute des bits gauche de la mme valeur que le bit designe.

    510 = (sur 4 bits) = (sur 8 bits)

    4 = (sur 4 bits) = (sur 8 bits)

    Permet de coder un nombre avec plus de bits

    9

  • 7/24/2019 chapitre2 algbre2, DS

    10/25

    Codage des nombres Codage des entiers positifs (binaire pur ) Codage des entiers relatifs (complment 2 )

    Codage des nombres rels ( virgule flottante)

    Arithmtique des codage

    Codage des caractres : ASCII et ASCII tendu , Unicode,

    Codage du son et des images

    CHAPITRE 2: CODAGE DE LINFORMATION

  • 7/24/2019 chapitre2 algbre2, DS

    11/25

    Cest une reprsentation dans la base 10 de

    FORMAT EN VIRGULE FLOTTANTE

    1,234

    123,400

    12,34001,23400

    0,123400

    10 2

    10

    1

    100

    101

  • 7/24/2019 chapitre2 algbre2, DS

    12/25

    Exposant et signe de

    l xpos nt

    ELMENT DU FORMAT EN VIRGULEFLOTTANTE

    0, 9876

    10 3

    Base de systme du nombre

    Mantisse

    Position du point dcimal

    Signe de la mantisse

  • 7/24/2019 chapitre2 algbre2, DS

    13/25

    Le codage des nombres rels se fait suivant :

    Format virgule flottante (utilis actuellement sur machine )

    dfini par : M . bE

    un signe + ou

    une mantisse m (en virgule fixe)

    un exposant e (un entier relative)

    une base b (2,8,10,16,)

    Exemple : 0,5425 . 102(10) ; 10,1 . 2-1(2) ; A0,B4.16-2(16)

    CODAGE DES NOMBRES RELS

  • 7/24/2019 chapitre2 algbre2, DS

    14/25

    Lexposant est translate (biais) de manire toujours coder eninterne une valeur positive

    Exe mple :Avec 2 digits rser vs au codage de l exposant

    Les valeurs positives: [+0, +99]

    En appliquant une translation k=50:

    Les exposants reprsentables => [-50,49]

    La constante k est appele le biais

    Avec 2 digits rser vs au codage de l exposant avec un biais gal 5010 et 5 digits pour la mantisse on peut reprse nter

    de .00001 x 10-50 .99999 x 1049

    REPRSENTATION DE LEXPOSANT ET DESON SIGNE(1)

  • 7/24/2019 chapitre2 algbre2, DS

    15/25

    REPRSENTATION DE LEXPOSANT ET DESON SIGNE (2)

  • 7/24/2019 chapitre2 algbre2, DS

    16/25

    De .00001 x 10-50 .99999 x 1049

    De 1 x 10-55 .99999 x 1049

    OVERFLOWS / UNDERFLOWS

  • 7/24/2019 chapitre2 algbre2, DS

    17/25

    x = M . 2 E

    o M est la mantisse (virgule fixe) et E lexposant (sign).

    Le codage en base 2, format virgule flottante, revient coder

    le signe, la mantisse et lexposant.

    Exemple : Codage en base 2, format virgule flottante, de:

    3,25(10) = 11,01(2) ( en virgule fixe)

    = 1,101 . 21

    (2)

    = 110,1 . 2-1(2) Pb : di f frentes manires de reprsenter E et M

    Pour le codage i l faut Normal iser

    CODAGE EN VIRGULE FLOTTANTE ENBASE 2

  • 7/24/2019 chapitre2 algbre2, DS

    18/25

    x= 1,M . 2Eb

    Le signe est cod sur 1 bit ayant le poids fort :

    le signe : bit 1

    Le signe + : bit 0

    Exposant biais (Eb) plac avant la mantisse pour simplifier la comparaison

    Cod sur p bits et biais pour tre positif (ajout de 2 p-1-1)

    Mantisse normalis(M)

    Normalis : virgule est plac aprs le bit 1 ayant le poids fort

    (i.e aprs le premier bit significatif non nul-)

    M est cod sur q bits (avec 1 bit cach)

    Exemple : N= 11,01, en normalisant N= 1 ,101 donc M =101

    CODAGE EN VIRGULE FLOTTANTE-NORMALISATION

    SM Eb sur p bits M sur q bits

  • 7/24/2019 chapitre2 algbre2, DS

    19/25

    Simple prcis ion sur 32 bits :

    1 bit de signe de la mantisse

    8 bits pour lexposant

    23 bits pour la mantisse

    Double prcis ion sur 64 bits :

    1 bit de signe de la mantisse

    11 bits pour lexposant

    52 bits pour la mantisse

    STANDARD IEEE 754 (1985)

    SM Eb sur 8 bits M sur 23 bits

    SM Eb sur 11 bits M sur 52 bits

  • 7/24/2019 chapitre2 algbre2, DS

    20/25

    Signe Exposant Mantisse Valeur

    Simple prcision 32 bits 1 bit 8 bits 1e254 23 bits (-1)s 1.m 2e-127

    Double prcision 64 bits 1 bit 11 bits 1e2046 52 bits (-1)s 1.m 2e-1023

    Prcision tendue 80 bits 1 bit 15 bits 1e32766 64 bits (-1)s 1.m 2e-16383

    STANDARD IEEE 754 (1985)

  • 7/24/2019 chapitre2 algbre2, DS

    21/25

    35,5 (10) = ? (IEEE 754 simple prcision)

    Nombre positif, donc SM = 0

    35,5 (10) = 100011,1 (2) (virgule f ixe)

    35,5 (10) = 1,000111 . 25(2) (virgule flottante)

    Exposant = Eb-127 = 5, donc Eb = 132

    1,M = 1,000111 donc M = 00011100...

    CONVERSION DCIMALE IEEE 754(CODAGE DUN REL)

    0SM

    10000100Eb

    00011100000000000000000M

    (IEEE754SP)

  • 7/24/2019 chapitre2 algbre2, DS

    22/25

    S = 0, donc nombre positif

    Eb = 129,, donc exposant = Eb-127 = 2

    1,M = 1,111

    + 1,111 . 22(2) = 111,1 (2) = 7,5 (10)

    CONVERSION IEEE 754 - DCIMALE(EVALUATION DUN REL)

    0

    SM

    10000001Eb

    11100000000000000000000

    M

    (IEEE754SP)

  • 7/24/2019 chapitre2 algbre2, DS

    23/25

    La norme dfinit des codages spciaux pour reprsenter :

    les nombres dnormal iss

    les valeurs spciales infinis, 0 e t NaN.

    elle dfinit aussi :

    les oprations ari thmtiques usuel les (+, - ,,/,)

    les arrondis effectuer pour ces oprations

    les gestion des exceptions .

    REPRSENTATION DU ZRO, DES INFINIS,REPRSENTATIONS DNORMALISES (1)

  • 7/24/2019 chapitre2 algbre2, DS

    24/25

    Si le nombre de bits consacrs l'exposant est k , la valeur del'exposant e vrifie 0 < e < 2k-1.

    Les valeurs 0 et 2k-1 sont rserves pour des valeursspciales comme les arrondis : vers 0, vers +, vers - .

    REPRSENTATION DU ZRO, DES INFINIS,REPRSENTATIONS DNORMALISES (2)

    Signe Exposant Mantisse Valeur

    0 0 0 0 Commentaire

    unique reprsentation de 0

    s 0 m 0 (-1)s 0.m 2-126 nombres dnormaliss (trop petit)

    0 255 0 + rsultat de 1/0

    1 255 0 - rsultat de -1/0

    0 255 m 0 NaN Not a Number : rsultat de 0/0 ou -1

  • 7/24/2019 chapitre2 algbre2, DS

    25/25

    CONTINUIT DES NOMBRES EN SIMPLEPRCISION