correction Td 2 SEMLALIA VACATAIRE

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 7

Université Cadi Ayyad

Faculté des Sciences


Département d’informatique

Série des TD N° 2

Exercice 1 :
1. Convertir les nombres fractionnaires suivants vers les bases indiquées.
a)
(1011,0011)2 vers la base dix. d)
(10,5625)10 vers la base deux.
b)
(7,7)8 vers la base dix. e)
(10,5625)10 vers la base seize.
c)
(4B,CC)16 vers la base dix. f)
(10,5625)10 vers la base huit

a) (1011,0011)_2 vers la base dix:


On divise la partie entière et la partie fractionnaire.
Partie entière (1011)_2 = 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 8 + 2 + 1 = 11.
Partie fractionnaire (0,0011)_2 = 0*2^-1 + 0*2^-2 + 1*2^-3 + 1*2^-4 = 0.125 + 0.0625 =
0.1875.
Donc (1011,0011)_2 = 11,1875 en base dix.

b) (7,7)_8 vers la base dix:


Partie entière (7)_8 = 7 en base 10.
Partie fractionnaire (0,7)_8 = 7 * 8^-1 = 7/8 = 0.875.
Donc (7,7)_8 = 7,875 en base 10.

c) (4B,CC)_16 vers la base dix:


Partie entière (4B)_16 = 4*16^1 + 11*16^0 = 64 + 11 = 75.
Partie fractionnaire (CC)_16 = C*16^-1 + C*16^-2 = 12/16 + 12/256 = 0.75 + 0.046875 =
0.796875.
Donc (4B,CC)_16 = 75,796875 en base 10.

d) (10,5625)_10 vers la base deux:

Étape 1 : Conversion de la partie entière 101010_{10}1010 en base 2

On divise la partie entière par 2 et on note les restes jusqu'à ce que le quotient devienne 0.

10÷2=5 quotient, reste 0


5÷2=2 quotient, reste 1
2÷2=1 quotient, reste 0
1÷2=0 quotient, reste 1

En lisant les restes de bas en haut, la partie entière 1010 en base 2 est 10102
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

Étape 2 : Conversion de la partie fractionnaire 0,562510 en base 2

On multiplie la partie fractionnaire par 2 jusqu'à ce que le résultat soit égal à 1 ou que l'on
atteigne une précision suffisante.

0,5625 × 2 =1,125 (partie entière : 1)


0,125× 2 = 0,25 (partie entière : 0)
0,25 × 2 = 0,5 (partie entière : 0)
0,5×2 = 1,0 (partie entière : 1)

En lisant les parties entières obtenues, la partie fractionnaire 0,562510 en base 2 est 0,10012

Étape 3 : Assemblage des deux parties

En combinant la partie entière et la partie fractionnaire, on obtient :

10,562510 = 1010,10012
f) (10,5625)_10 vers la base huit:

Étape 1 : Conversion de la partie entière 1010 en base 8


On divise la partie entière par 8 et on note les restes jusqu'à ce que le quotient devienne 0.
10÷8=1 quotient, reste 2
1÷8=0 quotient, reste 1
En lisant les restes de bas en haut, la partie entière 1010 en base 8 est 128.
Étape 2 : Conversion de la partie fractionnaire 0,562510 en base 8
On multiplie la partie fractionnaire par 8 jusqu'à ce qu'on atteigne une précision suffisante.
0,5625 × 8 = 4,5 (partie entière : 4)
0,5 × 8 = 4,0 (partie entieˋre : 4)

En lisant les parties entières obtenues, la partie fractionnaire 0,562510 en base 8 est 0,448
Étape 3 : Assemblage des deux parties
En combinant la partie entière et la partie fractionnaire, on obtient :
10,562510=12,448

e) (10,5625)_10 vers la base seize:


on suit la même methode
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

Exercice : 2
1. Représenter les nombres suivants (représentées en décimal) en standard IEEE 754
simple précision. Donner le résultat en hexadécimal.
a) 8,625 b) 10,50 c) -0,75

a) 8,625
 Partie entière : 8 => 1000
 Partie décimale : 0,625 => 0,101
 8,62510 => 1000,1012

 Normalisation IEEE 754 : <=> 1,0001010 x 23 (de la forme 1,xxxx où xxxx = mantisse)
 Décomposition du nombre en ses divers éléments :
 Bit de signe : 0 (Nombre >0)
 Exposant sur 8 bits biaisé à 127 => 3 + 127 = 130 => 10000010
 Mantisse sur 23 bits : 0001010 00000000 00000000 (remplir le reste avec des zéros à droite)

Signe Exposant biaisé mantisse

0 10000010 00010100000000000000000

Soit en hexadécimal : 410A000016


b) 10,5010
 Passage en binaire : 10,5010 --> 1010,12
 normalisation : 1,0101 * 23
 exposant : 127 + 3 = 130
 signe positif : 0
 représentation :

Signe Exposant biaisé mantisse


0 1000 0010 010 1000 0000 0000 0000 0000

 Soit en hexa. : 41 28 00 0016


c) -0,7510
 passage en binaire : 0,7510 --> 0,112
 normalisation : 1,1 * 2-1
 exposant : 127 + (-1) = 126
 signe négatif : 1
 représentation :
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

Signe Exposant biaisé mantisse


1 0111 1110 100 0000 0000 0000 0000 0000

 Soit en hexa. : BF 40 00 0016

2. Convertir les valeurs suivantes (représentées en décimal) en standard IEEE 754 Simple
précision. Donner le résultat en binaire.
a) 128 b) -32,75 c) 18,125 d) 0,0625

