Introduction. Chapitre 2 : Représentation de l information dans la machine. 1. Représentation des nombres entiers

Documents pareils
Logiciel de Base. I. Représentation des nombres

Codage d information. Codage d information : -Définition-

Représentation des Nombres

Conversion d un entier. Méthode par soustraction

Informatique Générale

Les opérations binaires

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Chapitre 10 Arithmétique réelle

Architecture de l ordinateur

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

V- Manipulations de nombres en binaire

IFT2880 Organisation des ordinateurs et systèmes

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Représentation d un entier en base b

Glossaire des nombres

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Système binaire. Algèbre booléenne

La question est : dans 450 combien de fois 23. L opération est donc la division. Le diviseur. Le quotient

Représentation d un nombre en machine, erreurs d arrondis

DM 1 : Montre Autoquartz ETA


1 Introduction au codage

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Algèbre binaire et Circuits logiques ( )

Microprocesseur + Logiciel

Architecture matérielle des systèmes informatiques

Bases de programmation. Cours 5. Structurer les données

I- Définitions des signaux.

Précision d un résultat et calculs d incertitudes

Cours Informatique 1. Monsieur SADOUNI Salheddine

TO4T Technologie des ordinateurs. Séance 1 Introduction aux technologies des ordinateurs

ASR1 TD7 : Un microprocesseur RISC 16 bits

Algorithme. Table des matières

La mémoire. Un ordinateur. L'octet. Le bit

IV- Comment fonctionne un ordinateur?

Le codage informatique

Petit lexique de calcul à l usage des élèves de sixième et de cinquième par M. PARCABE, professeur au collège Alain FOURNIER de BORDEAUX, mars 2007

Une version javascript sera disponible directement dans le cours prochainement.

Organisation des Ordinateurs

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

I.1- DÉFINITIONS ET NOTIONS DE BASE

Licence Sciences et Technologies Examen janvier 2010

Série D65/D75/D72 Afficheurs digitaux modulaires

EBS 204 E C B S. Publication : Novembre 96

TD 1 - Transmission en bande de passe

Chapitre 1 I:\ Soyez courageux!

Date : Note /20 : EVALUATION Nom : Prénom : Classe : Traitement sur mots

2.4 Représentation graphique, tableau de Karnaugh

Acquisition et conditionnement de l information Les capteurs

IFT1215 Introduction aux systèmes informatiques

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

Introduction à l étude des Corps Finis

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

Cours Premier semestre

Arithmétique réelle. Introduction à l arithmétique flottante La précision des calculs: analyse et améliorations. Valérie Ménissier-Morain

Le signal GPS. Les horloges atomiques à bord des satellites GPS produisent une fréquence fondamentale f o = Mhz

ET LO GICIEL D UN S YS T EME IN FORMATIQUE

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

Activité 1. Compter les points Écriture binaire des nombres. Résumé. Liens pédagogiques. Compétences. Âge. Matériel

Puissances d un nombre relatif

Initiation à la programmation en Python

Fonctions homographiques

TP 1. Prise en main du langage Python

Jeux de caracte res et encodage (par Michel Michaud 2014)

Travail d intérêt personnel encadré : La cryptographie

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Communications numériques

Le multiplexage. Sommaire

QUESTION 1 {2 points}

a) b)

CHRONIQUE de la société royale LE VIEUX-LIÈGE

Transmission de données. A) Principaux éléments intervenant dans la transmission

CODAGE DES SMS. 2 Commandes «AT» 25 3 Matériels utilisés 55 4 Interfacer un téléphone GSM 73 5 Réalisations électroniques 101

Exercices de dénombrement

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

Structure du format BMP, sa lecture, sa construction et son écriture

Dossier Logique câblée pneumatique

Programmation C. Apprendre à développer des programmes simples dans le langage C

Esterel The french touch star touch esterel advance

TD : Codage des images

ÉPREUVE COMMUNE DE TIPE Partie D

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

EXERCICES DE REVISIONS MATHEMATIQUES CM2

NOTIONS DE RESEAUX INFORMATIQUES

ProCod. Manuel d utilisation. Software de programmation pour codeurs absolus TWK modèles CRF et DAF CRF DF 08 / 10

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Transcription:

Chapitre 2 : Représentation de l information dans la machine Introduction Représentation des nombres négatifs / valeur absolue Complément à Complément à 2 Représentation des nombres réels Virgule fixe Virgule flottante Le codage BCD et EXCESS Représentation des caractères Introduction Information Instructions Données Caractère Numérique Entiers Non signés Signés Réels Représentation des nombres entiers Il existe deux types d entiers : les entiers non signés ( positifs ) et les entiers signés ( positifs ou négatifs ) Problème : Comment indiquer à la machine qu un nombre est négatif ou positif? Il existe méthodes pour représenter les nombres négatifs : / valeur absolue Complément à ( complément restreint ) Complément à 2 ( complément à vrai ) Représentation signe / valeur absolue ( S/VA ) Si on travail sur n bits, alors le bit du poids fort est utilisé pour indiquer le signe : : signe négatif : signe positif Les autres bits ( n - ) désignent la valeur absolue du nombre Si on travail sur bits Valeur absolue est la représentation de - Valeur absolue est la représentation de Sur bits on obtient : signe VA valeur 2 - - - 2 - Les valeurs sont comprises entre - et - N - ( - ) N ( - ) -(2 2 -) N (2 2 - ) -(2 ( -) -) N (2 ( -) - ) Avantages et inconvénients de la représentation signe/valeur absolue C est une représentation assez simple On remarque que le zéro possède deux représentations et - ce qui conduit à des difficultés au niveau des opérations arithmétiques Pour les opérations arithmétiques il nous faut deux circuits : l un pour l addition et le deuxième pour la soustraction L idéal est d utiliser un seul circuit pour faire les deux opérations, puisque a- b =a ( -b ) Si on travail sur n bits, l intervalle des valeurs qu on peut représenter en S/VA : -(2 (n -) -) N (2 (n -) - )

2 Représentation en complément à un ( complément restreint ) On appel complément à un d un nombre N un autre nombre N tel que : NN =2 n - n : est le nombre de bits de la représentation du nombre N Remarque : Pour trouver le complément à un d un nombre, il suffit d inverser tous les bits de ce nombre : si le bit est un mettre à sa place un et si c est un mettre à sa place un : Soit N= sur bits donc son complément à un de N : N = (2 - )-N N =(- )-() 2 = ( ) - () 2 = () 2 () 2 = Sur Bits Sur Bits Remarque 2 Dans cette représentation, le bit du poids fort nous indique le signe ( : positif, : négatif ) Le complément à un du complément à un d un nombre est égale au nombre lui même CA(CA(N))= N Quelle est la valeur décimale représentée par la valeur en complément à sur bits? Le bit poids fort indique qu'il s'agit d'un nombre négatif Valeur = - CA() = - () 2 = - ( 2) Si on travail sur bits : CA binaire - - - - Valeur décimal 2 - - 2 - - Dans cette représentation, le bit du poids fort nous indique le signe On remarque que dans cette représentation le zéro possède aussi une double représentation ( et ) Sur bits on remarque que les valeurs sont comprises entre - et - N - ( - ) N ( - ) -(2 2 -) N (2 2 - ) -(2 ( -) -) N (2 ( -) - ) Si on travail sur n bits, l intervalle des valeurs qu on peut représenter en CA : -(2 (n -) -) N (2 (n -) - ) Complément à 2 ( complément à vrai ) Si on suppose que a est un nombre sur n bits alors : a 2 n = a modulo 2 n et si on prend le résultat sur n bits on va obtenir la même valeur que a a 2 n = a : soit a = sur bits 2 = Si on prend le résultat sur bits on trouve la même valeur de a = 2

