102
ISN - Codage binaire des nombres M. Lagrave Numération Codage de Conversion Codage de complément logique complément à 2 Caractéristiques bits en biais décodage Codage de ISN - Codage binaire des nombres M. Lagrave Lycée Beaussier 2012–2013 Merci au site Arcana Percipio

M. Lagrave ISN-Codagebinairedesnombres Numérationlycee.lagrave.free.fr/IMG/pdf/codage_binaire_nombres_beamer.pdf · ISN - Codage binaire des nombres M. Lagrave Numération Codage

Embed Size (px)

Citation preview

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    ISN - Codage binaire des nombres

    M. Lagrave

    Lyce Beaussier

    20122013Merci au site Arcana Percipio

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Sommaire

    Numration

    Codage de N

    Codage de Z

    Codage de R

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    Lordinateur est une crature imberbe, vgtarienne, maissurtout compltement manchote. Pas de main, donc pasde doigt, et donc aucune raison de compter en base 10.

    Trs intimement li lactivit humaine, lordinateur apourtant intrt disposer de quelques solides mthodesafin de se reprsenter les nombres dans leur infinievarit :entiers ou dcimaux, signs ou non signs, lments deN, Z, D, Q, R. . . Et uniquement laide de "1" et de "0".

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    Lordinateur est une crature imberbe, vgtarienne, maissurtout compltement manchote. Pas de main, donc pasde doigt, et donc aucune raison de compter en base 10.

    Trs intimement li lactivit humaine, lordinateur apourtant intrt disposer de quelques solides mthodesafin de se reprsenter les nombres dans leur infinievarit :entiers ou dcimaux, signs ou non signs, lments deN, Z, D, Q, R. . . Et uniquement laide de "1" et de "0".

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    Les nombres tant par nature assez . . . nombreux, ilsavre dlicat dassocier un mot ou un symbole unique chacun dentre eux. Do, trs vite, la ncessit de sefrotter lpineux problme de la numration,cest--dire lart et la manire de reprsenter lesnombres de faon pouvoir les identifier, les reconnatre,et, ainsi, les garder en mmoire.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Sommaire

    Numration

    Codage de NConversion

    Codage de Z

    Codage de R

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    2 systme de numration dcimale positionnelle :5 022 = 5 1 000 + 0 100 + 2 10 + 2 15 022 = 5 103 + 0 102 + 2 101 + 2 100

    on dit que 10 constitue la base de notre systme. Ilsexplique simplement par le nombre de symbolesgraphiques, ou chiffres, dont nous disposons pourreprsenter nos nombres : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    2 systme de numration dcimale positionnelle :5 022 = 5 1 000 + 0 100 + 2 10 + 2 15 022 = 5 103 + 0 102 + 2 101 + 2 100 on dit que 10 constitue la base de notre systme. Ilsexplique simplement par le nombre de symbolesgraphiques, ou chiffres, dont nous disposons pourreprsenter nos nombres : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    2 systme de numration binaire positionnelle : onutilise pour reprsenter les nombres, non plus dixsymboles diffrents, mais seulement deux : le "0" et le "1".10011 = 1 24 + 0 23 + 0 22 + 1 21 + 1 2010011 = 1 16 + 0 8 + 0 4 + 1 2 + 1 1

    . . . cest--dire 19.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numration

    2 systme de numration binaire positionnelle : onutilise pour reprsenter les nombres, non plus dixsymboles diffrents, mais seulement deux : le "0" et le "1".10011 = 1 24 + 0 23 + 0 22 + 1 21 + 1 2010011 = 1 16 + 0 8 + 0 4 + 1 2 + 1 1. . . cest--dire 19.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Attention

    Quand on a n objets, on les groupe par paquets de deux, quonregroupe eux-mmes en paquets de deux paquets, etc. Autrementdit, on fait une succession de divisions par 2, jusqu obtenirun quotient gal 0.

    il faut nous rappeler ce stade la petitecaractristique de lordinateur : sa propension manipuler des octets, et non des bits isols. Ceci expliqueque le nombre 10011, notre exemple, sera en fait codainsi : 00010011, avec trois zros initiaux, non significatifspour les calculs, mais nanmoins indispensables de par lemode de fonctionnement interne du processeur.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Conversion entre bases dcimale et binaire

    Cliquez sur les bits du nombre binaire ou sur les chiffresdu nombre dcimal afin den obtenir la conversion danslautre base de numration.

    conversions_b2_b10.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Conversion entre bases dcimale et binaire

    La conversion de la base 2 vers la base 10 ne pose aucune difficult,ds lors que lon replace les puissances de deux tacites entre lesdiffrents coefficients constituant le nombre binaire.Il existe plusieurs mthodes pour procder la conversion de la base10 vers la base 2. Celle expose ci-dessus, lmentaire, consistesimplement diviser le nombre dcimal convertir par deux puisrecommencer lopration sur le rsultat entier obtenu jusqu ce quele rsultat soit nul, en conservant chaque itration le reste delopration (0 si le rsultat est pair, 1 sil est impair). Les diffrentsrestes obtenus, juxtaposs de droite gauche, constituent le nombrebinaire recherch.Et comme vous avez parfaitement compris le principe du codagebinaire des entiers, vous ne serez pas surpris(e) de constaterlimpossibilit de convertir en binaire sur un octet un entier dcimalsuprieur 255. . .

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Multiplication de deux nombres binairesles entiers binaires se comportent comme des nombrestout fait "normaux", et se prtent donc aux mmesoprations classiques que notre arithmtique en base 10.

    Cliquez sur les bits constituant le multiplicande et le multiplicateurpour voir le rsultat de la multiplication correspondante.Nous voyons bien que la multiplication et laddition binaires nontrien de bien rvolutionnaires puisquici comme ailleurs, tout estquestion de retenues.

    multiplication_b2.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Multiplication de deux nombres binaires

    . . . Avec une petite diffrence nanmoins. Une normediffrence, en fait . . . Due la manie trs particulire quala machine de toujours faire tenir ses entiers dans unnombre fixe doctet(s). Il se peut, en effet, quau coursdun calcul, le rsultat produit donne un rsultat tropgrand pour pouvoir "tenir" dans le nombre doctetsallous au codage. Que se passe-t-il alors ?

    Et bien le processeur dclenche dans ce cas une alerteinterne appele overflow ou, sil est doriginefrancophone, dpassement de capacit, qui provoquelarrt du calcul en cours, calcul de toute faon erron.Comme vous vous en doutez, si rien nest prvu dans leprogramme afin de grer cette situation embarrassante,les consquences peuvent savrer fcheuses et prendretoutes les apparences dun bon bug des familles.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Multiplication de deux nombres binaires

    . . . Avec une petite diffrence nanmoins. Une normediffrence, en fait . . . Due la manie trs particulire quala machine de toujours faire tenir ses entiers dans unnombre fixe doctet(s). Il se peut, en effet, quau coursdun calcul, le rsultat produit donne un rsultat tropgrand pour pouvoir "tenir" dans le nombre doctetsallous au codage. Que se passe-t-il alors ?Et bien le processeur dclenche dans ce cas une alerteinterne appele overflow ou, sil est doriginefrancophone, dpassement de capacit, qui provoquelarrt du calcul en cours, calcul de toute faon erron.Comme vous vous en doutez, si rien nest prvu dans leprogramme afin de grer cette situation embarrassante,les consquences peuvent savrer fcheuses et prendretoutes les apparences dun bon bug des familles.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Dpassement de capacitEn pratique, combien doctet(s) un processeur alloue-t-ilrellement au codage des entiers ?Cest la discrtion du programmeur dallouer un nombredonn doctets au codage des entiers grs par sonapplication. Il existe toutefois des types gnriquesdentiers dfinis dans les langages de programmation, limage par exemple des types int et long dans le langageC, allouant respectivement deux et quatre octets pour lecodage des entiers.Bien videmment, il serait tentant de toujours prfrer unnombre maximal doctets afin de minimiser tout risque dedbordement, mais cette solution se rvlerait trsgourmande en mmoire, tous les entiers, mme les pluspetits, occupant alors ce nombre maximal doctets pourleur stockage. Cest une petite partie de lart duprogrammeur de trouver le juste compromis entre scuritet conomie des ressources mmoire.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Sommaire

    Numration

    Codage de N

    Codage de Zcomplment logiquecomplment 2

    Caractristiquesbits en biaisdcodage

    Codage de R

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    entiers relatifs

    Comment reprsenter laide de bits les entiers positifsET ngatifs, sachant quen bonne machine totalementbinaire, un processeur ne pige ni le signe plus, ni le signemoins ?Sachant quun signe en mathmatique ne peut prendreque deux valeurs diffrentes, un rflexe quasi bestialpourrait nous incliner ddier le bit de plus haut poidsde la squence lindication du signe : par exemple "0"pour les entiers positifs et "1" pour les entiers ngatifs.

    Cette approche, fort simple et parfaitement valable, estappele reprsentation signe-valeur absolue, maiscomporte deux trs lgers inconvnients de taille :

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    entiers relatifs

    Comment reprsenter laide de bits les entiers positifsET ngatifs, sachant quen bonne machine totalementbinaire, un processeur ne pige ni le signe plus, ni le signemoins ?Sachant quun signe en mathmatique ne peut prendreque deux valeurs diffrentes, un rflexe quasi bestialpourrait nous incliner ddier le bit de plus haut poidsde la squence lindication du signe : par exemple "0"pour les entiers positifs et "1" pour les entiers ngatifs.Cette approche, fort simple et parfaitement valable, estappele reprsentation signe-valeur absolue, maiscomporte deux trs lgers inconvnients de taille :

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    entiers relatifs

    I Lors des calculs, ce bit de signe ne peut tre considrtel quel par la machine mais doit faire lobjet duntraitement particulier sous peine de conduire desrsultats plutt surprenants, (610 + 610 = 1210)

    I Le nombre 0 se trouve reprsent par deux valeursdistinctes : +0 (00000000) et -0 (10000000).

    Non, franchement, si on pouvait trouver un autre moyen. . .

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    entiers relatifs

    I Lors des calculs, ce bit de signe ne peut tre considrtel quel par la machine mais doit faire lobjet duntraitement particulier sous peine de conduire desrsultats plutt surprenants, (610 + 610 = 1210)

    I Le nombre 0 se trouve reprsent par deux valeursdistinctes : +0 (00000000) et -0 (10000000).

    Non, franchement, si on pouvait trouver un autre moyen. . .

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par lareprsentation signe-valeur absolue

    Cliquez sur les bits du nombre binaire afin dobtenir lavaleur de lentier cod correspondant ou sur les chiffreset/ou signe du nombre dcimal afin den obtenir le codage

    signe_valeur_absolue.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par lareprsentation signe-valeur absolue

    Comme nous pouvons le constater, le bit de plus hautpoids tant dsormais charg de coder le signe, il perd sonrle de coefficient associ la valeur 27. Consquenceimmdiate : le plus grand entier relatif "codable" devient127 (01111111), et le plus petit -127 (11111111).

    Attention ! Comprenez bien quil nest plus possible icide parler de conversion entre bases dcimale et binaire,car la reprsentation par signe-valeur absolue ne constitueplus stricto sensu une numration positionnelle, de par laprsence du bit de signe. Il sagit plutt dans ce cas dunsimple codage binaire, dans le sens o lon transforme uneinformation (ici, un entier) en une squence de bits.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par lareprsentation signe-valeur absolue

    Comme nous pouvons le constater, le bit de plus hautpoids tant dsormais charg de coder le signe, il perd sonrle de coefficient associ la valeur 27. Consquenceimmdiate : le plus grand entier relatif "codable" devient127 (01111111), et le plus petit -127 (11111111).

    Attention ! Comprenez bien quil nest plus possible icide parler de conversion entre bases dcimale et binaire,car la reprsentation par signe-valeur absolue ne constitueplus stricto sensu une numration positionnelle, de par laprsence du bit de signe. Il sagit plutt dans ce cas dunsimple codage binaire, dans le sens o lon transforme uneinformation (ici, un entier) en une squence de bits.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment logique

    Soit un nombre binaire N compos de p bits. Enmathmatique, on appellera complment 1 de N lenombre not N tel que N + N = 2p 1.

    En langage comprhensible, ce complment N est donc lenombre qui, ajout N , donnera un rsultat composuniquement de 1. Par exemple, 1001012 est le complment 1 de 0110102 puisque on a bien :1001012 + 0110102 = 1111112 = 26 1

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment logique

    Soit un nombre binaire N compos de p bits. Enmathmatique, on appellera complment 1 de N lenombre not N tel que N + N = 2p 1.En langage comprhensible, ce complment N est donc lenombre qui, ajout N , donnera un rsultat composuniquement de 1. Par exemple, 1001012 est le complment 1 de 0110102 puisque on a bien :1001012 + 0110102 = 1111112 = 26 1

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment logique

    Notons en passant que, de par la dfinition ducomplment 1, on a :N + N = 2p 1 . . . soit, N = N + 1 2p Rappelons-nous quun processeur a pour habitude decoder ses nombres sur un nombre fixe doctet(s). Ds lors,p est gal 8, 16 voire 32 et, consquence immdiate, 2pest donc un nombre compos dun "1" suivi de 8, 16, voire32 "0" - cest--dire un nombre trop grand pour tenir dansle nombre doctet(s) qui lui est allou.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment 2

    Ce "1" initial, puisque dbordant sur la gauche, peut-tretrs facilement ignor par la machine. Ds lors, le nombre2p se voit rduit une srie de "0", cest--dire 0.

    Et on se retrouve alors avec lgalit simplifie :N = N + 1H, h. . . En mathmatiques, N est appel loppos deN , et ce, en base 10 comme en base 2. Il semble donc bienque, lair de rien, nous ayons trouv l une manire trslgante de reprsenter en binaire les entiers ngatifs,simplement en ajoutant un au complment 1 de leuroppos positif.

    DfinitionEn binaire, on appelle complment 2 de N cettevaleur N + 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment 2

    Ce "1" initial, puisque dbordant sur la gauche, peut-tretrs facilement ignor par la machine. Ds lors, le nombre2p se voit rduit une srie de "0", cest--dire 0.Et on se retrouve alors avec lgalit simplifie :N = N + 1H, h. . . En mathmatiques, N est appel loppos deN , et ce, en base 10 comme en base 2. Il semble donc bienque, lair de rien, nous ayons trouv l une manire trslgante de reprsenter en binaire les entiers ngatifs,simplement en ajoutant un au complment 1 de leuroppos positif.

    DfinitionEn binaire, on appelle complment 2 de N cettevaleur N + 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Complment 2

    Ce "1" initial, puisque dbordant sur la gauche, peut-tretrs facilement ignor par la machine. Ds lors, le nombre2p se voit rduit une srie de "0", cest--dire 0.Et on se retrouve alors avec lgalit simplifie :N = N + 1H, h. . . En mathmatiques, N est appel loppos deN , et ce, en base 10 comme en base 2. Il semble donc bienque, lair de rien, nous ayons trouv l une manire trslgante de reprsenter en binaire les entiers ngatifs,simplement en ajoutant un au complment 1 de leuroppos positif.

    DfinitionEn binaire, on appelle complment 2 de N cettevaleur N + 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par la mthode ducomplment 2.

    Cliquez sur les chiffres du nombre dcimal pour en obtenir laconversion en binaire "pur" (cest--dire en numration binairepositionnelle classique), le complment 1 et le complment 2.

    complement_a_2.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par la mthode ducomplment 2.

    Pour obtenir rapidement le complment 2 dun nombrebinaire, il suffit de recopier tels quels les bits partir de ladroite jusquau premier "1" inclus, puis dinverser les bitssuivants.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2I Le bit de plus haut poids quivaut de fait un bit de

    signe : "0" pour les entiers positifs, "1" pour lesentiers ngatifs.

    I Attention ! Cette phrase implique simplement que sila squence binaire dbute par un "1", lentier codest un nombre ngatif et que si la squence dbutepar un "0", lentier cod est un nombre positif. Cecine signifie absolument pas que le nombre positif etson oppos ngatif ne diffreront que par leur bit designe.

    I Une manire moins pigeuse et trs pertinente de voirles choses est de considrer ce bit de tte commeassoci un "poids" de 2n1 (avec n = 8, dans lecas dun octet), les autres bits tant associs leurpuissance de deux habituelle en numrationpositionnelle.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2I Le bit de plus haut poids quivaut de fait un bit de

    signe : "0" pour les entiers positifs, "1" pour lesentiers ngatifs.

    I Attention ! Cette phrase implique simplement que sila squence binaire dbute par un "1", lentier codest un nombre ngatif et que si la squence dbutepar un "0", lentier cod est un nombre positif. Cecine signifie absolument pas que le nombre positif etson oppos ngatif ne diffreront que par leur bit designe.

    I Une manire moins pigeuse et trs pertinente de voirles choses est de considrer ce bit de tte commeassoci un "poids" de 2n1 (avec n = 8, dans lecas dun octet), les autres bits tant associs leurpuissance de deux habituelle en numrationpositionnelle.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2I Le bit de plus haut poids quivaut de fait un bit de

    signe : "0" pour les entiers positifs, "1" pour lesentiers ngatifs.

    I Attention ! Cette phrase implique simplement que sila squence binaire dbute par un "1", lentier codest un nombre ngatif et que si la squence dbutepar un "0", lentier cod est un nombre positif. Cecine signifie absolument pas que le nombre positif etson oppos ngatif ne diffreront que par leur bit designe.

    I Une manire moins pigeuse et trs pertinente de voirles choses est de considrer ce bit de tte commeassoci un "poids" de 2n1 (avec n = 8, dans lecas dun octet), les autres bits tant associs leurpuissance de deux habituelle en numrationpositionnelle.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2

    I Le complment 2 dun entier ngatif donne bienloppos positif de cet entier, ce qui est pluttrassurant.

    I Le 0 est cod par une seule reprsentation binaire :00000000 (dans le cas dun codage sur un octet).

    I Avec n bits, il devient possible de reprsenter 2nentiers compris entre 2n1 et 2n1 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2

    I Le complment 2 dun entier ngatif donne bienloppos positif de cet entier, ce qui est pluttrassurant.

    I Le 0 est cod par une seule reprsentation binaire :00000000 (dans le cas dun codage sur un octet).

    I Avec n bits, il devient possible de reprsenter 2nentiers compris entre 2n1 et 2n1 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Caractristiques du complment 2

    I Le complment 2 dun entier ngatif donne bienloppos positif de cet entier, ce qui est pluttrassurant.

    I Le 0 est cod par une seule reprsentation binaire :00000000 (dans le cas dun codage sur un octet).

    I Avec n bits, il devient possible de reprsenter 2nentiers compris entre 2n1 et 2n1 1.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    ExempleI Comment coderiez-vous lentier 6010 sur un octet

    par la mthode du complment 2 ?

    11000100 Le nombre +6010 est cod par loctet00111100. Afin dobtenir facilement le complment 2 de ce nombre, et, donc, le codage binaire de sonoppos, il suffit de recopier les bits de droite gauchejusquau premier "1" inclus, puis de continuer eninversant cette fois les bits restants.

    I Supposez dsormais que vous deviez coder ce mmenombre, par la mme mthode, mais cette fois-ci surdeux octets. Quel couple doctets obtiendrez-vous ?11111111 11000100 Ce genre dopration, trscommune en arithmtique binaire, consistant ranger un nombre binaire dans un plus grand nombrede bits que le nombre de bits quil occupaitoriginellement, se nomme extension de signe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    ExempleI Comment coderiez-vous lentier 6010 sur un octet

    par la mthode du complment 2 ?11000100 Le nombre +6010 est cod par loctet00111100. Afin dobtenir facilement le complment 2 de ce nombre, et, donc, le codage binaire de sonoppos, il suffit de recopier les bits de droite gauchejusquau premier "1" inclus, puis de continuer eninversant cette fois les bits restants.

    I Supposez dsormais que vous deviez coder ce mmenombre, par la mme mthode, mais cette fois-ci surdeux octets. Quel couple doctets obtiendrez-vous ?

    11111111 11000100 Ce genre dopration, trscommune en arithmtique binaire, consistant ranger un nombre binaire dans un plus grand nombrede bits que le nombre de bits quil occupaitoriginellement, se nomme extension de signe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    ExempleI Comment coderiez-vous lentier 6010 sur un octet

    par la mthode du complment 2 ?11000100 Le nombre +6010 est cod par loctet00111100. Afin dobtenir facilement le complment 2 de ce nombre, et, donc, le codage binaire de sonoppos, il suffit de recopier les bits de droite gauchejusquau premier "1" inclus, puis de continuer eninversant cette fois les bits restants.

    I Supposez dsormais que vous deviez coder ce mmenombre, par la mme mthode, mais cette fois-ci surdeux octets. Quel couple doctets obtiendrez-vous ?11111111 11000100 Ce genre dopration, trscommune en arithmtique binaire, consistant ranger un nombre binaire dans un plus grand nombrede bits que le nombre de bits quil occupaitoriginellement, se nomme extension de signe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    La soustraction en somme

    Ce procd de codage a limmense intrt de permettre la machine de considrer la soustraction de deux entierscomme laddition du premier loppos du second !

    Dun point de vue strictement matriel, cet avantagedevient plus vident encore car au lieu de concevoir unemachine avec un circuit lectronique grant laddition etun autre circuit grant la soustraction, un seul et mmecircuit peut tre mis en place pour raliser les deuxoprations.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    La soustraction en somme

    Ce procd de codage a limmense intrt de permettre la machine de considrer la soustraction de deux entierscomme laddition du premier loppos du second !

    Dun point de vue strictement matriel, cet avantagedevient plus vident encore car au lieu de concevoir unemachine avec un circuit lectronique grant laddition etun autre circuit grant la soustraction, un seul et mmecircuit peut tre mis en place pour raliser les deuxoprations.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Laddition-soustraction de deux entiers codspar la mthode du complment 2.

    Cliquez sur les bits de lun et/ou lautre des termes de loprationpour constater les consquences sur le rsultat.Attention ! Notez quun bit surnumraire peut tout fait apparatre avecce genre daddition-soustraction, sans que le rsultat ne soit pour autanterron. A linverse, le rsultat peut tout fait savrer faux sans quaucunbit surnumraire napparaisse !

    addition_soustraction.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Laddition-soustraction de deux entiers codspar la mthode du complment 2.

    Nous voyons ici que dans le cas des entiers cods parcomplment 2, les dpassement de capacit (ouoverflows) ne sont plus du tout lis lapparition dun bitsurnumraire. En ralit, dans ce cas trs prcisdaddition-soustraction dentiers cods par complment 2, ils se produisent lorsque deux entiers de mme signedonnent un rsultat de signe oppos.

    Quoi quil en soit, cest toujours au processeur desurveiller le domaine de validit dune opration de cetype et de dclencher une alerte overflow lorsque lersultat dune opration est trop grand ou trop petit pourpouvoir tre cod par la mthode de codage utilise parses membres.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Laddition-soustraction de deux entiers codspar la mthode du complment 2.

    Nous voyons ici que dans le cas des entiers cods parcomplment 2, les dpassement de capacit (ouoverflows) ne sont plus du tout lis lapparition dun bitsurnumraire. En ralit, dans ce cas trs prcisdaddition-soustraction dentiers cods par complment 2, ils se produisent lorsque deux entiers de mme signedonnent un rsultat de signe oppos.

    Quoi quil en soit, cest toujours au processeur desurveiller le domaine de validit dune opration de cetype et de dclencher une alerte overflow lorsque lersultat dune opration est trop grand ou trop petit pourpouvoir tre cod par la mthode de codage utilise parses membres.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Les bits en biais

    Une autre possibilit de codage des entiers signsexiste : la reprsentation biaise, galement appelereprsentation par excs. Celle-ci, trs simple, consiste considrer tout nombre binaire cod comme un entiernon sign auquel on soustrait une constante, ou biais,dfinie selon le domaine de validit des entiers cods quelon recherche.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage des entiers relatifs par la mthode dela reprsentation biaise.

    Cliquez sur les bits du nombre binaire et/ou les chiffres du nombredcimal afin de voir le codage ou le dcodage binaire rsultant par lamthode de la reprsentation biaise. Vous pouvez galementmodifier la valeur du biais en cliquant sur les chiffres le composant.

    biaisee.swfMedia File (application/x-shockwave-flash)

  • Codage binaire des entiers sur un octet

    NR = valeur Non Reprsentable

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage binaire des entiers sur un octet

    2 Comment dcodez-vous loctet 10000001 en base10 ?I 127

    Certes. Mais pourquoi pas 129 en numration binairepositionnelle ?

    I 1Cest vrai. Mais pourquoi pas +1 en reprsentationbiaise et biais gal 128 ?

    I +1Effectivement. Mais pourquoi pas 1 enreprsentation signe-valeur absolue ?

    I +129Bien sr, bien sr. Mais pourquoi pas 127 encodage par complment 2 ?

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage binaire des entiers sur un octet

    2 Comment dcodez-vous loctet 10000001 en base10 ?I 127

    Certes. Mais pourquoi pas 129 en numration binairepositionnelle ?

    I 1Cest vrai. Mais pourquoi pas +1 en reprsentationbiaise et biais gal 128 ?

    I +1Effectivement. Mais pourquoi pas 1 enreprsentation signe-valeur absolue ?

    I +129Bien sr, bien sr. Mais pourquoi pas 127 encodage par complment 2 ?

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage binaire des entiers sur un octet

    2 Comment dcodez-vous loctet 10000001 en base10 ?I 127

    Certes. Mais pourquoi pas 129 en numration binairepositionnelle ?

    I 1Cest vrai. Mais pourquoi pas +1 en reprsentationbiaise et biais gal 128 ?

    I +1Effectivement. Mais pourquoi pas 1 enreprsentation signe-valeur absolue ?

    I +129Bien sr, bien sr. Mais pourquoi pas 127 encodage par complment 2 ?

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage binaire des entiers sur un octet

    2 Comment dcodez-vous loctet 10000001 en base10 ?I 127

    Certes. Mais pourquoi pas 129 en numration binairepositionnelle ?

    I 1Cest vrai. Mais pourquoi pas +1 en reprsentationbiaise et biais gal 128 ?

    I +1Effectivement. Mais pourquoi pas 1 enreprsentation signe-valeur absolue ?

    I +129Bien sr, bien sr. Mais pourquoi pas 127 encodage par complment 2 ?

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage binaire des entiers sur un octet

    2 Comment dcodez-vous loctet 10000001 en base10 ?I Aucune ide

    Et vous faites rudement bien car il est foncirementimpossible de dcoder un octet si lon ignore lecodage qui a servi pour le crer. En dautres termes,un octet peut virtuellement coder nimporte quelentier ! Cest au processeur de connatre enpermanence le type de codage qui a t utilis pourcoder les nombres quil manipule. Enprogrammation, cela revient typer lesvariables manipules par le programme.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Sommaire

    Numration

    Codage de N

    Codage de Z

    Codage de R

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Un nombre rel se compose de deux parties distinctes :une partie entire, situe gauche de la virgule, et,ventuellement, une partie dcimale, situe aprs celle-ci.

    Pour ce qui est de la partie entire, nous savons dsormaisparfaitement la coder. Mais quid de de la partie dcimale ?Et bien il nous suffit de reprendre le principe de lanumration positionnelle, en considrant chaque bit situaprs la virgule comme associ cette fois des puissancesngative de deux, tout comme nous le faisons pour la base10.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Un nombre rel se compose de deux parties distinctes :une partie entire, situe gauche de la virgule, et,ventuellement, une partie dcimale, situe aprs celle-ci.Pour ce qui est de la partie entire, nous savons dsormaisparfaitement la coder. Mais quid de de la partie dcimale ?Et bien il nous suffit de reprendre le principe de lanumration positionnelle, en considrant chaque bit situaprs la virgule comme associ cette fois des puissancesngative de deux, tout comme nous le faisons pour la base10.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Ainsi, pour reprendre notre petit exercice dedcomposition dj vu plus haut, nous savons que :5 022,78 = 51 000+0100+210+21+70, 1+80, 01. . . ce qui revient crire :5 022,78 =5 103 + 0 12 + 2 101 + 2 100 + 7 101 + 8 102De la mme manire, on pourra galement crire :10111, 011 =124+023+122+121+120+021+122+123. . . soit :10111, 011 =116+08+14+12+11+00, 5+10, 25+10, 125. . . cest--dire 10111, 0112 = 23, 37510

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Le problme, comme nous le disions il y a peu, reste lecodage de la virgule. Impossible en effet de la symboliserpar un bit, car comment par la suite reconnatre ce bitcodant la virgule parmi tous les bits composant le nombreproprement dit ?

    Problme que ne pose pas le codage du signe, par dfinition toujoursplac au mme endroit.Le seul moyen de procder est pour la machine deconvenir une fois pour toute dune position immuable ettacite de la virgule. Les rels cods selon cette mthodeseront alors dits reprsents en virgule fixe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Le problme, comme nous le disions il y a peu, reste lecodage de la virgule. Impossible en effet de la symboliserpar un bit, car comment par la suite reconnatre ce bitcodant la virgule parmi tous les bits composant le nombreproprement dit ?Problme que ne pose pas le codage du signe, par dfinition toujoursplac au mme endroit.

    Le seul moyen de procder est pour la machine deconvenir une fois pour toute dune position immuable ettacite de la virgule. Les rels cods selon cette mthodeseront alors dits reprsents en virgule fixe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Codage de R

    Le problme, comme nous le disions il y a peu, reste lecodage de la virgule. Impossible en effet de la symboliserpar un bit, car comment par la suite reconnatre ce bitcodant la virgule parmi tous les bits composant le nombreproprement dit ?Problme que ne pose pas le codage du signe, par dfinition toujoursplac au mme endroit.Le seul moyen de procder est pour la machine deconvenir une fois pour toute dune position immuable ettacite de la virgule. Les rels cods selon cette mthodeseront alors dits reprsents en virgule fixe.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Cliquez sur les bits du nombre binaire et/ou les chiffres du nombredcimal afin den obtenir la conversion dans lautre base denumration.

    virgule_fixe.swfMedia File (application/x-shockwave-flash)

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Afin de coder en base 2 un nombre infrieur 1, il suffit demultiplier par deux ce nombre, garder la partie entire obtenue(0 ou 1) puis recommencer avec la partie fractionnaire jusqula prcision voulue.

    Dans ce cas de figure, la virgule fixe est suppose se trouverjuste devant le premier bit ; le plus petit rel codablecorrespond donc loctet 00000001 qui code la valeur0,00390625 (soit 1/256) et le plus grand loctet 11111111, quicode la valeur 0,99609375 (soit 1/2 + 1/4 + 1/8 + 1/16 + 1/32+ 1/64 + 1/128 + 1/256).Notez quand mme que 256 combinaisons savrent un peulger-lger afin de coder linfinit des rels compris entre cesdeux valeurs. La probabilit est donc immense quun rel nepuisse tre exactement cod par huit petits bits.Lanimation donne ici, pour chaque rel choisi, la valeurinfrieure la plus proche pouvant tre effectivement code parloctet.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Afin de coder en base 2 un nombre infrieur 1, il suffit demultiplier par deux ce nombre, garder la partie entire obtenue(0 ou 1) puis recommencer avec la partie fractionnaire jusqula prcision voulue.Dans ce cas de figure, la virgule fixe est suppose se trouverjuste devant le premier bit ; le plus petit rel codablecorrespond donc loctet 00000001 qui code la valeur0,00390625 (soit 1/256) et le plus grand loctet 11111111, quicode la valeur 0,99609375 (soit 1/2 + 1/4 + 1/8 + 1/16 + 1/32+ 1/64 + 1/128 + 1/256).

    Notez quand mme que 256 combinaisons savrent un peulger-lger afin de coder linfinit des rels compris entre cesdeux valeurs. La probabilit est donc immense quun rel nepuisse tre exactement cod par huit petits bits.Lanimation donne ici, pour chaque rel choisi, la valeurinfrieure la plus proche pouvant tre effectivement code parloctet.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Afin de coder en base 2 un nombre infrieur 1, il suffit demultiplier par deux ce nombre, garder la partie entire obtenue(0 ou 1) puis recommencer avec la partie fractionnaire jusqula prcision voulue.Dans ce cas de figure, la virgule fixe est suppose se trouverjuste devant le premier bit ; le plus petit rel codablecorrespond donc loctet 00000001 qui code la valeur0,00390625 (soit 1/256) et le plus grand loctet 11111111, quicode la valeur 0,99609375 (soit 1/2 + 1/4 + 1/8 + 1/16 + 1/32+ 1/64 + 1/128 + 1/256).Notez quand mme que 256 combinaisons savrent un peulger-lger afin de coder linfinit des rels compris entre cesdeux valeurs. La probabilit est donc immense quun rel nepuisse tre exactement cod par huit petits bits.

    Lanimation donne ici, pour chaque rel choisi, la valeurinfrieure la plus proche pouvant tre effectivement code parloctet.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Afin de coder en base 2 un nombre infrieur 1, il suffit demultiplier par deux ce nombre, garder la partie entire obtenue(0 ou 1) puis recommencer avec la partie fractionnaire jusqula prcision voulue.Dans ce cas de figure, la virgule fixe est suppose se trouverjuste devant le premier bit ; le plus petit rel codablecorrespond donc loctet 00000001 qui code la valeur0,00390625 (soit 1/256) et le plus grand loctet 11111111, quicode la valeur 0,99609375 (soit 1/2 + 1/4 + 1/8 + 1/16 + 1/32+ 1/64 + 1/128 + 1/256).Notez quand mme que 256 combinaisons savrent un peulger-lger afin de coder linfinit des rels compris entre cesdeux valeurs. La probabilit est donc immense quun rel nepuisse tre exactement cod par huit petits bits.Lanimation donne ici, pour chaque rel choisi, la valeurinfrieure la plus proche pouvant tre effectivement code parloctet.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Convertissons 1234, 347 en base 2.I La partie entire se transforme

    123410 = 100110100102

    I On transforme la partie dcimale selon le schmasuivant :

    0, 347 2 = 0, 694 0, 347 = 0, 0 . . .0, 694 2 = 1, 388 0, 347 = 0, 01 . . .0, 388 2 = 0, 766 0, 347 = 0, 010 . . .0, 766 2 = 1, 552 0, 347 = 0, 0101 . . .0, 552 2 = 1, 104 0.347 = 0, 01011 . . .0, 104 2 = 0, 208 0, 347 = 0, 010110 . . .0, 208 2 = 0, 416 0, 347 = 0, 0101100 . . .0, 416 2 = 0, 832 0, 347 = 0, 01011000 . . .0, 832 2 = 1, 664 0, 347 = 0, 010110001 . . .0, 664 2 = 1, 328 0, 347 = 0, 0101100011 . . .0, 328 2 = 0, 656 0, 347 = 0, 01011000110 . . .On continue ainsi jusqu la prcision dsire. . .Attention ! Un nombre dveloppement dcimal fini enbase 10 ne lest pas forcment en base 2.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Convertissons 1234, 347 en base 2.I La partie entire se transforme

    123410 = 100110100102I On transforme la partie dcimale selon le schma

    suivant :

    0, 347 2 = 0, 694 0, 347 = 0, 0 . . .0, 694 2 = 1, 388 0, 347 = 0, 01 . . .0, 388 2 = 0, 766 0, 347 = 0, 010 . . .0, 766 2 = 1, 552 0, 347 = 0, 0101 . . .0, 552 2 = 1, 104 0.347 = 0, 01011 . . .0, 104 2 = 0, 208 0, 347 = 0, 010110 . . .0, 208 2 = 0, 416 0, 347 = 0, 0101100 . . .0, 416 2 = 0, 832 0, 347 = 0, 01011000 . . .0, 832 2 = 1, 664 0, 347 = 0, 010110001 . . .0, 664 2 = 1, 328 0, 347 = 0, 0101100011 . . .0, 328 2 = 0, 656 0, 347 = 0, 01011000110 . . .On continue ainsi jusqu la prcision dsire. . .Attention ! Un nombre dveloppement dcimal fini enbase 10 ne lest pas forcment en base 2.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Convertissons 1234, 347 en base 2.I La partie entire se transforme

    123410 = 100110100102I On transforme la partie dcimale selon le schma

    suivant :

    0, 347 2 = 0, 694 0, 347 = 0, 0 . . .0, 694 2 = 1, 388 0, 347 = 0, 01 . . .0, 388 2 = 0, 766 0, 347 = 0, 010 . . .0, 766 2 = 1, 552 0, 347 = 0, 0101 . . .0, 552 2 = 1, 104 0.347 = 0, 01011 . . .0, 104 2 = 0, 208 0, 347 = 0, 010110 . . .0, 208 2 = 0, 416 0, 347 = 0, 0101100 . . .0, 416 2 = 0, 832 0, 347 = 0, 01011000 . . .0, 832 2 = 1, 664 0, 347 = 0, 010110001 . . .0, 664 2 = 1, 328 0, 347 = 0, 0101100011 . . .0, 328 2 = 0, 656 0, 347 = 0, 01011000110 . . .On continue ainsi jusqu la prcision dsire. . .Attention ! Un nombre dveloppement dcimal fini enbase 10 ne lest pas forcment en base 2.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Convertissons 1234, 347 en base 2.I La partie entire se transforme

    123410 = 100110100102I On transforme la partie dcimale selon le schma

    suivant :0, 347 2 = 0, 694 0, 347 = 0, 0 . . .0, 694 2 = 1, 388 0, 347 = 0, 01 . . .0, 388 2 = 0, 766 0, 347 = 0, 010 . . .0, 766 2 = 1, 552 0, 347 = 0, 0101 . . .0, 552 2 = 1, 104 0.347 = 0, 01011 . . .0, 104 2 = 0, 208 0, 347 = 0, 010110 . . .0, 208 2 = 0, 416 0, 347 = 0, 0101100 . . .0, 416 2 = 0, 832 0, 347 = 0, 01011000 . . .0, 832 2 = 1, 664 0, 347 = 0, 010110001 . . .0, 664 2 = 1, 328 0, 347 = 0, 0101100011 . . .0, 328 2 = 0, 656 0, 347 = 0, 01011000110 . . .On continue ainsi jusqu la prcision dsire. . .Attention ! Un nombre dveloppement dcimal fini enbase 10 ne lest pas forcment en base 2.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Quel serait le plus grand rel dcimal codable par unoctet avec une virgule fixe en son milieu ?

    15, 9375

    Soit 23 + 22 + 21 + 20 + 21 + 22 + 23 + 24

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Numrations binaire et dcimale des rels parvirgule fixe

    Quel serait le plus grand rel dcimal codable par unoctet avec une virgule fixe en son milieu ?

    15, 9375

    Soit 23 + 22 + 21 + 20 + 21 + 22 + 23 + 24

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Virgule fixe, immobilisation rentable ?

    Imaginons que nous recherchions le meilleur format afinde coder nos rels positifs en binaire. Comme nous voulonspouvoir coder dassez grands nombres avec une prcisionpas trop ridicule, nous optons pour un format sur quatreoctets, avec une virgule fixe place en plein milieu. 16 bitsavant la virgule, donc, afin de pouvoir coder des partiesentires jusqu 216, et 16 bits aprs la virgule, histoire depouvoir calculer avec une prcision de 216.

    Outre le fait que ni ltendue du codage ni sa prcision nesavrent totalement satisfaisantes, on se rend vite compteque, ds lors que lon voudra coder de petits relsinfrieurs un ou de grands entiers, le gchis en bits estinsupportable !

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Virgule fixe, immobilisation rentable ?

    Imaginons que nous recherchions le meilleur format afinde coder nos rels positifs en binaire. Comme nous voulonspouvoir coder dassez grands nombres avec une prcisionpas trop ridicule, nous optons pour un format sur quatreoctets, avec une virgule fixe place en plein milieu. 16 bitsavant la virgule, donc, afin de pouvoir coder des partiesentires jusqu 216, et 16 bits aprs la virgule, histoire depouvoir calculer avec une prcision de 216.

    Outre le fait que ni ltendue du codage ni sa prcision nesavrent totalement satisfaisantes, on se rend vite compteque, ds lors que lon voudra coder de petits relsinfrieurs un ou de grands entiers, le gchis en bits estinsupportable !

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsDe fait, les scientifiques utilisent une notation ingnieusedes rels laquelle ils ont dailleurs modestement donnleur nom. Celle-ci consiste crire les nombres sous laforme :

    (1)signe Mantisse 10Exposant

    Cette notation a limmense mrite de pouvoir reprsenter la fois les trs grands et les trs petits nombres sanssencombrer dune flope de zros.Les rels cods sous cette forme sont dits reprsents envirgule flottanteMais pourquoi donc un si curieux pithte ?Parce quavec cette notation, la virgule peut "flotter" tout au long dela mantisse, il suffit simplement dajuster lexposant en consquence.Ainsi, par exemple :12647 = 12647 100 = 126, 47 102 = 1264700 102Et la virgule flotte tout aussi bien en binaire. La preuve :11001 = 11001 20 = 1, 1001 24 = 1100100000 25

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsDe fait, les scientifiques utilisent une notation ingnieusedes rels laquelle ils ont dailleurs modestement donnleur nom. Celle-ci consiste crire les nombres sous laforme :

    (1)signe Mantisse 10Exposant

    Cette notation a limmense mrite de pouvoir reprsenter la fois les trs grands et les trs petits nombres sanssencombrer dune flope de zros.

    Les rels cods sous cette forme sont dits reprsents envirgule flottanteMais pourquoi donc un si curieux pithte ?Parce quavec cette notation, la virgule peut "flotter" tout au long dela mantisse, il suffit simplement dajuster lexposant en consquence.Ainsi, par exemple :12647 = 12647 100 = 126, 47 102 = 1264700 102Et la virgule flotte tout aussi bien en binaire. La preuve :11001 = 11001 20 = 1, 1001 24 = 1100100000 25

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsDe fait, les scientifiques utilisent une notation ingnieusedes rels laquelle ils ont dailleurs modestement donnleur nom. Celle-ci consiste crire les nombres sous laforme :

    (1)signe Mantisse 10Exposant

    Cette notation a limmense mrite de pouvoir reprsenter la fois les trs grands et les trs petits nombres sanssencombrer dune flope de zros.Les rels cods sous cette forme sont dits reprsents envirgule flottante

    Mais pourquoi donc un si curieux pithte ?Parce quavec cette notation, la virgule peut "flotter" tout au long dela mantisse, il suffit simplement dajuster lexposant en consquence.Ainsi, par exemple :12647 = 12647 100 = 126, 47 102 = 1264700 102Et la virgule flotte tout aussi bien en binaire. La preuve :11001 = 11001 20 = 1, 1001 24 = 1100100000 25

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsDe fait, les scientifiques utilisent une notation ingnieusedes rels laquelle ils ont dailleurs modestement donnleur nom. Celle-ci consiste crire les nombres sous laforme :

    (1)signe Mantisse 10Exposant

    Cette notation a limmense mrite de pouvoir reprsenter la fois les trs grands et les trs petits nombres sanssencombrer dune flope de zros.Les rels cods sous cette forme sont dits reprsents envirgule flottanteMais pourquoi donc un si curieux pithte ?Parce quavec cette notation, la virgule peut "flotter" tout au long dela mantisse, il suffit simplement dajuster lexposant en consquence.Ainsi, par exemple :12647 = 12647 100 = 126, 47 102 = 1264700 102Et la virgule flotte tout aussi bien en binaire. La preuve :11001 = 11001 20 = 1, 1001 24 = 1100100000 25

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bits

    Bien entendu, la chose reste tout fait possible en base 2.Lcriture devient alors :

    (1)signe Mantisse 2Exposant

    o mantisse et exposant seront bien videmmentexprims en binaire.

    Et bien ne cherchez pas plus loin ! Voil comment lesprocesseurs sy prennent pour reprsenter de manireconvenable les rels. Avec, bien videmment, quelquespetites particularits toutes personnelles.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bits

    Bien entendu, la chose reste tout fait possible en base 2.Lcriture devient alors :

    (1)signe Mantisse 2Exposant

    o mantisse et exposant seront bien videmmentexprims en binaire.

    Et bien ne cherchez pas plus loin ! Voil comment lesprocesseurs sy prennent pour reprsenter de manireconvenable les rels. Avec, bien videmment, quelquespetites particularits toutes personnelles.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsI La base 2, par dfinition immuable, sera omise.

    I Le signe du nombre sera cod par le bit de plus hautpoids de la mantisse : "0" pour les rels positifs, "1"pour les rels ngatifs ; limage de la reprsentationpar signe-valeur absolue.

    I Lexposant sera cod selon une reprsentation biaise.I Lexposant sera tabli de telle manire que la

    mantisse soit de la forme "1, . . .", cest--dire de tellemanire que la virgule soit situe juste aprs lepremier bit gal "1". On parle alors de mantissenormalise. Cette constance nous permet dedlibrment omettre ce premier bit - on parlera debit cach - et de gagner un bit supplmentaire pourla prcision.

    I La mantisse sexprimera alors comme un nombre rel virgule fixe o la virgule serait fixe en tte de lasquence, et codera donc, par consquent un rel comprisdans lintervalle binaire [1, 10[.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsI La base 2, par dfinition immuable, sera omise.I Le signe du nombre sera cod par le bit de plus haut

    poids de la mantisse : "0" pour les rels positifs, "1"pour les rels ngatifs ; limage de la reprsentationpar signe-valeur absolue.

    I Lexposant sera cod selon une reprsentation biaise.I Lexposant sera tabli de telle manire que la

    mantisse soit de la forme "1, . . .", cest--dire de tellemanire que la virgule soit situe juste aprs lepremier bit gal "1". On parle alors de mantissenormalise. Cette constance nous permet dedlibrment omettre ce premier bit - on parlera debit cach - et de gagner un bit supplmentaire pourla prcision.

    I La mantisse sexprimera alors comme un nombre rel virgule fixe o la virgule serait fixe en tte de lasquence, et codera donc, par consquent un rel comprisdans lintervalle binaire [1, 10[.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsI La base 2, par dfinition immuable, sera omise.I Le signe du nombre sera cod par le bit de plus haut

    poids de la mantisse : "0" pour les rels positifs, "1"pour les rels ngatifs ; limage de la reprsentationpar signe-valeur absolue.

    I Lexposant sera cod selon une reprsentation biaise.

    I Lexposant sera tabli de telle manire que lamantisse soit de la forme "1, . . .", cest--dire de tellemanire que la virgule soit situe juste aprs lepremier bit gal "1". On parle alors de mantissenormalise. Cette constance nous permet dedlibrment omettre ce premier bit - on parlera debit cach - et de gagner un bit supplmentaire pourla prcision.

    I La mantisse sexprimera alors comme un nombre rel virgule fixe o la virgule serait fixe en tte de lasquence, et codera donc, par consquent un rel comprisdans lintervalle binaire [1, 10[.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsI La base 2, par dfinition immuable, sera omise.I Le signe du nombre sera cod par le bit de plus haut

    poids de la mantisse : "0" pour les rels positifs, "1"pour les rels ngatifs ; limage de la reprsentationpar signe-valeur absolue.

    I Lexposant sera cod selon une reprsentation biaise.I Lexposant sera tabli de telle manire que la

    mantisse soit de la forme "1, . . .", cest--dire de tellemanire que la virgule soit situe juste aprs lepremier bit gal "1". On parle alors de mantissenormalise. Cette constance nous permet dedlibrment omettre ce premier bit - on parlera debit cach - et de gagner un bit supplmentaire pourla prcision.

    I La mantisse sexprimera alors comme un nombre rel virgule fixe o la virgule serait fixe en tte de lasquence, et codera donc, par consquent un rel comprisdans lintervalle binaire [1, 10[.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Le flottement de la virgule au milieu des bitsI La base 2, par dfinition immuable, sera omise.I Le signe du nombre sera cod par le bit de plus haut

    poids de la mantisse : "0" pour les rels positifs, "1"pour les rels ngatifs ; limage de la reprsentationpar signe-valeur absolue.

    I Lexposant sera cod selon une reprsentation biaise.I Lexposant sera tabli de telle manire que la

    mantisse soit de la forme "1, . . .", cest--dire de tellemanire que la virgule soit situe juste aprs lepremier bit gal "1". On parle alors de mantissenormalise. Cette constance nous permet dedlibrment omettre ce premier bit - on parlera debit cach - et de gagner un bit supplmentaire pourla prcision.

    I La mantisse sexprimera alors comme un nombre rel virgule fixe o la virgule serait fixe en tte de lasquence, et codera donc, par consquent un rel comprisdans lintervalle binaire [1, 10[.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE-754)

    Soit codifier le nombre 3, 25 qui scrit en base 2 :11, 012.On va normaliser la reprsentation en base 2 de telle sortequelle scrive sous la forme 1, . . . 2n .

    Cette constance nous permet de dlibrment omettre cepremier bit - on parlera de bit cach - et de gagner un bitsupplmentaire pour la prcision.Dans notre exemple 11, 01 = 1, 101 21La reprsentation IEEE code sparment le signe dunombre (ici +),lexposant n (ici 1),et la mantisse (la suitede bits aprs la virgule), le tout sur 32 bits.Le codage a la forme :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE-754)

    Soit codifier le nombre 3, 25 qui scrit en base 2 :11, 012.On va normaliser la reprsentation en base 2 de telle sortequelle scrive sous la forme 1, . . . 2n .Cette constance nous permet de dlibrment omettre cepremier bit - on parlera de bit cach - et de gagner un bitsupplmentaire pour la prcision.

    Dans notre exemple 11, 01 = 1, 101 21La reprsentation IEEE code sparment le signe dunombre (ici +),lexposant n (ici 1),et la mantisse (la suitede bits aprs la virgule), le tout sur 32 bits.Le codage a la forme :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE-754)

    Soit codifier le nombre 3, 25 qui scrit en base 2 :11, 012.On va normaliser la reprsentation en base 2 de telle sortequelle scrive sous la forme 1, . . . 2n .Cette constance nous permet de dlibrment omettre cepremier bit - on parlera de bit cach - et de gagner un bitsupplmentaire pour la prcision.Dans notre exemple 11, 01 = 1, 101 21La reprsentation IEEE code sparment le signe dunombre (ici +),

    lexposant n (ici 1),et la mantisse (la suitede bits aprs la virgule), le tout sur 32 bits.Le codage a la forme :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE-754)

    Soit codifier le nombre 3, 25 qui scrit en base 2 :11, 012.On va normaliser la reprsentation en base 2 de telle sortequelle scrive sous la forme 1, . . . 2n .Cette constance nous permet de dlibrment omettre cepremier bit - on parlera de bit cach - et de gagner un bitsupplmentaire pour la prcision.Dans notre exemple 11, 01 = 1, 101 21La reprsentation IEEE code sparment le signe dunombre (ici +),lexposant n (ici 1),

    et la mantisse (la suitede bits aprs la virgule), le tout sur 32 bits.Le codage a la forme :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE-754)

    Soit codifier le nombre 3, 25 qui scrit en base 2 :11, 012.On va normaliser la reprsentation en base 2 de telle sortequelle scrive sous la forme 1, . . . 2n .Cette constance nous permet de dlibrment omettre cepremier bit - on parlera de bit cach - et de gagner un bitsupplmentaire pour la prcision.Dans notre exemple 11, 01 = 1, 101 21La reprsentation IEEE code sparment le signe dunombre (ici +),lexposant n (ici 1),et la mantisse (la suitede bits aprs la virgule), le tout sur 32 bits.Le codage a la forme :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    I Le signe est reprsent sur le bit de poids fort s, +est reprsent par 0 et par 1.

    I Lexposant est cod sur les 8 bits e. On code enbinaire la valeur n + 127.

    I La mantisse est code sur les 23 bits de poids faiblesm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    I Le signe est reprsent sur le bit de poids fort s, +est reprsent par 0 et par 1.

    I Lexposant est cod sur les 8 bits e. On code enbinaire la valeur n + 127.

    I La mantisse est code sur les 23 bits de poids faiblesm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    I Le signe est reprsent sur le bit de poids fort s, +est reprsent par 0 et par 1.

    I Lexposant est cod sur les 8 bits e. On code enbinaire la valeur n + 127.

    I La mantisse est code sur les 23 bits de poids faiblesm.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Remarques

    Les exposants 00000000 et 11111111 sont interdits :I lexposant 00000000 signifie que le nombre est

    dnormalis ;I lexposant 11111111 indique que lon na pas affaire

    un nombre (on note cette configuration NaN, Not aNumber, et on lutilise pour signaler des erreurs decalculs, comme par exemple une division par 0).

    Les plus petit exposant est donc 126, et le plus grand+127.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    ExempleTraduisons en binaire, en utilisant la norme IEEE 754, lenombre 6, 625. Codons dabord la valeur absolue en binaire :6, 62510 = 110, 10102

    Nous mettons ce nombre sous la forme : 1, partiefractionnaire 110, 1010 = 1, 101010 22(22dcale la virgule de 2 chiffres vers la droite) La partie fractionnaire tendue sur 23 bits est donc10101000000000000000000. Exposant = 127 + 2 = 12910 = 100000012

    En hexadcimal : C0 D4 00 00.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    ExempleTraduisons en binaire, en utilisant la norme IEEE 754, lenombre 6, 625. Codons dabord la valeur absolue en binaire :6, 62510 = 110, 10102 Nous mettons ce nombre sous la forme : 1, partiefractionnaire 110, 1010 = 1, 101010 22(22dcale la virgule de 2 chiffres vers la droite)

    La partie fractionnaire tendue sur 23 bits est donc10101000000000000000000. Exposant = 127 + 2 = 12910 = 100000012

    En hexadcimal : C0 D4 00 00.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    ExempleTraduisons en binaire, en utilisant la norme IEEE 754, lenombre 6, 625. Codons dabord la valeur absolue en binaire :6, 62510 = 110, 10102 Nous mettons ce nombre sous la forme : 1, partiefractionnaire 110, 1010 = 1, 101010 22(22dcale la virgule de 2 chiffres vers la droite) La partie fractionnaire tendue sur 23 bits est donc10101000000000000000000.

    Exposant = 127 + 2 = 12910 = 100000012

    En hexadcimal : C0 D4 00 00.

  • ISN - Codagebinaire des

    nombres

    M. Lagrave

    Numration

    Codage de NConversion

    Codage de Zcomplment logique

    complment 2

    Caractristiques

    bits en biais

    dcodage

    Codage de R

    Reprsentation des nombres rels (normeIEEE)

    ExempleTraduisons en binaire, en utilisant la norme IEEE 754, lenombre 6, 625. Codons dabord la valeur absolue en binaire :6, 62510 = 110, 10102 Nous mettons ce nombre sous la forme : 1, partiefractionnaire 110, 1010 = 1, 101010 22(22dcale la virgule de 2 chiffres vers la droite) La partie fractionnaire tendue sur 23 bits est donc10101000000000000000000. Exposant = 127 + 2 = 12910 = 100000012

    En hexadcimal : C0 D4 00 00.

  • La virgule flottante standardise

    Un processeur sera trs souvent contraint de faire appel des approximations afin de reprsenter les rels.

    Le degr de prcision de la reprsentation par virguleflottante des rels sera directement proportionnel aunombre de bits allou la mantisse, alors que le nombrede bits allou lexposant conditionnera lamplitude delintervalle des nombres reprsentables.

  • La virgule flottante standardise

    Un processeur sera trs souvent contraint de faire appel des approximations afin de reprsenter les rels.Le degr de prcision de la reprsentation par virguleflottante des rels sera directement proportionnel aunombre de bits allou la mantisse, alors que le nombrede bits allou lexposant conditionnera lamplitude delintervalle des nombres reprsentables.

  • Format IEEE-754 simple prcision

    ieee754.swfMedia File (application/x-shockwave-flash)

    NumrationCodage de NConversion

    Codage de Zcomplment logiquecomplment 2bits en biaisdcodage

    Codage de R