Chapitre 4 la représentation des nombres. Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers.

Slides:



Advertisements
Présentations similaires
Le codage des nombres en informatique
Advertisements

Le codage des nombres en informatique
Représentation des entiers
Codage de l’information
Chapitre 4 La représentation des nombres.
Chapitre 4b La représentation des nombres.
CHAPITRE 5 Les nombres entiers 1. Les entiers 2 Les entiers signés représentations pour le 0.
1 Chapitre 2 La numération binaire. 2 Chapitre 2 : La numération binaire Introduction 1 - Le système binaire 2 - La conversion des nombres entiers 2.1.
CRYPTOGRAPHIE GENERALE CRYPTOGRAPHIE
Information, Calcul, Communication
Aide à la simulation avec un tableur et au traitement des données
Suites ordonnées ou mettre de l’ordre
Par Sacha (11 ans - 6ème) - Le 9 mai 2017
Exercice 8 : Déterminez l’algorithme permettant à votre calculatrice de donner les racines de n’importe quel polynôme de degré 2.
Pierre Joli Cours de Mathématique Pierre Joli
Architecture de machines Codage des informations
Représentation des nombres réels
Quelques Termes INFORMATIQUE ? ORDINATEUR ( Système Informatique)?
Information, Calcul, Communication
CHAPITRE 3 Calcul numérique et puissances
Algorithmiques Abdelbasset KABOU
Tiré de: J.-M. Muller, Arithmétique des ordinateurs, Masson, 1989.
Information, Calcul, Communication
Nombres entiers non signés/signés
Cours 2 : Représentation des nombres réels
Opérateurs Toute donnée informatique est stockée en mémoire sous la forme d'une combinaison de bits (mot machine). Les opérateurs bits permettent de modifier.
Représentation de l’information en binaire:
TP N°3 : Adressage IP Les classes IP
La courbe ci-contre représente
Opérations sur les nombres relatifs
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Représentation de l'information en binaire:
Les opérations sur les nombres
Précision d'une mesure et chiffres significatifs
+ et – sur les relatifs Menu général.
Algorithme de Dichotomie
Chapitre 2 Vecteurs et Repérage dans le plan
Activités mentales rapides
Algorithme de Dichotomie
Calcul littéral 2.
Tolérances de fabrication et ajustements Construction mécanique Tolérances de fabricationAjustementsTolérances ISO.
Codification et Représentation de l’information
Codage et Représentation de l’Information
Divisions et opérations avec des nombres en écriture fractionnaire
4.2 Estimation d’une moyenne
Le système binaire Table des matières : -Présentation du binaire
Les fractions.
Formules de calculs et Fonctions. Structure des formules de calcul Commencez toujours votre calcul par le signe =, ensuite sans laisser d’espaces, placez.
À l’intérieur de l’ordinateur
Calcul Scientifique Initiation à SCILB
Exercice 4 : Soit la fonction f définie sur un ensemble Df
CHAPITRE 3 Calcul numérique et puissances
Révision du format des données
B.Shishedjiev - Informatique
Factorisation Martin Roy Juin 2011.
Sylvie DELAËT 2002 Architecture des machines Bienvenus en Amphi d’Architecture des Machines.
La notation scientifique Source : J.F.FOURNEL Adapté : V.OVIEVE.
Compléments sur Python (EduPython)
1 Architecture des ordinateurs Généralités. 2 Définition Informatique = Information + Automatique Ce terme a été introduit en France. Il est très répandu.
Recherche de zero d'une fonction MARMAD ANAS MPSI -2.
Flowchart Itération Cours 04.
Chapitre 2 : Représentation de l’information dans la machine Introduction Représentation des nombres négatifs –Signe / valeur absolue –Complément à 1 –Complément.
Chapitre 10 : Division décimale
Sous-échantillonner le signal audio pour compresser
4.9 La priorité des opérations avec des nombres décimaux
Système de Numération : Décimal, Binaire, Octal et Hexadécimal
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
S ECTION : TS BDD T ITRE DE COURS N1: P RÉSENTATION DE L ’ ARCHITECTURE GÉNÉRALE D ’ UN ORDINATEUR Objectif général: À la fin de cours chaque stagiaire.
LES NOMBRES ENTIERS.
Transcription de la présentation:

Chapitre 4 la représentation des nombres

Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers négatifs 2.1 – Méthode qui ne marche pas #1 2.2 – Méthode qui ne marche pas #2 2.3 – Méthode qui marche 3 - La représentation des nombres fractionnaires 3.1 – Les nombres en virgule fixe 3.2 – Les nombres en virgule flottante

1.1 – Notion de mot Les systèmes informatiques manipulent des bits et travaillent sur des paquets de longueur fixe que l’on appelle mot. La taille d'un mot dépend de l'architecture de la machine (8, 16, 32, 64 bits)... ou plus Les processeurs actuels (Intel Core 2 en 2008) utilisent des mots de 64 bits. Le mot se décline en demi-mots, double mots, gros mots...

Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers négatifs 2.1 – Méthode qui ne marche pas #1 2.2 – Méthode qui ne marche pas #2 2.3 – Méthode qui marche 3 - La représentation des nombres fractionnaires 3.1 – Les nombres en virgule fixe 3.2 – Les nombres en virgule flottante