Si on prend deux nombres entiers a et b sur n bits, on remarque que la soustraction peut être ramener à une addition : a b = a (-b) Pour cela il suffit de trouver une valeur équivalente à -b? a b = a 2 n b = a (2 n ) b On a b CA(b)= 2 n donc CA(b) = (2 n ) b Si on remplace dans la première équation on obtient : a b = a CA(b) Trouver le complément à vrai de : sur 8 bits? CA2()= CA() CA()= () CA2()=() = () Remarque : Pour trouver le compétemment à 2 d un nombre : il faut parcourir les bits de ce nombre à partir du poids faible et garder tous les bits avant le premier et inverser les autres bits qui viennent après La valeur CA(b) s appelle le complément à deux de b : CA(b) = CA2(b) Et enfin on va obtenir : a - b = a CA2(b) transformer la soustraction en une addition Remarque 2 Si on travail sur bits : Dans cette représentation, le bit du poids fort nous indique le signe ( : positif, : négatif ) Le complément à deux du complément à deux d un nombre est égale au nombre lui même CA2(CA2(N))= N Quelle est la valeur décimale représentée par la valeur en complément à deux sur bits? Le bit poids fort indique qu'il s'agit d'un nombre négatif Valeur = - CA2() = - ( ) = - () 2 = - ( 22) CA2 binaire - - - - valeur 2 - - - 2 - Dans cette représentation, le bit du poids fort nous indique le signe On remarque que le zéro n a pas une double représentation Sur bits on remarque que les valeurs sont comprises entre - et - N - N ( - ) - 2 2 N (2 2 - ) -2 ( -) N (2 ( -) - ) Si on travail sur n bits, l intervalle des valeurs qu on peut représenter en CA2 : -(2 (n -) ) N (2 (n -) - ) Opérations arithmétiques en CA2 Effectuer les opérations suivantes sur Bits, en utilisant la représentation en CA2 9 Le résultat est positif Report 9 - La représentation en complément à deux ( complément à vrai ) est la représentation la plus utilisée pour la représentation des nombres négatifs dans la machine () 2 = ( ) Le résultat est positif () 2 = ( )

- 9 - - Report Le résultat est négatif : Résultat = - CA2 ()= -( ) = - - 9 9 Report Le résultat est positif () 2 = ( ) La retenue et le débordement On dit qu il y a une retenue si une opération arithmétique génère un report On dit qu il y a un débordement (Over Flow ) ou dépassement de capacité: si le résultat de l opération sur n bits et faux Le nombre de bits utilisés est insuffisant pour contenir le résultat Autrement dit le résultat dépasse l intervalle des valeurs sur les n bits utilisés Cas de débordement 9 8 Négatif - 9-8 - Positif Nous avons un débordement si la somme de deux nombres positifs donne un nombre négatif Ou la somme de deux nombres négatifs donne un Nombre positif Il y a jamais un débordement si les deux nombres sont de signes différents 2 La représentation des nombres réels Un nombre réel est constitué de deux parties : la partie entière et la partie fractionnelle ( les deux parties sont séparées par une virgule ) Problème : comment indiquer à la machine la position de la virgule? Il existe deux méthodes pour représenter les nombre réel : Virgule fixe : la position de la virgule est fixe Virgule flottante : la position de la virgule change ( dynamique ) 2 La virgule fixe Dans cette représentation la partie entière est représentée sur n bits et la partie fractionnelle sur p bits, en plus un bit est utilisé pour le signe si n= et p=2 on va avoir les valeurs suivantes 22 Représentation en virgule flottante Chaque nombre réel peut s écrire de la façon suivante : N= ± M * b e M : mantisse, b : la base, e : l exposant PE PF valeur,,2,,, Dans cette représentation les valeurs sont limitées et nous n avons pas une grande précision, =, * 2 - (,) 2 = - (,) 2 * 2 (,) 2 = (,) 2 * 2-2 Remarque : on dit que la mantisse est normalisée si le premier chiffre après la virgule est différent de et le premier chiffre avant la virgule est égale à

