Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C=...

38
Exercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D 2) Ecrire A , B, C et D en octal Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes A=14671 B=143746 C=15035 D = 6415 3) Faire la somme A+B en hexadécimal 19B9 + C7E6=E19F 4) Faire la différence A-B en hexadécimal 19B9 - C7E6=19B9

Transcript of Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C=...

Page 1: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Exercice1) Ecrire en hexadécimal les nombres

A=1100110111001 B=1100011111100110C= 1 1010 0001 1101 D= 110 100 001 101

A= 19B9 B=C7E6 C = 1A1D D=D0D

2) Ecrire A , B, C et D en octal

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

A=14671 B=143746 C=15035 D = 6415

3) Faire la somme A+B en hexadécimal

19B9 + C7E6=E19F

4) Faire la différence A-B en hexadécimal

19B9 - C7E6=19B9

Page 2: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation des nombres entiers signésIl existe plusieurs procédés permettant de représenter des nombresentiers positifs et négatifs:• La représentation par valeur signée;• La représentation par complément à un;• La représentation par complément à deux.Ces trois méthodes possèdent des points communs:

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 2

• Le signe d’un nombre est représenté par le bit de poids fort (bit designe). Celui-ci est égal à

� 0 pour les nombres positifs;� 1 pour les nombres négatifs.

• La représentation d’un nombre positif est toujours identique à sareprésentation binaire non signée de même taille.

Page 3: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation des nombres entiers signésExemple:La représentation sur 8 bits du nombre −42 est égale à10101010. En effet• Ce nombre est négatif, car le bit de signe est égal à 1;• La représentation binaire non signée sur 7 bits de

42 = | − 42| est 0101010.

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 3

Selon ce procédé, le nombre v représenté par le groupe de bits(bn-1, bn-2, …..b1,b0 ) est égal à

si bn-1 = 1 v est négatif et si bn-1 =0 v est positif

Page 4: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation des nombres entiers signés

Les valeurs représentablesExemple :A l’aide de 4 bits, la représentation par valeur signée permet d’encoder:

• tous les éléments de l’intervalle [0, . . . , 7=23 − 1](bit de signe égal à 0)

0 0 0 00 1 0 0

1 0 0 01 1 0 01 0 1 0

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 4

• tous les éléments de l’intervalle[-7=− 2n−1 +1, . . . , 0] (bit de signe égal à 1).

L’ensemble des valeurs représentables est doncl’intervalle [−7, . . . , 7].

0 0 1 00 1 1 00 0 0 10 1 0 00 0 1 00 1 1 1

1 0 1 01 1 1 01 0 0 11 1 0 01 0 1 01 1 1 1

Page 5: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation des nombres entiers signésLes valeurs représentablesEn général:A l’aide de n bits, la représentation par valeur signée permetd’encoder• les éléments de l’intervalle [0, . . . , 2n−1 − 1] (bit de signe égal à 0),et• les éléments de l’intervalle [− 2n−1 +1 0] (bit de signe égal à 1)

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 5

• les éléments de l intervalle [ 2 +1, . . . , 0] (bit de signe égal à 1).

L’ensemble des valeurs représentables est donc l’intervalle[− 2n−1 +1, . . . , 2n−1 − 1].

Remarques:• Le nombre 0 possède deux représentations distinctes (+0 et -0);• Ce procédé rend difficile le calcul des opérations arithmétiques.

Page 6: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation par complément à (n-1)Principe:Soit un nombre A écrit en base n. En mathématique, on appellera

complément à (n-1) de A le nombre noté B tel que A + B = n-1.Le complément à (n-1) s’appelle aussi complément restreintExemple:Soit à représenter sur 8 bits par complément à 1 du nombre (42)10

La représentation binaire sur 8 bits de 42

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 6

(42)10 = (00101010)2

Le complément à 1 est 11010101• Le complément à 1 est très facile à obtenir puisqu'il suffit de remplacer les"1" par des "0", et vice versa.

• (8 bits) (7 bits)

Page 7: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation par complément à (n-1)

Exemple:

En base 10 le complément restreint à 542 (A) est (B) :A + B = n-1 B= n-1 - A ; n= 10

B = 999 – 542 = 457

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 7

En base 8 le complément restreint à 542 est :

777-542 =

En base 16 le complément restreint à 542 est

FFF-542 =

235

ABD

Page 8: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation par complément à (n-1)Selon ce procédé, le nombre v représenté par le groupe de bitsbn-1 bn-2 …..b1b0 est égal à

