Représentation de nombres entiers et à virgule

Slides:



Advertisements
Présentations similaires
Représentation de nombres entiers et à virgule
Advertisements

On a vu précédemment qu’il existait deux domaines en électronique L’analogique Et le numérique En analogique on a vu que le signal électrique représenté.
Module 1 : Généralités sur les systèmes informatiques
CHAftITREI ARCHITECTURE de BASE. Modèle de Von Neumann Langage d’assemblage1 John Von Neumann est à l'origine d'un modèle de machine universelle de traitement.
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
Chapitre 3 La numération octale et hexadécimale. Chapitre 3 : La numération octale et hexadécimale 1 - Introduction 2 - Le système Octal Définition.
LE SUPPORT D'ORDINATEUR PORTABLE. Problématique Oh, j'ai chaud aux jambes ! Et moi, j'ai chaud à mon processeur !
Enseigner l’arithmétique en série L Réflexions sur les contenus et les exigences.
 Conversion  Analogique  Numérique  Un signal analogique est un ensemble continu d’informations. Ex : une grandeur physique comme la tension électrique.
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.
Chiffres significatifs, incertitudes et précision des instruments Laboratoire, A-08.
A1 : SYSTEMES DE NUMÉRATION ET CODES. PLAN A- Systèmes de numération 1- Système décimal 2- Système binaire 3- Système hexadécimal 4- Conversion des nombres.
1 Les circuits combinatoires Chapitre Les Circuits combinatoires Un circuit combinatoire est un circuit numérique dont les sorties dépendent uniquement.
Département Informatique Représentation de l’information Laurent JEANPIERRE D’après le cours de Pascal FOUGERAY IUT de CAEN – Campus 3.
1er partie : Les lois du courant continu
La technologie des mémoires
CEMTEC Comment scénariser l’éclairage d’un escalier ?
Valeurs de toutes les différences observables sous H0
Information, Calcul, Communication
Représentation des nombres réels
Information, Calcul, Communication
La représentation des atomes
Algorithme et programmation
Nombres entiers non signés/signés
Représentation de l’information en binaire:
1.3 COORDONNÉES DES POINTS
Lois fondamentales de l'algèbre de Boole
Reprise du cours ( ) Aujourd’hui :
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Représentation de l'information en binaire:
Plan du cours Introduction : création de circuits
Les composants informatiques
la conversion des nombres décimaux
Activités algorithmiques
Fonctions logiques et algèbre booléenne
Comment bien communiquer avec un diaporama
Codification et Représentation de l’information
Codage et Représentation de l’Information
Approximation de Pi par la méthode de Monte Carlo
Représentation binaire
TD2 Logique combinatoire F. Touchard Architecture des ordinateurs TD.
Stabilité des porteurs horizontaux (Poutres)
Le système binaire Table des matières : -Présentation du binaire
Création Et Modification De La Structure De La Base De Données
Cours N°10: Algorithmiques Tableaux - Matrices
Comment faire une recherche info-documentaire ?
CRITERES DE QUALITE 1) PRECISION 2) RAPIDITE 3) AMORTISSEMENT
Révision du format des données
NUMERATION et REPRESENTATION DES NOMBRES
B.Shishedjiev - Informatique
Lois de Probabilité Discrètes
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Codage de l’information
Sylvie DELAËT 2002 Architecture des machines Bienvenus en Amphi d’Architecture des Machines.
Le programme informatique L’algorithme Le codage
La notation scientifique Source : J.F.FOURNEL Adapté : V.OVIEVE.
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.
Opérateurs et fonctions arithmétiques Opérateurs de relation Opérateurs logiques Cours 02.
Les différents modes de démarrage de Windows
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.
Introduction à l'Informatique
STSWEB Rattacher Services et ARE Gestion des pondérations
Ahmed katif La lumière et les couleurs La dispersion de la lumière -l’arc- en- ciel est un phénomène naturel qu’on observe parfois dans le ciel ? Comment.
Python Nicolas THIBAULT
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
CE1 Module 4 Séance 1
Les données structurées et leur traitement
Traitement de TEXTE 2 Stage – Semaine 3.
POURQUOI ? SIMPLIFIER GESTION SOUPLE DÉMATÉRIALISER
Séquence 1:Analyse du système d’information comptable
Transcription de la présentation:

Représentation de nombres entiers et à virgule T.Camier

I. BienvenuE dans un monde binaire Représenter des nombres entiers et des nombres à virgule I. BienvenuE dans un monde binaire T.CAMIER - ISN Pays de Condé

1. Les cartes perforées http://www.ina.fr/video/CAF97059686 Carte perforée d’un métier à tisser 1. Les cartes perforées http://www.ina.fr/video/CAF97059686 http://www.youtube.com/watch?v=MDQHE0W-qHs BILAN : chaque case ne peut avoir que 2 états : non coché ou coché (TROU). ATTENTION : la technique est binaire (Plein ou Trou), mais l’info n’est pas encore stockée de façon binaire mais de façon décimale. Exemple : 13;666;69

Que de place perdue! Un mélange binaire-décimal peu judicieux: Exemple on souhaite stocker un âge humain. Or il faut réserver 3 chiffres dans cette carte (3 colonnes), soit 3*10=30 infos binaires réservées, 3 étant obligatoirement utilisées, les 27 autres sont de la place perdue ! Un stockage 100% binaire sur 7 bits (dont on utilise 1 à 7 bits) permet de stocker des âges jusque 127 ans. Si on souhaite plus de marge, avec un bit de plus, on peut stocker des âges jusque 255 ans ! Ce problème sera revu avec la notion de compression de données

Bilan Mécaniquement, il est aisé de stocker une info binaire. Et électriquement ?

2. Le transistor Au final, on a une info binaire pour Vce : Rien (0) ou quelque chose (1) Il existe des transistors dits à grille flottante : cette grille a pour particularité physique de conserver une charge d'électrons durant de très longues périodes (les fabricants ont estimé cette durée à cent ans !) http://www.01net.com/editorial/294823/comment-ca-marche-la-memoire-flash/

3. Les disques optiques Le retour de la carte perforée à lecture optique ! La question au prof de physique : pourquoi être passé du laser rouge au blu-ray ? Et ensuite, que faire d’encore mieux ?

4. Bilan Quantité élémentaire d’information : le bit (BInary digiT). Deux valeurs : 0 ou 1 Tout peux se ramener à un codage binaire. Selon le contexte, peuvent correspondre à : nombres 0 ou 1 (numérique), faux ou vrai (logique), ouvert ou fermé (interrupteur) nord ou sud (magnétique), noir ou blanc (optique), absence ou présence de trou (carte perforée), etc.

5. ExerciceS On imagine un ordinateur dont la mémoire est constituée de quatre circuits mémoire un bit. Quel est le nombre d’états possibles de la mémoire de cet ordinateur ? Même question pour un ordinateur dont la mémoire est constituée de huit circuits mémoire un bit. (un ordinateur 8 bits) On veut coder chacune des sept couleurs de l’arc-en-ciel par un binaire à n bits, les sept mots devant être distincts (et de même longueur). Quelle est la longueur minimale de n que nous devons prendre ?

II. Passer du monde décimal au monde binaire

1) La numération binaire Il faut connaître le tableau suivant (pour un octet, c’est-à-dire 8 bits) Exercice : convertir en décimal les octets (donnés sous forme binaire) suivants 10101010 01010101 Quelle valeur décimale maximale peut-on stocker sur 1 octet ? Position 7 6 5 4 3 2 1 Poids en base 2 27 26 25 24 23 22 21 20 Equivalence en base 10

2) Conversion décimal vers binaire Exercice En utilisant les 2 techniques, coder votre numéro de téléphone sur 5 octets (1 octet par doublette, par exemple « 06 ») Était-il indispensable d’utiliser un octet par doublette ?

