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.

Slides:



Advertisements
Présentations similaires
Addition et soustraction des nombres relatifs (1)
Advertisements

Addition et soustraction des nombres relatifs (13)
Le codage de l ’information
Architecture des Ordinateurs
Présentation Unité de codage
ALGEBRE DE BOOLE Mohamed Yassine Haouam
Représentation numérique de l’information
Le Langage Binaire.
Le codage des nombres en informatique
Langage des ordinateurs
OPERATIONS SUR LES NOMBRES EN ECRITURE FRACTIONNAIRE
Cours de 3ème SAGE P Module1 Révisions Calculs numériques.
Chapitre 1 Le Sens des nombres
Les expressions algébriques
Chiffres significatifs, incertitudes et précision des instruments
Annexe A: Numérotation binaire
Mise en forme en Mathématiques
Informatique, Ordinateur & Programme ...
Représentation binaire de nombres entiers et opérations arithmétiques de base Sujets de ce thème
Le Système Binaire Introduction Les bases à connaitre Conversions
Codage des nombres réels avec la norme IEEE-754
Cohen Julien Neville gabriel
- Chap3 - Nombres décimaux-Opérations
Le codage des nombres en informatique
Le calcul mental _ février 2010 ARGENTEUIL SUD
Acquis ceinture blanche
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.
REPRESENTATION DE L’INFORMATION
Représentation des entiers
Le codage des nombres en informatique
CONVERSION D’UNITÉS DE LONGUEUR
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.
Chapitre 1 Nombres relatifs.
Mathématiques Journal.
Introduction aux systèmes numériques
Acquis ceinture blanche
La racine carrée.
Patricia Renault UPMC 2004/2005
Enseigner / apprendre le calcul mental… (2)
Introduction à la programmation (420-PK2-SL) cours 1
Codage de l’information
LES BATONS DE NEPER John NEPER Présentation Utilisation.
Ch. 6 Les nombres rationnels
Cours d’initiation en Informatique
Les Entiers Relatifs Addition Et Soustraction
Chapitre 4 La représentation des nombres.
©Pierre Marchand, Unité 2: Représentation interne des informations Objectifs: À la fin de cette unité, -vous saurez comment les caractères et les.
Opérations sur les nombres relatifs
Chapitre 4b La représentation des nombres.
Chapitre 3 La numération octale et hexadécimale.
Opérations sur les nombres relatifs
Les nombres à virgule flottante
CHAPITRE 5 Les nombres entiers 1. Les entiers 2 Les entiers signés représentations pour le 0.
Pierre Joli Cours de Mathématique Pierre Joli
A×aa×a×aa×a×a×a a0a0 a4a4 a3a3 a2a2 a1a1 × a  a a 1 1. PUISSANCES, CAS GENERAL a. Définition PUISSANCES.
Le codage des nombres en informatique
Multiplexeurs A.Lebrun.
A.Lebrun. Principe des compteurs Les compteurs servent à mesurer le nombre d’impulsion qui arrivent sur l’entrée de comptage Les compteurs sont constitués.
La forme EXPONENTIELLE
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?
Opérations sur les nombres relatifs Chapitre 1 Classe de 4ème.
La forme exponentielle
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
Transcription de la présentation:

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 que le nombre est compris entre 0 et 2 n -1 ) Ex: pour le format 6 le nombre est compris entre 0 et 63.

Nombre décimal Ce qui est vrai pour les nombres entiers est également vrai pour les nombres décimaux. Le bit de rang R avant la virgule a un poids de 2 r et celui de rang R’ après la virgule a un poids de 2 –r’ N = b8b7b6b5b4b3b2b1b0,b(-1)b(-2) N = b8*2 8 + b7*2 7 + b6*2 6 + b5*2 5 + b4*2 4 + b3*2 3 + b2*2 2 + b1*2 1 + b0*2 0 + b(-1)*2 (-1) + b(-2)*2 (-2)

Calcul en binaire Les calculs en binaire ont été initiés par Von Leibnitz et développé par Claude Shannon Gottfried Wilhelm von Leibniz, le grand mathématicien précurseur de l'informatique et des calculs en nombre binaire.

Addition de deux bits en binaire Pour additionner deux nombres en binaires, on agit comme en décimal: on additionne les bits de même rang de chacun des nombres Table d’addition en binaire 0+0=0S=0 R=0 0+1=1S=1 R=0 1+0=1S=1 R =0 1+1= 10S= 0 R = 1