a) 12810 0100 0110 000 0000 0000 0000 0000 00002  86 00 00 0016
b) -32,7510 1100 0010 0000 0011 0000 0000 0000 00002  C2 03 00 0016
c) 18,12510 0100 0001 1001 0001 0000 0000 0000 00002  41 91 00 0016
d) 0,062510 0011 1101 1000 0000 0000 0000 0000 00002  3D 80 00 0016

3. Quelles sont les valeurs des nombres suivant représentés en virgule flottant en standard
IEEE 754 simple précision :
a) 1011 1101 0100 0000 0000 0000 0000 0000
b) 0101 0101 0110 0000 0000 0000 0000 0000
c) 1100 0001 1111 0000 0000 0000 0000 0000
d) 0011 1010 1000 0000 0000 0000 0000 0000

a) 1011 1101 0100 0000 0000 0000 0000 0000  -0.046875


b) 0101 0101 0110 0000 0000 0000 0000 0000  1.539 * 1013
c) 1100 0001 1111 0000 0000 0000 0000 0000  -30
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

Exercice : 3
1. Décoder la séquence de bit 43 4C 45 2D 49 4E 46 4F 52 4D 41 54 49 51 55 4516 si cette
séquence est considérée comme une chaîne de caractères ASCII 7 bits ?

En décodant chaque octet en ASCII :


43 = C, 4C = L, 45 = E, 2D = -, 49 = I, 4E = N, 46 = F, 4F = O, 52 = R, 4D = M,
41 = A, 54 = T, 49 = I, 51 = Q, 55 = E.
Donc la séquence correspond à 'CLE-INFORMATIQUE'
2. Décoder la séquence de bits (1010011 1101111 1110101 1101101 1101001 1100001)2 si
cette séquence est considérée comme une chaîne de caractères ASCII 7 bits ?

Nous séparons les bits en groupes de 7 (car ASCII est un code sur 7 bits) :
1010011 = S, 1101111 = o, 1110101 = u, 1101101 = m, 1101001 = i, 1100001 = a.
Donc la séquence correspond à 'Soumia'.

3. Coder vos noms et prénoms sous forme hexadécimal, décimal et binaire en ASCII.

Exercice : 4

On vous donne deux nombres : 37 et -58.

1. Représentez ces deux nombres en binaire sur 8 bits en utilisant le complément à 2 pour le
nombre négatif.
2. Effectuez l'addition de ces deux nombres en binaire.
3. Effectuez la soustraction de 37 - (-58) en utilisant le complément à 2.
4. Vérifiez s'il y a un débordement lors de l'addition et de la soustraction.
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

1. Représentation en binaire sur 8 bits

- 37 en binaire :
1. Convertissons 37 en binaire : 37 en décimal = 100101 en binaire.
2. Pour l'étendre sur 8 bits, on ajoute des zéros à gauche : 37 = 00100101.

- -58 en complément à 2 :
1. Convertissons 58 en binaire : 58 en décimal = 111010 en binaire.
2. Étendons à 8 bits : 58 = 00111010.
3. Inversion des bits pour obtenir le complément à 1 : Complément à 1 de 00111010 = 11000101.
4. Ajoutons 1 pour obtenir le complément à 2 : 11000101 + 1 = 11000110.
Donc, -58 = 11000110 en complément à 2 sur 8 bits.

2. Addition en complément à 2 : 37 + (-58)

Nous avons maintenant les deux nombres représentés en complément à 2 sur 8 bits :
- 37 = 00100101
- -58 = 11000110

Additionnons ces deux nombres binaires :


00100101 (37)
+ 11000110 (-58)
-------------
11101011

Le résultat est : 11101011 en binaire.

Interprétation :
Le bit de signe (le bit le plus à gauche) est 1, ce qui signifie que le résultat est un nombre négatif.
Pour convertir ce nombre en décimal :
1. Complément à 1 de 11101011 = 00010100.
2. Ajout de 1 pour obtenir le complément à 2 : 00010100 + 1 = 00010101.

En binaire, 00010101 correspond à 21 en décimal.


Puisque le résultat est négatif, 11101011 représente -21.
Université Cadi Ayyad
Faculté des Sciences
Département d’informatique

Donc, 37 + (-58) = -21.

3. Soustraction en complément à 2 : 37 - (-58)

Soustraire un nombre négatif est équivalent à ajouter son opposé. Ainsi, 37 - (-58) revient à faire 37
+ 58.

Nous avons déjà 37 en binaire : 37 = 00100101


Le nombre 58 en binaire sur 8 bits est : 58 = 00111010

Additionnons-les :
00100101 (37)
+ 00111010 (58)
-------------
01011111

Le résultat est 01011111, qui est un nombre positif (le bit de signe est 0).

Convertissons 01011111 en décimal : 01011111 = 95 en décimal.

Donc, 37 - (-58) = 95.

4. Détection de débordement

- Pour l'addition 37 + (-58) :


- Le premier nombre est positif (bit de signe = 0).
- Le deuxième nombre est négatif (bit de signe = 1).
- Le résultat est négatif (bit de signe = 1).
Il n'y a pas de débordement, car l'addition d'un nombre positif et d'un nombre négatif ne
provoque généralement pas de débordement.

- Pour la soustraction 37 - (-58) :


- Les deux nombres (37 et 58) sont positifs après transformation.
- Le résultat est également positif (bit de signe = 0).
Il n'y a pas de débordement, car l'addition de deux nombres positifs n'a pas dépassé la
capacité du format binaire sur 8 bits (le résultat reste dans la plage des valeurs représentables).

Vous aimerez peut-être aussi