Dans cette représentation sur n bits : La mantisse est sous la forme signe/valeur absolue bit pour le signe et k bits pour la valeur L exposant ( positif ou négatif ) est représenté sur p bits mantisse Exposant bit p bits k bits Pour la représentation de l exposant on utilise : Le complément à deux Exposant décalé ou biaisé Représentation de l exposant en complément à deux On veut représenter les nombres (,) 8 et -(, ) 8 en virgule flottante sur une machine ayant le format suivant : mantisse Exposant en CA2 bit bits 8 bits (,) 8 =(,) 2 =, * 2 - mantisse : positif ( ) Mantisse normalisé :, Exposant = - utiliser le complément à deux pour représenter le - Sur bits CA2()= bit bits 8 bits - (,) 8 = - (,) 2 = -, * 2 mantisse : négatif ( ) :, Exposant =, en complément à deux il garde la même valeur ( ) On remarque que la mantisse est sur bits ( ), et sur la machine seulement 8 bits sont utilisés pour la mantisse Dans ce cas on va prendre les 8 premiers bits de la mantisse bit bits 8 bits Remarque : si la mantisse est sur k bits et si elle est représenté sur la machine sur k bits tel que k> k, alors la mantisse sera tronquée : on va prendre uniquement k bits perdre dans la précision L Exposant décalé ( biaisé ) en complément à 2, l intervalle des valeurs qu on peut représenter sur p bits : - 2 (p -) N 2 (p -) - Si on rajoute la valeur 2 (p -) à tout les terme de cette inégalité : - 2 (p -) 2 (p -) N 2 (p -) 2 (p -) - 2 (p -) N 2 (p -) 2 p - On pose N = N 2 (p -) donc : N 2 p - Dans ce cas on obtient des valeur positives La valeur 2 p- s appelle le biais ou le décalage Avec l exposant biaisé on a transformé les exposants négatifs à des exposants positifs en rajoutons à l exposant la valeur 2 p - Exposant Biaisé = Exposant réel Biais On veut représenter les nombres (,) 8 et -(, ) 8 en virgule flottante sur une machine ayant le format suivant : mantisse Exposant décalé bit bits bits (,) 8 =(,) 2 =, * 2 - mantisse : positif ( ) Mantisse normalisé :, Exposant réel = - Calculer le biais : b= 2 - = 8 Exposant Biaisé = - 8 = = ( ) 2 bit bits bits

- (,) 8 =(,) 2 =, * 2 mantisse : négatif ( ) :, Exposant réel = Calculer le biais : b= 2 - = 8 Exposant Biaisé = 8 = 2 = ( ) 2 Opérations arithmétiques en virgule flottante Soit deux nombres réels N et N2 tel que N=M*b e et N2=M2*b e2 On veut calculer NN2? Deux cas se présentent : Si e = e2 alors N= (MM2) b e Si e <> e2 alors élevé au plus grand exposant et faire l addition des mantisses et par la suite normalisée la mantisse du résultat bit bits bits Effectuer l opération suivante : (,) 8 (,) 8 =(?) : Exercice Donner la représentation des deux nombres N= (-,) 8 et N2=(,) 8 sur la machine suivante : (,) 8 = (,) =, *2-2 (,) 8 = (, ) =, *2 (,) 8 (,) 8 =, *2-2, *2 =, *2, *2 mantisse Exposant biaisé (décalé) bit bits bits =, * 2 Calculer N2-N? bit bits bits N Avant de représenter les deux nombres on doit calculer le biais (décalage) B = 2 - = 2 = N = (-,) 8 = (-,) 2 = (-,) 2 2 - ExpB= - = = () 2 N2 = (,) 8 = (,) 2 = (,) 2 2-2 ExpB = -2 = = () 2 Donc on va avoir la représentation suivante pour N et N2: N2 ( AF) (B) N2 - N =, (-,) =,, N2 - N = (,) 2 2-2 (,) 2 2 - = (,) 2 2-2 (,) 2 2-2 = (,) 2 2-2 Si on fait les calculs avec l exposant biaisé : N2 - N = (,) 2 2 (,) 2 2 = (,) 2 2 (,) 2 2 = (,) 2 2 Exposant biaisé = Exposant réel = Exposant biaisé Biais Exposant réel = = -2 Donc on trouve le même résultat que la première opération

Le codage BCD (Binary Coded Decimal ) Pour passer du décimal au binaire, il faut effectuer des divisions successives Il existe une autre méthode simplifiée pour le passage du décimal au binaire Le principe consiste à faire des éclatement sur bits et de remplacer chaque chiffre décimal par sa valeur binaire correspondante Décimal Les combinaisons supérieures à 9 sont 8 interdites 9 2 Binaire 2 9 2 29 = ( ) 2 2 = ( ) 2 Le codage EXCESS ( BCD ) Codage des caractères Décimal 2 8 9 BCD 8 9 2 Binaire 2 9 Les caractères englobent : les lettres alphabétiques ( A, a, B, B, ), les chiffres, et les autres symboles ( >, ; / : ) Le codage le plus utilisé est le ASCII (American Standard Code for Information Interchange) Dans ce codage chaque caractère est représenté sur 8 bits Avec 8 bits on peut avoir 2 8 = 2 combinaisons Chaque combinaison représente un caractère : Le code () 2 correspond au caractère A Le code 9 () correspond au caractère a Le code 8 ( )correspond au caractère : Actuellement il existe un autre code sur bits, se code s appel UNICODE