3) Conversion binaire vers décimal Exemple : 11110010000 est une date fondamentale pour l’informatique (Voir Turing) Quelle est cette date en décimal ?

III. Ce que l’on peut faire avec du binaire

1) On peut faire… des calculs Faire l’addition binaire de 0111 0110 et 1010 1101 0111 0110 + 1010 1101 ------------------ = Convertir en décimal chacun des membres et votre résultat. Vérifier que la somme est correcte.

2) On peut faire… de La logique Sur une alarme, j’ai : Un bouton off/on (0 ou 1) Un détecteur de présence (0 quand personne et 1 quand détection) Une sirène. Quand elle reçoit 0, elle ne fait rien. Quand elle reçoit 1, elle hurle. Identifier les entrées et sorties vu du point de vue de ma centrale d’alarme Quelle logique doit adopter mon alarme pour fonctionner correctement ?

Les tables de vérité ET OU a b a.b a b a+b a 𝒂 NON

Bilan

Réalisation concrète exemple de circuit intégré 7400 contenant 4 portes NON-ET (NAND). Les deux autres broches servent à l'alimentation 0V / 5V.

IV. Comment afficher un binaire de façon pratique ?

1) La base 16 ? Une solution Pourquoi ? Parce que 161 = 24. Donc on va réussir à afficher en base 16 un quarté (c’est-à-dire 4 octets). On appelle la base 16, la base hexadécimale

Valeur décimale Valeur binaire Code hexadécimal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Valeur décimale Valeur binaire Code hexadécimal 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111

2nd caractère ou chiffre Valeur décimale Valeur binaire Code hexadécimal 0000 1° caractère ou chiffre 1 0001 2nd caractère ou chiffre 2 0010 3° caractère ou chiffre 3 0011 … 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111

Valeur décimale Valeur binaire Code hexadécimal 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111

Valeur décimale Valeur binaire Code hexadécimal 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 Un autre « chiffre »(n°11) 11 1011 Un autre « chiffre » (n°12) 12 1100 … 13 1101 14 1110 15 1111

Valeur décimale Valeur binaire Code hexadécimal 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F

2) Conversion hexadécimal vers décimal Il faut connaître le tableau suivant Position 3 2 1 Poids en base 16 163 162 161 160 Equivalence en base 10

Exemples Exercices : Convertir en décimal 23base 16 A2base 16 DEbase 16 Quelle valeur décimale maximale peut-on donner en utilisant 2 caractères héxadécimaux ?

3) Conversion hexadécimal vers binaire Chaque « chiffre » du nombre hexadécimal est converti en quarté (4 bits) Voir tableau dans les pages précédentes Exemples : 5base 16 = binaire Bbase 16 = binaire 5Bbase 16 = binaire ACbase 16 = binaire

4) Conversion binaire vers hexadécimal Il faut découper le binaire en quarté. Ensuite, il faut convertir chaque quarté en un « chiffre » héxédécimal. Voir tableau dans les pages précédentes Exemples : 0110binaire = base 16 1010binaire = base 16 0110 1010binaire = base 16 1111 1111binaire = base 16

5) Application codage des couleurs dans une page web La synthèse additive des couleurs http://www.ostralo.net/3_animations/swf/synthese_couleurs.swf A savoir (physique 1S) A partir de 3 couleurs (RGB) on peut synthétiser n’importe quelle couleur Chaque source primaire de couleur est utilisée de 0% à 100% 0% sera codé 0000 0000binaire cad 00hexadécimal 100% sera codé 1111 1111binaire cad FFhexadécimal