si b = 1 v est négatif et si b = 0 v est positif

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 8

si bn-1 = 1 v est négatif et si bn-1 = 0 v est positif

Exemple:

(12)10 = (1100)2 représentation sur 4 bits non signée

(-12)10 =(11100)2 représentation sur 5 bits par valeur signée

(-12)10 =(10011)2 représentation sur 5 bits par complément à 1

Page 9: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation par complément à (n-2)La représentation d’un nombre binaire A écrit sur 5 bits

A =10111alors le complément à un de A est CR(A)

CR(A) =01000

A + CR(A) =11111CR(A) =11111- A

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 9

En ajoutant 1 à CP1(A)A + CR(A) +1 =11111 + 1

A + CR(A)+1 =100000 ⇒⇒⇒⇒ - 0A + CV(A) = 0

CV(A) est bien l’opposé de A ⇒ CV(A) = - A

Page 10: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

La représentation par complément à (n-2)

Exemples:� La représentation sur 8 bits signé du nombre -42

� La représentation sur 8 bits du nombre 42 est égale à 0 0101010 (8bits)� CR(42)=01010101 ⇒ CV(42)= CR(42) + 1� CV(42)=11010110 (8bits)

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 10

Donc,� la représentation sur 8 bits signés du nombre 42 est égale à: 0 0101010� Le CV(42) sur 8 bits est égale à: 1 1010110

CV(42) est négatif ( le bit de signe est égal à 1).

La somme conduit à 1 00 00 00 000 0101010

+1 1010110

____________

= 1 0 0000000

Page 11: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Compléments binairesSoit à réaliser l’opération 15 - 27 en complément vrai.15 = 0000 1111 ⇒ 0000 111127 = 0001 1011 ⇒ CV ⇒ 0110 0101

0111 0100

R=0 ⇒ CV(0111 0100) = 1000 1100 ⇒ -12 ⇒ Résultat <0

Pas deretenue

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 11

Soit à réaliser l’opération 27 - 15 en complément vrai.27 = 0001 1011 ⇒ 0001 101115 = 0000 1111 ⇒ CV ⇒ 1111 0001

1 0000 1100

R=1 ⇒ 000 1100 ⇒ 12 ⇒ Résultat > 0

Retenue

Page 12: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Resumé

A - B A + CV(B)

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Report

>0

< 0

oui

non

Résultat

CV(Résultat)

Page 13: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Compléments binaires

Soit à réaliser en binaire l’opération (112)10 – (58)10 en complémentvrai.

112 = 0111 0000 ⇒ 0111 000058 = 0011 1010 ⇒ CR+1 ⇒ 1100 0110

(1) 0011 0110 report ⇒ > 0Résultat ⇒ 0011 0110 ⇒ 54

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 13

Page 14: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Codification des nombres entiers:Compléments binaires.

Considérons le système décimal

Calculer en décimal (236-525) en utilisant le complément vrai

ComplémentVrai

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 14

- 289

ComplémentVrai

VraiPas de Report

résultat < 0

Page 15: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Codification des nombres entiers:Entiers négatifs

Exercice : Quel est le CR de l'octet 16(16).

1514/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Réaliser l’opération (2D)16 – (53)16 en complément restreint

(2D)16 – (53)16 = (26)16 Pas de report ⇒ < 0 ⇒ 2×161+6×160 =38 ⇒ (-38)10

(45)10 - (83)10 = (-38)10

Page 16: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des nombres réels

Les nombres que nous avons utilisés jusqu’alors étaient desnombres entiers positifs ou négatifs. Il est évidemment possible derencontrer des nombres fractionnaires qu’il conviendra de pouvoir coderen binaire.Il existe de nombreuses méthodes pour représenter ces nombres

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 16

Il existe de nombreuses méthodes pour représenter ces nombres,parmi lesquelles :• codage de la partie entière ;• codage en virgule fixe ;• codage en virgule flottante ;• codage au format Qn ;• …

Page 17: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des nombres réels

Codage de la partie entièreCette méthode consiste à ne coder que la partie entière du nombre réel.Elle n’est que très peu utilisée, et fourni des résultats approximatifs.

Exemple : 25,375

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 17

(25)10 ⇒ (11001)2

Page 18: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des nombres réels

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 18

Page 19: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Exemple

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 19

Cette méthode à l’inconvénient d’utiliser beaucoup de bits après la virgule si lenombre à coder comporte beaucoup de chiffre après la virgule.

Page 20: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Exercice

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 20

