©Pierre Marchand, 2001 32 Unité 2: Représentation interne des informations Objectifs: À la fin de cette unité, -vous saurez comment les caractères et les.

Slides:



Advertisements
Présentations similaires
L’électronique numérique
Advertisements

Architecture de machines Codage des informations
Algorithmique Résume.
Le codage de l ’information
Architecture des Ordinateurs
Introduction : Compilation et Traduction
Dossier TICE Excel.
Présentation Unité de codage
Le binaire L’historique.
Le codage des nombres en informatique
L’ordinateur Aspect théorique
Les bases de l’Algorithmique
Partie 1 Etude de l'existant
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Nature, numération, code
Le Langage Binaire.
Le codage des nombres en informatique
Chapitre 1 Le Sens des nombres
Types de données fondamentaux
Mise en forme en Mathématiques
Informatique, Ordinateur & Programme ...
Le Système Binaire Introduction Les bases à connaitre Conversions
Le calcul mental _ février 2010 ARGENTEUIL SUD
L’écriture des grands nombres: les puissances de 10
Un survol du language C.
Les expressions algébriques
Codage des nombres en informatique : le système binaire.
Fabienne BUSSAC 15 FRACTIONS + – 1. QUOTIENTS EGAUX
REPRESENTATION DE L’INFORMATION
Le codage des nombres en informatique
Addition – Soustraction - Multiplication
1 INFOR 101 Chapitre 4 Marianne Morris. 2 Révision de chapitre 3 Algorithmes Sequential Search Selection Sort Binary Search Ordre de magnitude  (n) Mesurer.
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. tél Fax Cours Architecture des.
Points importants de la semaine Les caractères.
Introduction aux systèmes numériques
Petite révision Les fractions sont toutes composées d ’un numérateur, qui représente le nombre de partie que l ’on a choisi et d ’un dénominateur qui.
Système d’exploitation : Assembleur Semaine 01 Introduction.
1. Spoon Christophe Delagarde, septembre 1998 I.U.T., Université de la Méditerrainée 2.
1,02 (-102)x(-0,01) = Car 102x 0,01= 1,02 (100 fois plus petit )
Ecritures fractionnaires Quotients
UE MAREP Cours 1 : Algèbre de Boole et entiers naturels
Patricia Renault UPMC 2004/2005
Introduction à la programmation (420-PK2-SL) cours 1
Codage de l’information
8PRO107 Éléments de programmation Les adresses et les pointeurs.
1,2 (-12)x(-0,1) = Car 12x 0,1= 1,2 (10 fois plus petit )
Cours d’initiation en Informatique
Chapitre 4 La représentation des nombres.
Chapitre 4b La représentation des nombres.
Chapitre 9 Les caractères.
Terminologie liée aux mesures
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Chapitre 3 La numération octale et hexadécimale.
Objets et Actions Élémentaires.
Chapitre 5 La représentation des données
CHAPITRE 5 Les nombres entiers 1. Les entiers 2 Les entiers signés représentations pour le 0.
CHAPITRE 8 Les booléens et les chaines de bits 1.
Système d’information numérique
Introduction au langage C
La NUMERISATION de l’information
Principe de la numération en une base donnée
A. Lebrun. La base 2 Un nombre peut se représenter en base deux par une suite de 0 ou de 1. Chaque bit a un poids qui dépend de son rang Le format n impose.
Le codage des nombres en informatique
Itinéraire 1 L’addition,la soustraction, la multiplication et la division.
1 Objectifs Apprendre la structure de quelques circuits combinatoires souvent utilisés ( demi additionneur, additionneur complet,……..). Apprendre comment.
La place du calcul mental et du calcul réfléchi dans la résolution de problème. Qu’est-ce que chercher?
La forme exponentielle
Représentation des nombres réels
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
Transcription de la présentation:

©Pierre Marchand, Unité 2: Représentation interne des informations Objectifs: À la fin de cette unité, -vous saurez comment les caractères et les nombres entiers positifs et négatifs sont représentés dans la mémoire d'un ordinateur. -vous saurez comment on effectue les opérations arithmétiques addition et soustraction avec des entiers binaires. -vous saurez comment effectuer la multiplication et la division binaire Pour y arriver, vous devrez maîtriser les objectifs suivants : -effectuer ces opérations arithmétiques sur des entiers dans n'im- porte quelle base, en particulier en binaire et en hexadécimal;

©Pierre Marchand, Unité 2: Représentation interne des informations 3.1 Introduction Types d’information traitées par l’ordinateur : Nombres, instructions, images, séquences d’images animées, sons, etc., toujours représentées sous forme binaire. Une information élémentaire correspond donc à un chiffre binaire 0 ou 1 appelé bit. Avantages du binaire : facile à réaliser techniquement à l’aide de bistables (systèmes à deux états d’équilibre). opérations fondamentales simples à effectuer, sous forme de circuits logiques.

©Pierre Marchand, Unité 2: Représentation interne des informations 3.1 Introduction Types d’information traités : instructions et données. Les instructions sont écrites en langage machine et représentent les opérations (e.g. addition, multiplication, etc.) effectuées par l’ordinateur. Elles sont composées de plusieurs champs : - Le code de l’opération à effectuer (opcode) - Les opérandes impliqués dans l’opération. Les données sont les opérandes sur lesquelles portent les opérations. On distingue les données numériques et les données non numériques (e.g. texte).

©Pierre Marchand, Unité 2: Représentation interne des informations Le binaire

©Pierre Marchand, Unité 2: Représentation interne des informations Le binaire En décimal, avec n chiffres, on obtient 10 n combinaisons possibles, i.e. on peut compter de 0 à 10 n -1. Exemple : Avec 3 chiffres, on a 10 3 = 1000 combinaisons possibles et on peut compter de 000 à 999. En binaire, avec n bits, on obtient 2 n combinaisons possibles, i.e. on peut compter de 0 à 2 n -1 Exemple : avec 8 bits, on a 2 8 = 256 combinaisons possibles et on peut compter de à , i.e. de 0 à 255.

©Pierre Marchand, Données non numériques ASCII 7 bits ->128 caractères : 26 lettres majuscules A - Z 26 lettres minuscule a - z 10 chiffres 0 à 9 33 caractères de ponctuation sp,! ” #$%& ’ ()*+,-. / [ ] ^_` { | } ~ 33 caractères de contrôle : null, etx, bel, bs, ht, lf, vt, ff, cr, …, del Unité 2: Représentation interne des informations

©Pierre Marchand, Données non numériques ASCII étenduAussi connu sous le nom de ISO ou ISO latin 1. Définit les caractères ASCII 128 à bits -> 256 caractères caractères internationaux caractères semi-graphiques Dans les deux cas, les caractères sont représentés dans l’ordinateur par un nombre binaire de 8 bits indiquant l’indice i.e. la position du caractère dans la table ASCII. Dans le cas de l ’ASCII simple, le nombre doit être inférieur à 128. Unité 2: Représentation interne des informations

©Pierre Marchand, Données non numériques Par exemple : ‘A’ = = ‘B’ = = ‘a’ = = ‘ ‘ = = ‘0’ = = ‘1’ = = ‘2’ = = … ‘9’ = = Unité 2: Représentation interne des informations

©Pierre Marchand, Données non numériques Les codes ISO à définissent les caractères entre 128 et 255 pour couvrir les besoins de la majorité des pays d’Europe. UNICODE16 bits -> caractères Code qui se veut universel et qui contient, en plus de tous les caractères européens, caractères asiatiques. Le code ASCII est contenu dans les 128 premiers caractères d’UNICODE. UNICODE est supporté par Windows NT, Windows 2000, Java, et certains systèmes UNIX, MacOS > 8.5, etc. Unité 2: Représentation interne des informations