Circuits pour S et R L’addition de deux bits a et b donne deux bits S(a,b) et R (a,b) respectivement appelé Somme et Retenue D’après la table d’addition S(a,b)= ab + ab R (a,b) = ab On en déduit le circuit que l’on appellera demi- additionneur

Schéma du demi-additionneur A B =1 S = a+b & R = a.b

Additionneur complet Pour faire une addition sur le rang n, il faut tenir compte de la retenue du rang n-1. Pour additionner deux nombres, on doit donc être capable d’additionner trois bits a,b et r -1 Il faut donc trouver les fonctions R et S d’une somme de trois bits

Table de vérité abR-1SR

Fonction S Sa b R La fonction S est donc donnée par: S= a + b + R-1

Fonction R Ra b R R = R-1 (a + b) + ab

Schéma additionneur An bn Rn-1 =1 Sn & & >1 Rn

Schéma simplifié En général on représente l’additionneur complet 1 bit sous la forme suivante: Rn-1 ADD an bn Sn Rn

Additionneur N bits Montage en cascade Pour réaliser l’addition de deux nombres de n bits, il suffit de monter en cascade des additionneurs 1 bits Il faut laisser la première entrée de retenue de l’additionneur a 0 Attention le résultat de l’addition de 2 nombres de N bits comprend N+1 bits (N bits de sommes et 1 bit de retenue)

Additionneur 3 bits ADD a b S R a2 a1 a0b2 b1 b0 S0 S1 S2 R2

Schéma simplifié d’additionneur N bits.

Inconvénient L’addition cascade devient longue si le nb de bits devient important car il faut pour calculer la dernière retenue connaître toutes celles avant Amélioration possible: faire un additionneur avec un générateur de retenue anticipée: Sn+1 A0.. An B0 Bn A1 B1 R0 add S0 add S1 S2 Sn add An Bn GRA

Calcul anticipé des retenues R0= a0.b0= P0 R1= a1.b1 + R0(a1+b1) = P1 + P0S1 R2= a2.b2 + R1 (a2 + b2) = P2 + (P1 + P0S1)(S2) R2 = P2 + P1S2 +P0S1S2 R 3 = P3 + R2(a3 + b3) = P3 + P2S3 +P1S2S3 + PoS1S2S3 Ri = Pi + P1-1Si +Pi-2SiSi-1 + …. + P0S1S2…Si Le calcul anticipé des retenues devient intéressant à partir de 8 bits en terme de temps de calcul.

19 Représentation des nombres réels Codage des réels : virgule flottante flottant stocké sous la forme M * B E M : Mantisse ; B : Base ; E : Exposant exemple : = Représentation IEEE 754, base 2 (signe 1 bit, exposant et mantisse sur 32 ou 64 bits pour simple et double précision) SM : signe de la mantisse : 1 bit Eb : exposant biaisé : 8 ou 11 bits M : Mantisse : 23 ou 52 bits

20 Mantisse et exposant Signe : bit de poids fort (0 = + ; 1 = -) Exposant placé avant la mantisse pour simplifier les comparaisons sur 8 bits : sans signe mais biaisé de 127 (on enlève 127) : Eb = 0 ⇒ E = 0 – 127 = -127 Eb = 255 ⇒ E = 255 – 127 = 128 Remarque : E>0 si et seulement si le bit de poids fort de Eb =1 Mantisse normalisée : bit de poids fort n’est pas 0 et un seul chiffre avant la virgule ex : 3,25 10 =11,01 = 1,101 * 2 1 s’écrit ……0

21 Virgule Flottante Mantisse : Comme le bit de poids fort de la mantisse est nécessairement 1, on ne l’indique pas (gaspillage de place). Il est implicite partie fractionnaire = f1f2 …fn ⇒ m = 1,f1f2…fn nombre x = (-1) SM * 1,M * 2 Eb-127 Exemple x = (-2,5) 10 = (-1,01*2 1 ) 2 SM = 1 ; E= 1 => Eb= 128 = ; m=1,01 => M = 010…… ……0

Addition de nombres réels Pour additionner les nombres réels, on fait comme on a appris en primaire (attention de ne pas oublier le 1 non codé représentant la partie entière) Ecrit les nombres dans la représentation réelle Aligner les puissances en décalant de la plus petite de de la différence des puissances entre les deux nombres Faire l’addition normalement Réécrire le résultat correctement suivant la représentation 1,b0b1