Page 21: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombres binaires à virgule fixe

N = (00011010110)2(7,4) = (13.375)10

N = (0001101,0110)2 = (13.375)10

Mot de 11 chiffres avec (n,m)= (7,4) ⇒ n+m=11

n : chiffre avant la virgule ; m : chiffre après la virguleExemple mots de 3 bits

2114/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Exemple mots de 3 bits(3,0) (2,1) (1,2) (0,3) (n,m)

� 010 2 1 0,5 0,25� 011 3 1,5 0,75 0,375� 100 4 2 1 0,5� 101 5 2,5 1,25 0,625� 110 6 3 1,5 0,75� 111 7 3,5 1,75 0,875

Page 22: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante

Afin de représenter les très grands ou très petits nombres, nousutilisons généralement une méthode assez pratique appelée notationscientifique.Rappel : 125.68 = 1.2568 × 102

2214/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

En binaire:

La norme IEEE 754 normalise cette représentation. Elle distingue 2représentations, celle en simple précision (sur 32 bits), et celle endouble précision (sur 64 bits).

Page 23: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante

Représentation en simple précision

2314/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Exposant – calage = décalageExposant = décalage + 2k-1-1

Page 24: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante

Représentation en simple précision

Exemple 1: Traduire en binaire format flottant simple précision 32 bitsle nombre : - 1039,01) Signe : 12) Traduire en binaire (1039)10 = (0000 0100 0000 1111)2

3) Constituez la mantisse : 1 mantisse × 2n

2414/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

3) Constituez la mantisse : 1, mantisse × 2n

0000 0100 0000 1111 = 1,00 0000 1111 × 210

(décalage de dix chiffres vers la droite après la virgule )

0 0 0 0 0 0 1 1 1 11

Page 25: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante

Représentation en simple précision4) Constituez le calage IEEE en simple précision 8 bits : 28 - 1 - 1 = 1275) Constituez l'exposant : 0000 0100 0000 1111 = 1,00 0000 1111 × 210

exposant = 10 + calage = 10 +127= 1374) Exprimer l'exposant en binaire (137)10 = (1000 1001)2

5) Etendre la partie fractionnaire à 23 bits

2514/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

mantisse sur 23 bits = 000 0001 1110 0000 0000 0000

(- 1039,0)10 = (1100 0100 1000 0001 1110 0000 0000 0000)2

En hexadecimal C4 81 E0 00

0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 01 0 0 0 1 0 0 11

Page 26: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante� La norme IEEE définit la façon de coder un nombre réel:

la forme 1,xxxxx...×2n (dans notre exemple 1,0101 × 22).� Cette norme se propose de coder le nombre sur 32 bits et définit trois

composantes :� le signe est représenté par un seul bit, le bit de poids fort (celui le

plus à gauche)� l'exposant est codé sur les 8 bits consécutifs au signe

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 26

� la mantisse (les bits situés après la virgule) sur les 23 bits restants

� Ainsi le codage se fait sous la forme suivante :seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm

Page 27: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule : Règles� Certaines conditions sont toutefois à respecter pour les

exposants :� l'exposant 00000000 est interdit� l'exposant 11111111 est interdit. On s'en sert toutefois

pour signaler des erreurs, on appelle alors cetteconfiguration du nombre NaN, ce qui signifie Not a NumberIl f t j t 127 (01111111) à l' t

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 27

� Il faut rajouter 127 (01111111) à l'exposant pour uneconversion de décimal vers un nombre réel binaire. Lesexposants peuvent ainsi aller de -254 à 255

Page 28: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottante

Représentation en double précision (64 bits)� On utilise la même méthode que pour le codage en simple

précision, sauf que l’exposant est codé sur 11 bits et la mantisse sur52 bits.

2814/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

exposant codé = exposant réel + excédent

Page 29: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule flottanteLimites

2914/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Page 30: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Nombre binaire à virgule : ExempleSoit à coder en simple précision la valeur 525,5.� 525,5 est positif (-1)0 donc le 1er bit sera s = 0.� Sa représentation en base 2 est la suivante : 1000001101,1� En normalisant, on trouve : 1,0000011011 × 29

� On ajoute 127 à l'exposant 9 ce qui donne 136, soit en base 2 :eeeeeeee = 10001000

� La mantisse est composée de la partie décimale de 525,5 enbase 2 normalisée, c'est-à-dire 0000011011.

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 30

base 2 normalisée, c est à dire 0000011011.� Comme la mantisse doit occuper 23 bits, il est nécessaire