(le # précise que la donnée qui suit est en hexadécimal) Exemples : Pour coder une couleur dans une page web, on utilise le codage hexadécimal du type : #rrggbb (le # précise que la donnée qui suit est en hexadécimal) Exemples : je veux générer une couleur 75% rouge et 20% bleu (voir rendu sur animation). Quel code mettre dans la page web ? je veux générer une couleur 25% rouge et 100% vert (voir rendu sur animation). Quel code mettre dans la page web ?

V. La représentation des entiers relatifs

1) Quelle méthode mettre en place ? On a vu précédemment comment représenter des entiers naturel en binaire. Les capacités : sur 8 bits, combien peut-on représenter de nombre différents ? Idem sur 16 bits Idem sur 32 bits Une idée pour les entiers relatifs ? (réflexion sur 16 bits)

Idée : dédier un bit au signe Positif : 0 Négatif : 1 Combien de valeur de valeur peut-on représenter ? Mini : -111 1111 1111 1111, c’est-à-dire en décimal ? Maxi : +111 1111 1111 1111, c’est-à-dire en décimal ? Quel serait l’inconvénient majeur (et rédhibitoire) de ce système.

2) La méthode retenue : notation en complément à deux De 0 à 32 767, pas de problème, on stocke les entiers naturels De 32 768 à 65 535, on va stocker les nombres négatifs

Donner les représentations binaires sur 8 bits de : 128 - 128 127 - 127 Mêmes questions, mais sur 16 bits Pour d’autres, exemples, voir Spé ISN en TS de Dowek au CDI

VI. La représentation des nombres à virgule

Dowek p.108 𝑛𝑜𝑚𝑏𝑟𝑒=𝑠 𝑚. 2 𝑛 s : signe m : mantisse n : exposant

11000100011010010011110000111000 00000000000000000000000000000000 Quelle valeur en décimal ?

11000100011010010011110000111000 00000000000000000000000000000000 Bit de signe = 1, donc nombre négatif

11000100011010010011110000111000 00000000000000000000000000000000 Exposant : 100 0100 0110 On est sur n = … bits Soit en décimal : p = ?? Donc au final, on peut trouver l’entier relatif : relatif = p - 1023 Ici, exposant =

11000100011010010011110000111000 00000000000000000000000000000000 Mantisse : 1001001111000011100000000000000000000000000000000000 m = 1 + 1 2 1 + 0 + 0 + 1 2 4 + 0 + 0 + 1 2 7 + 1 2 8 + 1 2 9 + 1 2 10 + 0 + 0 + 0 + 0 + 1 2 15 + 1 2 16 + 1 2 17 m = (217 + 216 + 0 + 0 + 213 + 0 + 0 + 210 + 29 + 28 + 27 + 0 + 0 + 0 + 0 + 22 + 21 + 1 ) / 217 m = 206 727 / 131 072 (qui est bien compris entre 1 et strictement 2) Remarque : 1 est un bit implicite

Bilan On a donc stocké : − 206 727 131 072 . 2 71 Qui permet de retenir la valeur - 3,72406 . 10 21 ! Bienvenue dans le monde la norme IEEE 754 de 1985

VII. Conséquence sur les déclarations de variables Quand on veut stocker une valeur, par exemple votre note en ISN au bac, il faut réserver un nombre d’octet donné et spécifier au logiciel le type

Exemple : variable sur un serveur sql (pour web) Source : http://docs.postgresql.fr/7.4/datatype.html#DATATYPE-NUMERIC

Bref, il faut se méfier du typage Il faut bien entendu préciser le type : un « integer » et un « real » réservent tous deux 4 octets. Si on voit 4 octets, on ne peut pas savoir quel type de données il y a. Bref, il faut se méfier du typage Exemple : cahier texte qui utilise un variable n pour chaque devoir donné. Si n est un smallint, dès que quelqu’un donnera le devoir numéro 32 768, le logiciel plantera ! Solution : Prendre un integer (suffisant ? : à réfléchir) ou un bigserial (mais qui occupera 8 octet sur le serveur… et qui coûtera donc plus !) Exemple de bug le 28 mars 2012 http://www.etab.ac-caen.fr/bsauveur/cahier_de_texte/correctifs.html