[PDF] IPT : Cours 2 La représentation informatique des nombres — (3 ou 4





Previous PDF Next PDF



Représentation de linformation en binaire 1 Linformation et sa

Groupe « Faire de l'informatique sans ordinateur à l'école et au collège ». Janvier 2015. Pour représenter un nombre en binaire nous n'avons que deux 



Représentation des nombres

lycée louis-le-grand informatique commune. Représentation dans une base. Pour représenter un nombre n en base 10 on doit utiliser 10 caractères.



Représentation des nombres entiers

Introduction aux systèmes informatiques. Représentation des nombres entiers signés. • Conventions. • Valeur signée. • Codage DCB (Décimal Codé Binaire).



IPT : Cours 2 La représentation informatique des nombres — (3 ou 4

27 sept. 2016 Représentation informatique des nombres http://pascal.delahaye1.free.fr/. Proposition 1 : Codage binaire de la partie enti`ere.



Informatique en CPGE (2018-2019) Représentation des nombres 1

Informatique en CPGE (2018-2019). Représentation des nombres. 1 Codage de l'information. Les ordinateurs comme d'autres appareils



Chapitre 1 - Représentation dun nombre en machine erreurs d

Ce chapitre est une introduction à la représentation des nombres en machine et aux erreurs d'arrondis basé sur [2]



1 Représentation des nombres

bug informatique plus exactement à une erreur liée à la représentation de nombres. L'objectif de ce chapitre est de mieux comprendre ce qu'est un nombre 



Représentation des nombres entiers en mémoire

Informatique. CI1:ARCHITECTURE MATÉRIELLE ET LOGICIELLE. CHAPITRE 3–PRINCIPE DE LA REPRÉSENTATION DES NOMBRES ENTIERS EN. MÉMOIRE. Savoir. Savoirs.



Représentation des nombres

Nous disposons de 64 bits pour représenter un nombre ; il est donc naturel de La raison du rôle particulier que joue la base 16 en informatique provient ...



Représentation des nombres flottants

Un nombre représenté en virgule flottante est M – un nombre dont le premier chiffre est non nul. • Exemple: ... Représentation de l'exposant et de.



[PDF] AIII Représentation des nombres en informatique - AlloSchool

13 déc 2017 · Le programme d'IPT limite ce chapitre à la représentation des nombres réels en virgule flottante normalisée sans traiter de cas particuliers



[PDF] Représentation des nombres

Pour représenter un nombre n en base 10 on doit utiliser 10 caractères différents pour représenter les 10 premiers entiers : 0 1 2 3 4 5 6 7 8 9



[PDF] Représentation des nombres entiers

Introduction aux systèmes informatiques Représentation des nombres entiers signés • Conventions • Valeur signée • Codage DCB (Décimal Codé Binaire)



[PDF] 1 Représentation des nombres

L'objectif de ce chapitre est de mieux comprendre ce qu'est un nombre pour un ordi- nateur et pour le langage Python afin entre autres d'effectuer des 



[PDF] Représentation des nombres Polycopié : Electronique numérique

Les nombres peuvent être représentés sur une droite: En informatique: nombres représentés sur N bits plage limitée! représentation sur un cercle



[PDF] IPT : Cours 2 La représentation informatique des nombres

27 sept 2016 · Exercice : 1 Donner la décomposition binaire du nombre x = 17 2 2 Codage informatique des nombres entiers 2 1 Les unités (ou mots) 'mémoire'



[PDF] Informatique en CPGE (2018-2019) Représentation des nombres 1

Informatique en CPGE (2018-2019) Représentation des nombres 1 Codage de l'information Les ordinateurs comme d'autres appareils permettent de mémoriser 



[PDF] Représentation de linformation en binaire - IREM Clermont-Ferrand

La représentation des nombres à virgule communément utilisée en informatique (norme IEE 754) est une variante de la précédente qu'on appelle la représentation 



[PDF] Représentation des informations – Codage des nombres

La représentation des entiers peut être est réalisée sur 1 2 4 ou 8 octets soit 8 16 32 ou 64 bits voir plus Pour représenter les entiers positifs il 



[PDF] Chapitre 1 Codification et représentation des nombres Introduction

Dans les domaines de l'automatisme de l'électronique et de l'informatique nous utilisons la base 2 Tous les nombres s'écrivent avec deux chiffres uniquement 

:

IPT : Cours 2

La repr´esentation informatique des nombres

(3 ou 4 heures)-

MPSI-Cauchy : Prytan´ee National Militaire

Pascal Delahaye

27 septembre 2016

1 Codage en base 2

D´efinition 1 :Tout nombre positif s"´ecrit sous la forme : x=n+favec?n?N f?[0,1[ -nest appel´ee la partie enti`ere du nombrex -fest appel´ee la partie fractionnaire du nombrex

1.1 Codage binaire de la partie enti`ere

Exemple 1.Consid´erons le nombre entierx= 241

1.xse d´ecompose de la fa¸con suivante :x=2.102+4.101+1.100.

On dit alors quex= 241 est l"´ecriture d´ecimale ou l"´ecriture en base 10 dex.

2. Plus g´en´eralement, sibet un entier sup´erieur ou ´egal `a 2, en effectuant des divisions euclidiennes successives

dexparb, il est possible d"´ecrirexsous la forme : x=ap.bp+ap-1.bp-1+···+a1.b1+a0.b0avec (ap, ap-1, ..., a1, a0)?[[0,b-1]]p+1

On dit alors quex=

apap-1...a1a0(b)est l"´ecriture en basebdex.

Remarque1.Les bases les plus couramment utilis´ees sont : la base 10 (math´ematiques courantes), la base 2 oubase

binaire(informatique - codage dans la m´emoire de l"ordinateur) et la base 16ditebase hexad´ecimale(informatique -

codage logiciel). 1 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/ Proposition 1 :Codage binaire de la partie enti`ere

Soitn?N?.

Il existep?Net (ap, ap-1, ..., a1, a0)? {0,1}p+1tel que : n=ap.2p+ap-1.2p-1+···+a1.21+a0.20avecap= 1

Cette d´ecomposition est unique.

L"´ecrite densous la forme :n=

apap-1...a1a0(2)s"appelle l"´ecriture binaire (ou en base 2) den. Remarque2.Nous pouvons obtenir la valeur depgrˆace `a la formule :p=?lnn ln2?. M´ethode de d´ecomposition d"un entier en base 2

Les valeursa0, a1, ..., aps"obtiennent en effectuant les divisions euclidiennes des quotients successifs par 2.

Plus pr´ecis´ement,?k?[[0,p]] :

q -1=net?akest le reste q kest le quotientde la division euclidienne deqk-1par 2 La d´ecomposition dex= 25 en base 2 est donc :x=11001(2). V´erification :1.24+ 1.23+ 1.20= 16 + 8 + 1 = 25 =x.

D´ecomposition `a la main :

2 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/

Algorithme de d´ecomposition de n en base b :

# Initialisation des variables Q = n # Q permet de stocker la suite des quotients L = [] # La liste L contiendra les coefficients de n en base b # Boucle tant que "le quotient Q n"est pas nul" while Q != 0 :

L.append(Q%b) # on ajoute le reste `a la liste

Q = Q//b # on calcule le nouveau quotient

# On inverse la liste et on affiche le r´esultat

L.reverse()

print(L)

Remarque3.Quelques valeurs de r´ef´erence :

202122232425262728

1248163264128256

Codage / d´ecodage rapide

On peut utiliser le tableau pr´ec´edent pour :

1. obtenir plus rapidement la d´ecomposition en binaire d"un nombre.

Exemple :n= 14 = 8 + 6 = 8 + 4 + 2 = 1.23+ 1.22+ 1.21+ 0.20=

1110(2)

2. retrouver l"´ecriture d´ecimale d"un nombre donn´e en binaire.

Exemple :n=

10101(2)= 1 + 4 + 16 = 21

Exemple 2.(?)

1. D´eterminer l"´ecriture binaire des nombres entiers suivants :n1= 7,n2= 13,n3= 26.

2. D´eterminer les nombres entiers dont l"´ecriture binaire est :n1=

10101(2),n2=1010(2),n3=10011(2).

3. Combien de nombres entiers peut-on coder avec une ´ecriture binaire comportant au pluspchiffres?

Quel est le plus grand?

4. Comment reconnaˆıt-on un nombre impair `a partir de son ´ecriture binaire?

Remarque4.Sous Python, la transcription d"un entier en binaire se fait avec la fonctionbin().

En tapantbin(7)dans l"interpr´eteur (ou la console, c"est pareil!), on obtient le r´esultat :0b111que l"on interpr`ete

par : 7 =

111(2)

Exemple 3.

3 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/ Proposition 2 :Somme de deux entiers naturels en binaire

Le principe d"addition est le mˆeme que celui en base 10 avec une retenue de 1 `a propager sur le terme suivant

lorsqu"on effectue 1 + 1. Exemple 4.Effectuer la somme des trois entiers binaires suivants :n1=

10101(2),n2=1110(2),n3=10011(2)

1.2 Codage binaire de la partie fractionnaire

Exemple 5.Consid´erons le nombrex= 0.241

1.xse d´ecompose de la fa¸con suivante :x=2.10-1+4.10-2+1.10-3.

On dit alors quex= 0,241 est l"´ecriture d´ecimale ou l"´ecriture en base 10 dex.

2. Plus g´en´eralement, six?[0,1[ et sibet un entier sup´erieur ou ´egal `a 2, il est possible d"´ecrirexsous la forme :

x=a-1.b-1+a-2.b-2+···+a-q.b-q+R-q(x) avec?(a-1, a-2, ..., a-q)?[[0,b-1]]q

On dit alors quex= 0,

a-1a-2...a-q(b)est une approximation dexen baseb`ab-qpr`es. Proposition 3 :Codage binaire de la partie fractionnaire

Soitf?]0,1[.

Pour toutq?N?, il existe (a-1, ..., a-(q-1), a-q)? {0,1}qtel que :

Cette d´ecomposition est unique.

L"´ecriture defsous la forme :n= 0,

a-1...a-(q-1)a-q...s"appelle l"´ecriture binaire (ou en base 2) def.

Remarque5.Nous allons voir que, contrairement aux nombres d´ecimaux qui ontun d´eveloppement d´ecimal fini, le

codage en base 2 de la partie fractionnaire n"est pas toujours fini. M´ethode de d´ecomposition de la partie fractionnairefen base 2

On obtient les diff´erentes valeurs dea-k:

- en partant des valeurs?x=f k= 1 - en effectuant autant que n´ecessaire les trois op´erations suivantes : a <- Partie enti`ere de (2x) (a donne la valeur de a_{-k}) x <- 2x - a k <- k+1

Exemple 6.D´ecomposition binaire dex= 0.15 :

4 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/ On constate quex= 0,15 admet une ´ecriture binaire infinie : x= 0,

0010011001...(2)(on observe la p´eriodicit´e de1001(2)).

Algorithme de la d´ecomposition `a p coefficients de f en base b: # Initialisation des variables x = f # Variable pour stocker la suite des nombres n L = [] # Liste qui contiendra les coefficients de la d´ecomposition # Boucle for for k in range(1,p+1) : a = floor(2*x) # on calcule le nouveau coefficient binaire

L.append(a) # on le stocke dans la liste L

x = 2*x - a # on calcule le nouveau nombre x # R´esultat print(L) # Pour afficher le contenu de L

Remarque6.Nous venons de voir que certains nombres d´ecimaux admettent und´eveloppement en base 2 infini.

R´eciproquement, est-ce que les nombres admettant un d´eveloppement fini en base 2 peuvent avoir un d´eveloppement

d´ecimal infini?

Remarque7.Une autre proc´edure simple pour obtenir la d´ecomposition binaire def`a 2-qpr`es consiste `a d´ecomposer

en binaire?2qf?.

Remarque8.Quelques valeurs de r´ef´erence :

2-12-22-32-42-5

0.50.250.1250.06250.03125

Exemple 7.(?)

1. D´eterminer l"´ecriture binaire des parties fractionnaires suivantes :f1= 0.5,f2= 0.375,n3= 0.24.

2. D´eterminer les nombres entiers dont l"´ecriture binaire est :f1= 0.

101,f2= 0.1101,f3= 0.10011.

3. Combien de parties fractionnaires peut-on coder avec une ´ecriture binaire comportant au pluspchiffres?

Quelle est la plus petite?

5 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/ Corollaire 4 :Ecriture binaire d"un nombre d´ecimal positif Tout nombre d´ecimal positifxse d´ecompose de fa¸con unique sous la forme : x= (ap.2p+ap-1.2p-1+···+a1.21+a0.20) + (a-1.2-1+a-2.2-2+···+a-q.2-q) +R-q o`u :

1.p, q?N

2. les valeursaksont dans{0,1}avecap= 1

L"´ecriture dexsous la forme :n=

apap-1...a1a0, a-1...a-(q-1)a-q...(2)s"appelle l"´ecriture binaire dex. Remarque9.En prenantb?N?avecb≥2, `a la place de 2, on obtient une ´ecriture dexen baseb.

Exercice : 1

Donner la d´ecomposition binaire du nombrex= 17,2.

2 Codage informatique des nombres entiers

2.1 Les unit´es (ou mots) "m´emoire"

D´efinition 2 :bits et octets

•BIT

: Dans la m´emoire VIVE d"un ordinateur, unbit(contraction deBinary Digit) correspond `a une

case m´emoire qui peut uniquement contenir 0 ou 1. Cette contrainte est li´ee `a la technologie utilis´ee :

polarisation magn´etique, charge, courant, tension ´electrique,intensit´e lumineuse...

•OCTET

: Un groupement de 8 bits est appel´e unoctet.

Tous les caract`eres utilisables par l"ordinateur sont cod´es en binaire sur un octet (on a donc un total de

2

8= 256 caract`eres disponibles) : ce codage est appel´e le code ASCII.

Sous Python :

(a) on obtient le code ASCII du caract`ere & en tapant "ord('&')".

On obtient : 38.

(b) on obtient le caract`ere correspondant au code ASCII 255 entapant "chr(255)".

On obtient :"¨y".

le terme anglaisbyted´esigne un octet et non un bit.

2.2 Codage d"un entier

Le codage d"un entier par un ordinateur se fait en g´en´eral sur 32bits ou 64 bits. Pour gagner en g´en´eralit´e, nous consid´ererons que ce codage utiliseranbits.

Le premier bit (appel´e lebit fort) d´esigne le signe du nombre tandis que les (n-1) bits restant permettent de coder

la valeur absolue du nombre.

Proposition 5 :Avecnbits, il est possible de coder tous les entiers de l"intervalle [[-2n-1,2n-1-1]].

6 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/

Principe de codage des entiers

Lorsque les entiers sont cod´es sur 8 bits :

•Codage des entiers positifs

Le codage des entiers positifs est analogue au codage en binaire.

Exemple : pour le nombren= 77 =

1001101, le codage en machine est de la forme suivante :

0100 1101

•Codage des entiers n´egatifs

En revanche, pour coder des entiers strictement n´egatifs, on proc`ede ainsi :

1. On code la valeur absolue du nombre en binaire

2. On effectue un "compl´ement `a 2", c"est `a dire qu"on ´echangetous les 1 avec des 0 et inversement

3. On ajoute 1 au nombre binaire obtenu

Exemple : pour le nombren=-77, le codage en machine est de la forme suivante :

10110011

L"avantage de coder ainsi les entiers n´egatifs est qu"elle est compatible avec l"addition de deux entiers.

En particulier, lorsqu"on additionne un nombre et son oppos´e en binaire, on obtient bien 0 (`a v´erifier!).

Remarque10.On dit que les entiers sont cod´es en binairessurnbits sign´es en compl´ement `a 2.

Exemple 8.(?) Donner le codage machine sur un octet des entiers suivants :n1=±7,n2=±14 etn3=±42

Pour retrouver un nombre entier connaissant son codage binaire en machine :

On effectue la d´emarche inverse...

On identifie le signe de l"entier grˆace au premier bit.

1. Si le nombre est positif

: celui-ci est cod´e en binaire et son d´ecodage ne pose donc pas dedifficult´e.

2. Si le nombre est n´egatif

(a) On enl`eve "1" `a l"entier cod´e sur les (n-1) bits restants.

Pour cela, il suffit de mettre `a "0" le dernier bit ´egal `a "1" et de mettre `a "1" tous les bits pr´ec´edents.

(b) On effectue le compl´ement `a 2 en ´echangeant tous les "1" etles "0" (c) On obtient alors le codage binaire de la valeur absolue du nombre.

Exemple 9.(?) Pouvez-vous donner la valeur des entiers cod´es en machine de la fa¸con suivante :

1.n1= 0 001 1011 2.n2= 1 010 1011 3.n3= 1 110 1000

Remarque11.Lorsque les entiers sont cod´es sur 32 bits : - On peut repr´esenter en machine tous les entiers positifs de 0 `a 2

32-1-1 = 2147483647

- On peut repr´esenter en machine tous les entiers n´egatifs de-1 `a-232-1=-2147483648

Et si on codait les entiers sur 64 bits?....

3 Codage informatique des nombres r´eels

3.1 Codage des nombres flottants

En informatique, les nombres r´eels sont cod´es sous la forme de nombres d´ecimaux ditsnombres flottants.

Pour leur repr´esentation, les nombres flottants utilisent en g´en´eral 32 bits (simple pr´ecision) ou 64 bits (double

pr´ecision) : ils ne peuvent donc ni couvrir enti`erement l"ensembleinfini des nombres d´ecimaux ni `a fortiori celui

des nombres r´eels. Beaucoup de nombres r´eels (d´ecimaux ou pas) seront donc manipul´es par l"ordinateur sous une

7 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/ forme approximative.

Remarque12.Cependant, il existe certains logiciels ditsde calcul formel, capables de manipuler les nombres d´ecimaux

et mˆeme certains nombres rationnels sous leur forme exacte. Proposition 6 :Approximation binaire d"un r´eel

D"apr`es la partie I de ce cours, nous pouvons d´eduire que tout nombre r´eelxnon nul peut s"´ecrire sous la forme :

x=±n (1.2p+ap-1.2p-1+···+a0.20)+f

Ou encore :

x=. ±2p(1 +a-(1-p).2-1+···+a-(q-p).2-q)????

Ainsi, pour coder le nombre r´eelx, on d´ecide de coder le nombre ˜x=±2p(1 +a-(1-p).2-1+···+a-(q-p).2-q) qui

est le nombre flottant correspondant `ax. Ce nombre ˜xest alors une approximation dex`a 2-(q-p)pr`es.

Le codage de ˜xse d´ecompose en 3 ´etapes :

1. le signe

2. l"exposantp

3. le nombrem=ap-1.2-1+···+a-(q-p).2-q

Inutile en effet de coder le "1" puisque celui-ci est syst´ematiquement pr´esent (on dit que ce 1 correspond `a unbit cach´e

que l"on ajoute naturellement `a la formule permettant de reconstituer le nombre dans le syst`eme d´ecimal).

Principe de codage des nombres flottants sur 32 bits Ce codage est impos´e par la norme internationale IEEE754-1985. On commence par exprimer le nombrex`a coder sous la forme approximative : ˜x=±(1 +a-1.2-1+···+a-q.2-q)2pavec?q= 23 p?[[-126,127]]

1. Le premier bit repr´esente le signe s du nombre :

?0 si le nombre est positif1 si celui-ci est n´egatif.

2. Les 8 bits suivants codent l"exposantp.

Le codage sur 8 bits donnant un entiers positife?[[0,28-1 = 255]], on convient alors quep=e-127. Les cas o`ue= 0 oue= 255 correspondent autre chose que des nombres (HP). Nous consid`ererons donc quee?[[1,254]] et ainsi, nous pouvons coder tous les exposantspcompris entre-126 et 127. Les nombres flottants cod´es de cette fa¸con sont ditsnormalis´es.

3. Les 23 derniers bits codent la partiem=a-1.2-1+···+a-q.2-qen base 2, appel´ee la mantisse dex.

Le nombre cod´e ˜xest alors donn´e par la formule :

˜x= (-1)s.(1 +m).2e-127

Ce codage assez complexe a ´et´e choisi pour optimiser la vitesse decalcul et non pour faciliter la lecture humaine...

8 Cours MPSI-2016/2017 Repr´esentation informatique des nombres http://pascal.delahaye1.free.fr/

La norme IEEE754

Remarque13.

1. Le plus grand nombre flottant

normalis´e est donc : (a) Avec 32 bits : (1+(2 -1+2-2+···+2-23))2127= (2-2-23).2127= 3.4028234663852885981170418348451692544.1038 (b) Et avec 64 bits?

2. Le plus petit nombre flottant

positif non nul normalis´e est donc : (a) Avec 32 bits : 2 -126= 1.175494350822287507968736537222245677818665556772087521508.10-38 (b) Et avec 64 bits?

3. La plus grande pr´ecision

que l"on peut esp´erer obtenir pour un r´eelx≥1 : (a) Avec 32 bits?

Un tel r´eel s"´ecritx= 2p(1 +···+a-232-23) +Rp-23avec le resteRp-23<2p-23qui est n´eglig´e par

l"ordinateur. Dans le meilleur des cas (cad lorsquep= 0), la partie dexinf´erieure `a 2-23≈1,2.10-7est

n´eglig´ee. (b) Et avec 64 bits? C"est la partie dexinf´erieure `a 2-52≈2,210-16qui est n´eglig´ee.

Exemple 10.

1. Que vaut le nombre flottant cod´e par :x= 0 01111100 01000000000000000000000 ?

(a) Le bit correspondant au signe est nul, et donc il s"agit d"un nombre positif, (b) L"exposant est 0.27+ 1.26+ 1.25+ 1.24+ 1.23+ 1.22+ 0.21+ 0.20-127 = 124-127 =-3, (c) La partie significative est 1 + 0.2-1+ 1.2-2= 1,25. Le nombre repr´esent´e est doncx= +1.25×2-3= +0.15625.

2. Comment est cod´e en machine le nombrex= 25,375 ?

(a) On d´ecompose en binaire 25 et 0,375 : cela nous donne : x= 1.24+ 1.23+ 0.22+ 0.21+ 1.20+ 0.2-1+ 1.2-2+ 1.2-3 (b) On exprimexsous la forme adapt´ee : x= +(1 + 1.2-1+ 0.2-2+ 0.2-3+ 1.2-4+ 0.2-5+ 1.2-6+ 1.2-7)24 (c) On d´etermine les diff´erents ´elements du codage binaire : i. Le signe : 0 ii. L"exposant : 4 + 127 = 131 =

10000011(2)

iii. La mantisse :

10010110000000000000000(2)(on ne tient pas compte du bit cach´e!)

Finalement :

x= 0 10000011 10010110000000000000000quotesdbs_dbs41.pdfusesText_41
[PDF] représentation des nombres maternelle

[PDF] mantisse exposant binaire

[PDF] exposant biaisé

[PDF] profondeur de la nappe albienne algerie

[PDF] reserve d eau en algerie

[PDF] nappe de l'albien algérie

[PDF] ressources en eau en algerie

[PDF] l'eau en algérie pdf

[PDF] problématique de l'eau en algérie

[PDF] la gestion de l'eau en algerie

[PDF] carte nappes phréatiques algerie

[PDF] cours de forage d'eau

[PDF] equipement de forage d'eau pdf

[PDF] nombres relatifs définition

[PDF] realisation d'un forage d'eau