Corrigé de la série 2 Exercice 1 a) Les intervalles de codage sur 8 bits et sur

Corrigé de la série 2 Exercice 1 a) Les intervalles de codage sur 8 bits et sur 16 bits : S/VA CA1 CA2 1 octet [-(27-1), +(27-1)] [-( 27-1), +( 27-1)] [- 27, +( 27-1)] 2octets [-(215-1),+( 215-1)] [-(215-1), +( 215-1)]] [-215, +( 215-1)] b) -(512)10=-(100000000) 2 on ne peut pas coder cette valeur sur un octet, pour l'encoder il faut au minimum 2 octets : -(512)10=-(0000000100000000) 2=(1000000100000000) SVA sur 2 octets c) Décimal Binaire S/VA CA1 CA2 +27 +(00011011) 00011011 00011011 00011011 -45 -(00101101) 10101101 11010010 11010011 -117 -(01110101) 11110101 10001010 10001011 -128 -(10000000) impossible impossible 10000000 -86 -(01010110) 11010110 10101001 10101010 -14 -(00001110) 10001110 11110001 11110010 Exercice 2 a) ( -4)10= ( ?)16 cà1 sur 1 octet ça veut dire sur 8 bits. Premièrement il faut écrire -4 en binaire simple sur 8 bits: ( -4)10 = -(0000 0100)2. Pour trouver son complément à 1 on inverse tous les bits puisque c'est un nombre négatif : ( -4)10 = (1111 1011)cà1 pour trouver le nombre en hexadécimale on regroupe les chiffres et donc ( -4)10 = ( F B)cà1 Hexadécimal ( -4)10= ( ?)16 cà1 sur 2 octets ( -4)10 = -(0000 000 0000 0100)2 et même chose pour trouver son complément à 1 on inverse tous les bits puisque c'est un nombre négatif : ( -4)10 = (1111 1111 1111 1011)cà1 pour trouver le nombre en hexadécimale on regroupe les chiffres et donc (-4)10 =(F F F B)cà1 Hexadécimal (+4)10= ( ?)16 cà1 sur 1 octet Premièrement il faut écrire +4 en binaire simple sur 8 bits: ( +4)10 = +(0000 0100)2. Et puisque c'est un nombre positif la représentation en cà1 reste la même on n'inverse pas les bits il suffit seulement de vérifier que le nombre appartient à l'intervalle de codage des nombres cà1 sur 8 bits Et donc ( +4)10 = (0000 0100)cà1 pour trouver le nombre en hexadécimale on regroupe les chiffres et donc ( +4)10 = ( 0 4)cà1 Hexadécimal (+4)10= ( ?)16 cà1 sur 2 octets Même chose ( +4)10 = (0000 0000 0000 0100)cà1 pour trouver le nombre en hexadécimale on regroupe les chiffres ( +4)10 = ( 0 0 0 4)cà1 Hexadécimal b) 1. (AA) 16 SVA = ( ?)16 cà1= ( ?)16 cà2 (AA) 16 SVA = (1010 1010)SVA=-(0010 1010)2 puisque le bit de poids fort est 1 donc c'est un nombre négatif, on trouve sa valeur en binaire puis on le code en cà1 en inversant les bits et en cà2 en inversant les bits après le premier un : (AA) 16 SVA = (1010 1010)SVA=-(0010 1010)2 =(11010101)cà1 =(11010110)cà2 =( D 5)cà1 Hexa=( D 6 )cà2 Hexa 2. (FF) 16 SVA= (1111 1111)SVA=-(0111 1111)2 =(1000 0000)cà1 = (1000 0001)cà2 = ( 8 0)cà1 Hexa=( 8 1 )cà2 Hexa c) Que vaut le code (C0) 16 1. s’il s’agit d’un nombre non signé ? (C0) 16=(1100 0000) 2=(192) 10 2. s’il s’agit d’un nombre signé ? ---> S'il s'agit d'une représentation SVA alors (C0) 16 SVA=(1100 0000) 2 SVA= - (0100 0000) 2 = (- 64) 10 --->S'il s'agit d'une représentation CA1 alors (C0) 16 cà1=(1100 0000) 2 cà1= - (0011 1111) 2 = (- 63) 10 ---> S'il s'agit d'une représentation CA2 alors (C0) 16 cà2=(1100 0000) 2 cà1= - (0100 0000) 2 = (- 64) 10 d) (FFFF)CA1 =(1111 1111 1111 1111) 2 cà1= - (0000 0000 0000 0000) 2 = - (0) 10 (7FFF)CA1 =(0111 1111 1111 1111) 2 cà1= + (0111 1111 1111 1111) 2 = + (32767) 10 (8000)CA2 =(1000 0000 0000 0000) 2 cà2= - (1000 0000 0000 0000) 2 = - (32768) 10 (00FF)CA2 =(0000 0000 1111 1111) 2 cà2= + (0000 0000 1111 1111) 2 = + (255) 10 Exercice 3 Les additions en complément à 2 sur 6 bits: (107)10 + (−67)10 =(?) cà2 (107)10 = (01101011)cà2 (−67)10 = -(01000011)2 = (10111101)cà2 10 11 11 10 11 10 11 1 + 1 0 1 1 1 1 0 1 =(10 0 1 0 1 0 0 0)cà2 retenue =+(00101000)2 = (+ 40)10 (−106)10 + (−5)10 =(?) cà2 (−106)10 =-(01101010)2 =(10010110)cà2 (−5)10 =-(00000101)2 =(11111011)cà2 11 10 10 11 10 11 1 0 + 1 1 1 1 1 0 1 1 =(1 1 0 0 1 0 0 0 1)cà2 retenue =-(01101111)2 = (-111)10 (111)10 + (25)10 (111)10 = +(01101111)2 = (01101111)cà2 (25)10= +(00011001)2 = (00011001)cà2 10 11 11 10 11 11 11 1 + 0 0 0 1 1 0 0 1 =( 1 0 0 0 1 0 0 0)cà2 : Nombre négatif illogique puisqu'on n'a que des entiers positifs La cause est que la somme des deux nombres n'appartient pas à l'intervalle de codage de cà2 sur 8 bits qui est [-128,+127] est le résultat est (111)10 + (25)10 = 136. (−126)10 + (−85)10 (−126)10 =-(01111110)2 =(10000010)cà2 (−85)10 =-(01010101)2 =(10101011)cà2 11 0 0 0 0 10 1 0 + 1 0 1 0 1 0 1 1 =( 1 0 0 1 0 1 1 0 1)cà2 retenue : Nombre positif illogique puisqu'on n'a que des entiers négatifs La cause est que la somme des deux nombres n'appartient pas à l'intervalle de codage de cà2 sur 8 bits qui est [-128,+127] est le résultat est (-126)10 + (-85)10 = -211. Exercice 4 1. Représenter en virgule flottante (IEEE 754 simple précision) les nombres réels suivants : (+ 45)10 (-160.75)10 (-32.625)10 (+13.5)10 (+ 45)10 = +(101101)2 = +( 1.01101)2 * 2 +5 La mantisse M= ( 01101)2 Le signe = 0 (positif ) L'exposant réel Er = 5 donc l'exposant biaisé Eb = Er+127 = 5 + 127 = 132 Eb=(10000100)2 Et alors la représentation en virgule flottante (IEEE 754 simple précision) est : 0 1 0 0 0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S Eb M (-160.75)10= -(10100000.01)2 0.75 * 2 = 0.50 (160)10 = (10100000)2 en utilisant la division successive 0.50* 2 = 1.0 -(10100000.01)2 = -(1.010000001)2 * 27 s=1 M= (010000001)2 Er=7, Eb=Er+127=7+127=134=(10000100)2 Et alors la représentation en virgule flottante (IEEE 754 simple précision) est : 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S Eb M (-32.625)10 = -(100000.101)2 = -( 1.00000101)2 * 2 +5 0.625 * 2 = 1.250 0.25*2 = 0.50 0.50*2 = 1.0 La mantisse M= ( 01101)2 Le signe = 1 (négatif ) L'exposant réel Er = 5 donc l'exposant biaisé Eb = Er+127 = 5 + 127 = 132 Eb=(10000100)2 Et alors la représentation en virgule flottante (IEEE 754 simple précision) est : 1 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S Eb M (+13.5)10 = = -(1101.1)2 = -( 1.1011)2 * 2 +3 0.50*2 = 1.0 La mantisse M= ( 1011)2 Le signe = 1 (négatif ) L'exposant réel Er = 3 donc l'exposant biaisé Eb = Er+127 = 3 + 127 = 130 Eb=(10000010)2 Et alors la représentation en virgule flottante (IEEE 754 simple précision) est : 1 1 0 0 0 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S Eb M 2. Convertir en décimal les nombres suivants (écrits en IEEE 754 simple précision): (17BE0000)16 = (0001 0111 1011 1110 0000 0000 0000 0000) S Eb M Eb = (00101111)2 = Er + 127 ==> Er = Eb - 127 = 47-127= -80 (17BE0000)16 = + (1.011111)2* 2-80 = + (1011111)2* 2-74 = (+ 95) * 2-74 (C3F00000)16 = (1100 0011 1111 0000 0000 0000 0000 0000) S Eb M Eb = (10000111)2 = Er + 127 ==> Er = Eb - 127 = 128+7-127= + 8 (C3F00000)16 = + (1.111)2* 2+8 = + (1111)2* 2+5 = (+ 15)10 * 2+5 = (480)10 Exercices supplémentaires Exercice 1 1. Coder sur 4 bits les entiers +7, +2, 0, −2, −7 et −8, +8 avec les représentations suivantes :  Signe et valeur absolue : +7=0111 ; +2=0010 ; 0=0000 ou 1000 ; -2=1010 ; -7=1111 ; -8 et +8 n’est pas représentable sur 4 bits  Complément à 1 (Cà1); +7=0111 ; +2=0010 ; 0=0000 ou 1111 ; -2=1101 ; -7=1000 ; -8 et +8 n’est pas représentable sur 4 bits  Complément à 2 (Cà2) : +7=0111 ; +2=0010 ; 0=0000 ; -2=1110 ; -7=1001 ; -8=1000 +8 n’est pas représentable sur 4 bits 2. Indiquer la valeur codée par la suite 1101100101110101 qui représente un entier signé en complément à 2 sur 16 bits. Correction : C’est un nombre négatif. Complément à 2 = - 0010011010001011 =−9867.  Même question avec la suite 0001000011101101. Correction : C’est un nombre positif. Complément à 2 =+ 0001000011101101 uploads/S4/ corrige-de-td2 1 .pdf

  • 39
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Jul 07, 2021
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 0.4177MB