©Pierre Marchand, Données non numériques ISO/IEC 10646Deux formats : 16 bits (UCS-2) ou 32 bits (UCS-4) UCS-2 équivalent à UNICODE 2.0 UCS-4 inclut : –Caractères musicaux –Symboles mathématiques –Écritures anciennes telles que les hiéroglyphes. Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques 3.3.1Entiers positifs ou nuls 3.3.2Entiers négatifs Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Systèmes de numération Représentation pondérée d’un nombre N dans une base B : N = a n B n + a n-1 B n-1 + … + a 1 B + a 0 = où a n = 0, 1, … B-1 Les bases B les plus usitées sont : B = 10,décimal B = 2, binaire B = 16, hexadécimal B = 8, octal Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Systèmes de numération Représentation pondérée dans une base B Exemples : = 1     = 1     8 0 = = 1      2 0 = Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls DécimalBinaireOctalHexadécimal Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls DécimalBinaireOctalHexadécimal A B C D E F Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Remarques 10 B = B quel que soit B : 10 2 = 2, 10 7 = 7, 10 8 = 8, = Ajouter un 0 à droite (décalage à gauche) = multiplication par B Enlever le chiffre de droite (décalage à droite ) = division entière par B Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Représentation hexadécimale Comme 16 = 2 4, on peut toujours représenter un nombre binaire en regroupant les bits en groupes de 4 et en écrivant la notation hexadécimale 0 - F pour chacun de ces groupes : Exemple : = 7CF 16 Pour indiquer qu’un nombre est en hexadécimal, on utilise le posfixe h ou H, ou le préfixe $, ou encore, en notation C/C++, le préfixe 0x. 7CFh ou 7CFH, $7CF, 0x7CF Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Addition binaire Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Addition hexadécimale Unité 2: Représentation interne des informations BE +8D 1 4B AD +2C D9 11 1

©Pierre Marchand, Données numériques Entiers positifs ou nuls Soustraction binaire à la main Quand le chiffre du bas est supérieur à celui du haut, on emprunte 2 au chiffre de gauche suivant et on ajoute ce 2 au chiffre du haut. On fait la soustraction. L’emprunt soustrait 1 au chiffre de gauche. Voyez l’animation sur le site Web: Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Notation signe et grandeur Sur 8 bits, on pourrait garder 1 bit pour le signe et 7 bits pour la grandeur. C’est la notation signe et grandeur que nous utilisons en arithmétique ordinaire. Par exemple, avec la notation signe et grandeur sur 8 bits, on aurait : +5 = et -5 = Unité 2: Représentation interne des informations signe grandeur

©Pierre Marchand, Données numériques Entiers négatifs Compléments à 1 et à 2 Une autre possibilité est d’utiliser le complément à 1 ou le complément à 2. Complément à 1 sur 8 bits : Le complément à 1 est obtenu en inversant tous les bits du nombre : +5 = et -5 = Dans le cas du complément à 1, +5 + (-5) = = -0 Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Complément à 2 : Le complément à 2 est obtenu en additionnant 1 au complément à 1 : +5 = et -5 = ( ) Dans le cas du complément à 2, +5 + (-5) = Les micro-ordinateurs actuels utilisent tous le complément à 2 sur 8, 16 ou 32 bits pour représenter les nombres négatifs. Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs La représentation en complément à 2 va de -2 n-1 à 2 n-1 -1 Avec des motifs de 8 bits : Nombres positifs à ou encore à 7F 16 = 0 à 127 Nombres négatifs à ou encore à FF 16 = -128 à -1 Avec des motifs de 16 bits : Nombres positifs 0000 à 7FFF = 0 à Nombres négatifs 8000 à FFFF = à -1 Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Avec des motifs de 32 bits : Nombres positifs à 7FFFFFFF 16 = 0 à Nombres négatifs à FFFFFFFF 16 = à -1 Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Complément à 10 Pour illustrer le principe du complément à 2, on pourrait faire la même chose en base 10. Sur 4 digits, les nombres 0 à 4999 seraient positifs et les nombres 5000 à 9999 seraient négatifs. Le complément à 10 d’un nombre N s’obtiendrait en faisant N ou N + 1 : Ainsi, le complément à 10 de 1000 serait 9000, et = (1)0000. Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Complément à 16 De la même façon, en notation hexadécimale, on peut utiliser le complément à 16 pour représenter les nombres négatifs. Sur 8 bits, on l’obtient en soustrayant le nombre de FF 16 et en ajoutant 1 au résultat : 5 = = FF = FA = FB 16 = Remarquez que c’est le même résultat qu’en complément à 2. Sur 16 bits : 5 = = FFFF = FFFB 16 Unité 2: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers négatifs Soustraction L’ordinateur effectue la soustraction en additionnant le complément à 2 sur des motifs de 8 bits, 16 bits, 32 bits, etc = 5 + (-4) = 4 + (-5) Unité 2: Représentation interne des informations (1) retenue ou (1) emprunt ou 1