2 – Représentation des entiers négatifs Vous savez maintenant comment représenter une valeur avec uniquement des 0 et des 1 Par exemple (12) 10 s'écrit (1.100) 2... mais comment faire pour représenter (-12) 10 ? Soyons clair, on vas laisser l'écriture ( 1.100) 2 aux blondes...

2.1 – Les entiers signés (Dit méthode qui marche pas #1) La solution la plus simple pour représenter le signe consiste à réserver un bit pour ce signe, les autres bits représentants la valeur absolue du nombre. Par convention, on utilisera le premier bit (celui de gauche) pour représenter le signe : ● 0 pour un nombre positif ● 1 pour un nombre négatif. On parle de données signées quand on utilise cette convention. Exemple: ( ) 2 -> (27) 10 ( ) 2 -> (-27) 10 Avec cette méthode, on peut représenter sur 8 bits l’intervalle de nombres entiers : [-( ), ( )] soit [-127, +127] Plus généralement, sur n bits, on aura l’intervalle [-(2 n-1 - 1), (2 n-1 - 1)]

2.1 – Les entiers signés (Dit méthode qui marche pas #1) Si on fait des calculs avec cette méthode : Par exemple 7 – (-5) Pour économiser de la place dans les circuits, on ne fera pas 7 – 5 mais 7 + (-5)... Mathématiquement c'est la même chose, mais électroniquement, cela évite d'avoir un circuit dédié à la soustraction : C'est une addition dans les deux cas Faux ! Voilà pourquoi on n'utilise pas cette méthode çi.

2.2 – Le complément restreint (Dit méthode qui marche pas #2) Une autre méthode pour représenter un nombre négatif consiste à inverser tout les bits. A nouveau, on utilise le bit de gauche (dit bit de poids fort) pour représenter le signe : ● 0 pour un nombre positif ● 1 pour un nombre négatif. Pour représenter -27, par exemple: Si le nombre commence par un 0 : Si le nombre commence par un 1 : C'est un nombre positif Il 'suffit' de le convertir en décimal pour en connaître la valeur C'est un nombre négatif Pour en connaître la valeur il faut : Calculer le complément (inverser tout les bits) Convertir en décimal la valeur absolue

2.2 – Le complément restreint (Dit méthode qui marche pas #2) Exercice : Déchiffrer les nombres suivants > ? > ? > ? représentations différentes pour la même valeur... Faux !

2.3 – Le complément vrai Une troisième méthode pour représenter un nombre négatif consiste à calculer le complément restreint plus 1. C'est ce qu'on appelle le complément vrai. Pour représenter -27, par exemple: Si le nombre commence par un 0 : Si le nombre commence par un 1 : C'est un nombre positif Il 'suffit' de le convertir en décimal pour en connaître la valeur C'est un nombre négatif Pour en connaître la valeur il faut : Calculer le complément (inverser tout les bits) Convertir en décimal la valeur absolue <- Complément restreint Soustraire <- Complément vrai

2.3 – Le complément vrai Pour un nombre de 8 bits : Le plus grand nombre positif est Soit 2 7 – 1 Soit 127 Le plus petit négatif est Soit -2 7 Soit -128 On peut en déduire une formule générale, fonction du nombre de bits : Pour n bits, on pourra coder en complément vrai, les entiers de l’intervalle [-2 (n-1), 2 (n-1) - 1]

2.3 – Le complément vrai 1er cas : Pas de débordement, Résultat négatif Exemple : = Négatif, donc : 1° : |-64| 10 -> ? ° : 1/x ° : Positif donc : 1° : > ? Vérification Commence par un 1 => Négatif °: °: 1/x °: x 2 -> x = 48 OK

2.3 – Le complément vrai 2eme cas : Débordement, Résultat positif Exemple : = °: > ? 2 2°: 1/x 3°: Comme on travaille sur 8 bits... On ne garde que 8 bits Vérification Commence par un 0 => Positif = 48 OK

2.3 – Le complément vrai 3eme cas : Débordement, Résultat négatif Exemple : = Plutôt que de recalculer, on remonte de 2 pages... Plutôt que de recalculer, on remonte d'1 page... On ne garde que les 8 bits de droite Résultat : Vérification : Le résultat commence par un 1; donc il est négatif Ça c'est bon ° : ° : 1/x ° : ? 2 -> ? = 80 Ça aussi ! OK

Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers négatifs 2.1 – Méthode qui ne marche pas #1 2.2 – Méthode qui ne marche pas #2 2.3 – Méthode qui marche 3 - La représentation des nombres fractionnaires 3.1 – Les nombres en virgule fixe 3.2 – Les nombres en virgule flottante

3.1 – Les nombres en virgule fixe Un nombre en virgule fixe est un nombre (signé ou non) enregistré comme un entier. Un tel nombre est dit en virgule fixe car le soin de placer la virgule revient au programmeur (on parle de virgule virtuelle). C’est à dire que la virgule n’apparaît pas dans le stockage du nombre. C'est dans ce cas à l'utilisateur (le programmeur) de créer ce décalage dans le programme qui utilisera ces nombres. Un peu comme si l'on stockait des prix en centimes et qu'on les affichait en euros : On les divise par 100 avant de les afficher. La représentation en virgule fixe est un dinosaure informatique qui ne se justifiait que par le fait de gagner un peu de place pour le stockage de la virgule On utilise de préférence la représentation en virgule flottante

Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers négatifs 2.1 – Méthode qui ne marche pas #1 2.2 – Méthode qui ne marche pas #2 2.3 – Méthode qui marche 3 - La représentation des nombres fractionnaires 3.1 – Les nombres en virgule fixe 3.2 – Les nombres en virgule flottante

Il faut trouver une notation qui permette de stocker touts les nombres décimaux, tout en optimisant la place. La manière la plus évidente, et la plus concise, pour représenter un nombre est d’employer une mantisse et un exposant signés : Exemples : -123,45= -1,2345 * , = 6,78 * Avec une telle écriture, on à 4 informations à stocker pour représenter n'importe quel nombre : La mantisse Le signe de la mantisse L'exposant Le signe de l'exposant

3.2 – Les nombres en virgule flottante On normalise l'écriture : 1 - On remplace «* 10 x » par «Ex» -123,45= -1,2345 * 10 2 = -1,2345E2 2 - On normalise la mantisse pour qu'elle soit de forme 0,x avec x un nombre != 0 0, = 6,78 * = 6,78E ,45= -1,2345 * 10 2 = -1,2345E2 = 0, ,78 * = 6,78E-6 = = -0,12345E3 0,678E-5 3 – Pour gagner de la place (et ne plus avoir a stocker le signe de l'exposant) : On décale tout les exposants de ,45 = -0,12345E3 -0,12345E67 0, = 0,678E-5 0,678E59

3.2 – Les nombres en virgule flottante Le coup du décalage de 64 de l'exposant est une invention de l'IEEE (Institute of Electronical and Electronics Engineer). Une association américaine de normalisation. Ce même IEEE donne les formats de représentations de nombres en virgule flottante suivants : La simple précision (sur 32 bits) : 7 bits 1 bit 24 bits Exposant (E : 7 bits ; S : 1 bit ; M : 24 bits) La double précision (64 bits ) La précision étendue (80 bits) SigneMantisse (E : 11 bits ; S : 1 bit ; M : 52 bits) (E : 15 bits ; S : 1 bit ; M : 64 bits)

3.2 – Les nombres en virgule flottante Représenter un nombre en virgule flottante (5 étapes) Exemple (Représentation en norme IEEE simple précision) 10,5 (10) Étape 1 : Convertir en hexadécimal (Eh oui, la norme IEEE utilise l'hexa) 10,5 (10) A,8 (16) Étape 2 : Normaliser A,8 0,A8E1 Étape 3 : Décaler l'exposant de 64 0,A8E1 0,A8E65 Étape 4 : Remplir les blancs 4.1 : 7 bits d'exposant(65) 10 -> (?) : 1 bit de signe : 24 bits de mantisse On complète avec des 0 Étape 2 : Normaliser

3.2 – Les nombres en virgule flottante Représenter un nombre en virgule flottante (5 étapes) Étape 5 : « Compacter » en hexadécimal Exemple (Représentation en norme IEEE simple précision) (suite) 10,5 (10) 8 2 A A (16) Note : Entre l'étape 3 et l'étape 5, on retrouve la forme hexadécimale de la mantisse (A8). On peut gagner du temps en ne la convertissant pas en binaire à l'étape 4

3.2 – Les nombres en virgule flottante Retrouver la valeur décimale d’un nombre représenté en virgule flottante Exemple : (16) Étape 1 : Convertir en binaire Étape 2 : Appliquer le masque IEEE Exposant = Signe = Mantisse = (2) 66 (10) = = (2 ) = 1 (16) 0110 (2 ) = 6 (16) 0011 (2 ) = 3 (16) 1000 (2 ) = 8 (16) 0101 (2 ) = 5 (16) 0010 (2 ) = 2 (16) +0,163852E66

3.2 – Les nombres en virgule flottante Retrouver la valeur décimale d’un nombre représenté en virgule flottante Exemple : (16) Étape 3 : Décaler de ,163852E66 +0,163852E2 = 16,3852 (16) Étape 4 : Convertir en décimal 16,3852 (16) 1* *16 0 = 22 3* * * *16 -4 = 0, = 22,22 (10) ● Les nombres en virgules flottantes demandent plus de calcul que les autres formes de stockage ● Les nombres en virgules flottantes utilisent beaucoup de place, même pour des petites valeurs ● Les nombres en virgules flottantes stockent souvent des valeurs approximatives