Il faut décaler de deux rangs B pour aligner les mantisses sans oublier le 1 23 Exemple : 452,5+117,5 A= *2 8 B= *2 6 Addition des mantisses alignées A= *2 8 +B= *2 8 S= *2 8 Normalisation de la mantisse S'= * ,5= 117,5= ……0

Représentation des nombres Représentez en notation à virgule flottante les nombres suivants: , ,

Représentation des nombres Représentez en notation à virgule flottante les nombres suivants: -125 = 12,35 = 1865,32 = = ……

Représentation des entiers négatifs Pour représenter les nombres négatifs, le plus simple est prendre un bit pour le signe et les autres pour la valeur absolu du nombre Par convention 0 indique un nombre positif et 1 indique un nombre négatif 5= 0101 et -5= 1101 mais on a deux représentations de 0 Ex: sur 4 bits 0=0000 mais on a aussi 0=1000 Autre inconvénient: la somme de deux nombres de signe différent donne un résultat faux. (5+ (-3)) = = soit 0

Représentation en complément à 1 Les nombres positifs sont écrits en base 2, pour les nombres négatifs on inverse tous les bits 5= 0101 donc –5 = 1010 Il y a toujours deux représentations de 0 Le résultat de la somme de deux nombres de signes différents donne une valeur qui diffère de 1 du résultat exact 5 + (-3)= = soit 1 si on ne tient pas compte du bit de retenue.

Représentation en Complément à 2 Identique au complément à 1 sauf que l’on ajoute 1 à la représentation du nombre négatif en complément à 1 +5 = 0101 (-5) c1 = 1010 (-5) c2 = 1011 Sur 4 bits, le nombre le plus grand est codé en C et vaut donc 7 (-7) c2 = 1001 et la combinaison 1000 correspond à -8 En C2 sur n bits on peut coder les nombres entre - 2 n-1 < N < 2 n-1 -1

Code de calcul Pour faire les calculs, on utilise toujours le code C2 Les nombres positifs sont représentés par leur valeur en base 2 précédée de 0 Les nombres négatifs sont l’inverse de la représentation positive + 1 Les résultats sont toujours juste si on reste dans la gamme de valeur que peut représenter le code avec le nombre de bits choisi.

Exercices: Codez les nombres suivants en C2 sur 6 bits

Réponses: Codez les nombres suivants en C2 sur 6 bits 12 = = = = = =

questions Quelles valeurs représentent ces nombres codés en C2?

Réponses Quelles valeurs représentent ces nombres codés en C2? = = = = = -32

Problèmes de dépassement Le fait d’additionner deux nombres positifs ou deux nombres négatifs avec le code C2 peut entraîner un dépassement de capacité Ex 3+6 = = 1001 = (-7) Ex (-4) + (-7) = = = 3 Cela n’est pas gênant car il est facile de le détecter: la somme de 2 nombres de même signe est un nombre de même signe.

Comment faire une soustraction? Une soustraction consiste à additionner un nombre avec l’inverse du second. Pour inverser un bit, on peut prendre une porte inverseuse ou une porte ou exclusif avec 1 branché sur une entrée a1a + 1= a

Comment faire une soustraction On prend un additionneur n bits Sur les entrées A on entre la valeur du premier nombre Sur les entrées B on entre les valeurs du second nombre en les inversant par une porte ou exclusif dont une entrée est à 1 On ajoute 1 sur la valeur de retenue d’entrée Suivant la valeur 0 ou 1 que l’on met sur cette entrée on fait donc une addition ou une soustraction.

Faire une soustraction avec additionneur =1 Vcc a0 an b0 bn

Additionneur_soustracteur Si Ec = 0 additionneur, si Ec=1 soustracteur =1 EC a0 an b0 bn

Additionneur/soustracteur On met 0 sur Add/sous pour avoir un additionneur On met 1 sur Add/sous pour avoir un soustracteur

Réalisation d’un multiplieur

Multiplication = suite d’additions On sait faire l’addition de deux nombres On sait donc réaliser un multiplieur en utilisant des additionneurs On obtient un premier résultat partiel en additionnant les deux premières lignes On ajoute à ce résultat partiel la troisième ligne et ainsi de suite Attention aux décalages Pour multiplier 2 nombres de n bits on a besoin de n-1 additionneurs de 2n bits

Multiplieur 4 bits