d'ajouter des zéros pour la compléter :00000110110000000000000

La représentation du nombre 525,5 en binaire avec la norme IEEEest donc :0 1000 1000 000001101100000000000000100 0100 0000 0011 0110 0000 0000 0000(4403600 en hexadécimal)

Page 31: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Exemple 2Ecrire la valeur -0,625 en simple précision avec le format IEEE754Le bit s vaut 1 car 0,625 est négatif0,625 s'écrit en base 2 de la façon suivante : 0,101On l’écrit sous la forme normalisée 1.01 x 2-1

Par conséquent l’exposant E = 127 - 1 �E= 126 (soit 1111110 enbinaire)

la mantisse est 01000000000000000000000

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 31

La représentation du nombre 0,625 en binaire avec la norme IEEEest : 1 1111 1110 01000000000000000000000

1111 1111 0010 0000 0000 0000 0000 0000 binaire

15 15 2 0 0 0 0 0 décimal(FF 20 00 00 en hexadécimal)

Page 32: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des nombres réels :norme IEEE

On veut coder le nombre 6,625 en simple précision avec le format IEEE� 6,625 vaut 110,1010 en binaire.� On décale la virgule vers la gauche pour déterminer le bon

exposant : 110,1010 = 1,101010.22

� S=0 (car le nombre est positif)EXPOSANT 2 127 129 10000001 bi i (i i

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 32

� EXPOSANT=2+127=129=10000001 en binaire (ici on a unbiais de 127)

� MANTISSE= on garde la partie droite de la virgule et oncomplète avec des 0 pour obtenir 23 bits, donc10101000000000000000000.

� Finalement on obtient 6,625 codé avec le formalismeIEEE754 single précision :

Page 33: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des nombres réels :norme IEEESoit à codifier en simple précision le nombre 3,25.�On va normaliser la représentation en base 2 de telle sorte qu’elles’écrive sous la forme 1, … x 2n

� Dans notre exemple 11, 01 = 1, 101 x 21

� La représentation IEEE code séparément le signe du nombre (ici+), l’exposant n (ici 1), et la mantisse (la suite de bits après lairg le) le to t s r 32 bits

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes14/12/2011 33

virgule), le tout sur 32 bits.� Le codage a la forme :s eeeeeeee mmmmmmmmmmmmmmmmmmmmmmm.

3,125 � 0100000001010000000000000000000000

signe exposant mantisse

Page 34: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des caractères: code ASCII

Les caractères sont des données non numériques � symbolesalphanumériques, incluent

� les lettres majuscules et minuscules,� les symboles de ponctuation (& ~ , . ; # " - etc...),� les chiffres.

Un texte ou chaîne de caractères sera représenté comme une suite

3414/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Un texte, ou chaîne de caractères, sera représenté comme une suitede caractères.Le codage des caractères est fait par une table de correspondanceindiquant la configuration binaire représentant chaque caractère.Le code ASCII (American Standard Code for Information Interchange)

Page 35: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des caractères: Code ASCII

� Le code ASCII représente chaque caractère sur 7 bits

3514/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

� A chaque caractère est associé une configuration de 8 chiffresbinaires (1 octet), le chiffre de poids fort (le plus à gauche) étanttoujours égal à zéro.

Page 36: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des caractères: Remarques

� Plusieurs points importants à propos du code ASCII :

� Les codes compris entre 0 et 31 ne représentent pas des caractères,ils ne sont pas affichables.

� Les lettres se suivent dans l’ordre alphabétique (codes 65 à 90 pour

3614/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

� Les lettres se suivent dans l ordre alphabétique (codes 65 à 90 pourles majuscules, 97 à 122 pour les minuscules.

� On passe des majuscules � minuscules en modifiant le 5ème bit, cequi revient à ajouter 97-65= 32 au code ASCII décimal (32: 0010000)

G (71) � 01000111 g (103) �01010111

Page 37: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des caractères - chiffres

� Les chiffres sont rangés dans l’ordre croissant (codes 48 à 57), et les4 bits de poids faibles définissent la valeur en binaire du chiffre.

3714/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes

Page 38: Exercice - SiteWExercice 1) Ecrire en hexadécimal les nombres A=1100110111001 B=1100011111100110 C= 1 1010 0001 1101 D= 110 100 001 101 A= 19B9 B=C7E6 C = 1A1D D=D0D

Représentation des caractères - chiffres3814/12/2011

Pr. M. Benjelloun Pr. H. El alaoui Pr. H. Garmes