©Pierre Marchand, Données numériques Entiers négatifs Soustraction en hexadécimal avec ou sans le complément à 16 : Sur 16 bits : = 5 + (-4) = 4 + (-5) Unité 2: Représentation interne des informations FFFC (1) FFFB FFFF ou retenue ou (1)FFFF 111 emprunt 1 1

©Pierre Marchand, Données numériques Entiers négatifs Attention! Pour les nombres dont le bit le plus significatif est 1, il y a deux interprétations possibles. Par exemple, sur 8 bits, peut représenter +144 si on le considère comme un nombre non signé ou-112 si on le considère comme un nombre en complément à 2. C’est lors de la déclaration d’une variable en mémoire qu’on détermine si le processeur doit la traiter comme signée ou non signée. char a;// a est considéré comme signé en complément à 2 unsigned char b;// a est considéré comme non signé Unité 2: Représentation interne des informations

©Pierre Marchand, Données non numériques Endianisme Quand un nombre est représenté sur plusieurs octets, il peut être écrit en mémoire de deux façons : L’octet de poids fort à l’adresse basse : big-endian L’octet de poids faible à l’adresse basse : little-endian Par exemple, le nombre décimal s’écrit F28A en hexadécimal. En little-endian, la mémoire contiendra 8A F2, tandis qu’en big- endian, elle contiendra F2 8A Unité 3: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Multiplication La multiplication binaire s’effectue comme la multiplication décimale ordinaire, mais est beaucoup plus simple, puisqu’il n’y a que des 1 et des 0. Unité 3: Représentation interne des informations 

©Pierre Marchand, Données numériques Entiers positifs ou nuls Multiplication On peut également effectuer cette opération en hexadécimal : Unité 3: Représentation interne des informations 1B  0D 1 8F 0D 15F On utilise à cette fin la table de multiplication hexadécimale du supplément (Appendice 5).

©Pierre Marchand, Données numériques Entiers positifs ou nuls Division La division binaire s’effectue comme la division décimale ordinaire, mais elle est beaucoup plus simple, puisque les facteurs sont 1 ou 0. Résultat : , reste Unité 3: Représentation interne des informations /

©Pierre Marchand, Données numériques Entiers positifs ou nuls Division L’ordinateur effectue cette division au moyen de décalages d’un registre à l’autre. Pour simplifier, utilisons des registres de 6 bits. Initialement le registre R contient des 0 et le registre D contient le dividende. On décale D vers R un bit à la fois. Chaque fois que R ≥ Diviseur, on soustrait le diviseur de R et on met 1 à la suite du quotient, sinon, on met 0 à la suite du quotient. On effectue 6 décalages de D. À la fin, R contient le reste. Voyez l’animation sur le site du cours : Unité 3: Représentation interne des informations R D

©Pierre Marchand, Données numériques Entiers positifs ou nuls Division ( / 100) sur 6 bits R DDécalage no Q = Q = Q = Q = Q = Q = Q = Unité 3: Représentation interne des informations

©Pierre Marchand, Données numériques Entiers positifs ou nuls Division On peut également effectuer la division binaire en hexadécimal. Il faut ici aussi utiliser la table de multiplication hexadécimale. Exemple : Réponse : 7CB 16 / 1C 16 = reste 7. Unité 3: Représentation interne des informations 7CB /1C CB C4 07