Chapitre 1: Système de numération et    représentation des données                                       1
Sommaire   Introduction   Système décimal, binaire, octal et hexadécimal   Conversion entre les bases   Opérations arithmé...
Comprendre c’est quoi un système de numérationApprendre la méthode de conversion d’un système à un autre Apprendre à faire...
   Nous avons pris lhabitude de représenter les nombres en    utilisant dix symboles différents: 0 , 1 , 2 , 3 , 4 , 5 , ...
5
   On utilise dix symboles différents:        {0,1,2,3,4,5,6,7,8,9}   N’importe quelle combinaison des symboles { 0 , 1 ...
•     Soit le nombre 1978, ce nombre peut être écrit sous la forme suivante :             1978           1000         900 ...
   Sur une seule position : 0 ,1,2,3,4,5,….9= 101-1   Sur deux positions : 00 , 01,02, …..,99=102-1   Sur trois positio...
9
Supposons qu’on a 14 jetons , si on forme des groupes de 10 jetons. Onva obtenir 1 seul groupe et il reste 4 jetons.      ...
. Maintenant on va former des groupes de 2 jetons ( on obtient 7 groupes) . Par la suite on va regrouper les 7 groupes 2 à...
•   Dans le système binaire, pour exprimer n’importe quelle      valeur on utilise uniquement 2 symboles : { 0 , 1}       ...
•     Sur un seul bit : 0 , 1            Sur 3 Bits                                   Binaire        Décimal              ...
•     8 symboles sont utilisés dans ce système:            {0,1,2,3,4,5,6,7}•     Exemple 1 :                             ...
Décimal   Hexadécimal                                                                      0         0                    ...
   Dans une base X , on utilise X symboles distincts pour    représenter les nombres.   La valeur de chaque symbole doit...
17
•          Cette conversion est assez simple puisque il suffit de faire le                   développement en polynôme de ...
   Effectuer les transformations suivantes à la base 10    ?    ◦ (123)6=(?)10    ◦ (1100,11)2 =(?)10    ◦ (1ABC)16 =(?)1...
Le principe consiste à faire des divisions successives du nombre sur2 , et prendre le reste des divisions dans l’ordre inv...
    Un nombre réel est constitué de deux parties : la partie entière     et la partie fractionnelle.    La partie entièr...
    Exemple 2: (0,6)10=(?)2        0,6 * 2 = 1,2         0,2 * 2 = 0,4                             (0,6)= (0,1001)2      ...
   La conversion se fait en prenant les restes des      divisions successives sur la base X dans le sens      inverse.Exe...
43       2                                          43        51        21    2                                          3...
   Il n’existe pas de méthode pour passer d’une base b1 à une    autre base b2 directement.   L’idée est de convertir le...
Exemple : ( 34)5=(?)7                          1         0      ( 34 ) 5      3*5       4*5        15   4       (19 ) 10  ...
Octal   Binaire. En octal chaque, symbole de la base s’écrit sur 3          0       000bits en binaire.                   ...
. L’idée de base est de faire des regroupements de 3 bits à partir du poids faible. . Par la suite remplacer chaque regrou...
Décimal   Hexadécimal                                                          0         0                                ...
. L’idée de base est de faire des regroupements de 4 bits à partir du poids faible.Par la suite remplacer chaque regroupem...
0           0                       1                        1+           +                   +                           ...
1       1          4      3      6      5  +                 4      5      1         5       8      11        6En octal 8 ...
1                4          8     6         5+                7      A         5         1               12       18      ...
   Effectuer les opérations suivantes et transformer le    résultat au décimal à chaque fois:   (1101,111)2+(11,1)2=(?)2...
. Les machines numériques utilisent le système binaire.. Dans le système binaire : uniquement 2 symboles sont utilisés : 0...
36
37
Code ASCII ( American Standard Code for Information Interchange)                                                          ...
39
   Il existe deux types d’entiers :    ◦ les entiers non signés ( positifs )    ◦ et les entiers signés ( positifs ou nég...
    Si on travail sur n bits , alors le bit du poids fort est utilisé     pour indiquer le signe :      1 : signe négati...
Sur 3 bits on obtient : signe   VA     valeur                                 Les valeurs sont comprises • 0       00     ...
   C’est une représentation assez simple .   On remarque que le zéro possède deux représentations +0 et    -0 ce qui con...
   On appel complément à un d’un nombre N un autre    nombre N’ tel que :                          N+N’=2n-1    n : est l...
   Pour trouver le complément à un d’un nombre, il    suffit d’inverser tous les bits de ce nombre : si le    bit est un ...
   Dans cette représentation , le bit du poids fort nous indique le    signe ( 0 : positif , 1 : négatif ).   Le complém...
Si on travail sur 3 bits :                      Valeur en    Valeur en       Valeur                      CA1          bina...
Sur 3 bits on remarque que les valeurs sont comprises •                                         entre -3 et +3            ...
   Si on suppose que a est un nombre sur n bits alors :                         a + 2 n = a modulo 2n    et si on prend l...
Si on prend deux nombres entiers a et b sur n bits , on •      remarque que la soustraction peut être ramener à une       ...
   Trouver le complément à vrai de : 01000101 sur 8 bits ?CA2(01000101)= CA1(01000101)+ 1CA1(01000101)= (10111010)CA2(010...
   Dans cette représentation , le bit du poids fort nous indique le    signe ( 0 : positif , 1 : négatif ).   Le complém...
Si on travail sur 3 bits :                   Valeur en     Valeur en valeur                   CA2           binaire       ...
Sur 3 bits on remarque que les valeurs sont comprises entre -4 et +3                            -4 ≤ N ≤ +3               ...
Effectuer les opérations suivantes sur 5 Bits , en utilisant la représentation en CA2                                     ...
1 0 1 1 1                              1 0 1 1 1 -9               +                        -9          +                  ...
   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 (O...
58
   Un nombre réel est constitué de deux parties : la    partie entière et la partie fractionnelle ( les deux    parties s...
   Dans cette représentation la partie entière est    représentée sur n bits et la partie fractionnelle sur p bits    , e...
   Chaque nombre réel peut s’écrire de la façon    suivante :                   N= M * b e    ◦ M : mantisse ,    ◦ b : l...
   Dans cette représentation sur n bits :    ◦ La mantisse est sous la forme signe/valeur absolue       1 bit pour le si...
   On veut représenter les nombres ( 0,015)8 et -( 15, 01)8 en    virgule flottante sur une machine ayant le format suiva...
- (15,01)8 = - (001101,000001)2= - 0,1101000001 * 24  Signe mantisse : négatif ( 1)  Mantisse normalisée : 0,1101000001  E...
   en complément à 2, l’intervalle des valeurs qu’on peut    représenter sur p bits :                   -2     (p -1)    ...
   Avec l’exposant biaisé on a transformé les exposants    négatifs à des exposants positifs en rajoutons à    l’exposant...
   On veut représenter les nombres ( 0,015)8 et -( 15, 01)8en    virgule flottante sur une machine ayant le format suivan...
- (15,01)8=(001101,000001)2= 0,1101000001 * 24                      Signe mantisse : négatif ( 1)              Mantisse no...
69
   Pour passer du décimal au binaire , il   Décimal   Binaire    faut effectuer des divisions             0         0000 ...
1    2     9               5    6     20001       0010   1001     0101       0110   0010129 = ( 0001 0010 1001)2    562 = ...
   le passage d’un mot-code au suivant    entraînera toujours le changement d’un bit et    d’un seul.    le code gray n’...
   Les caractères englobent : les lettres alphabétiques ( A, a, B ,    B,.. ) , les chiffres , et les autres symboles ( >...
   ASCII: American Standard Code for    Information Interchange.                                        74
Fin du premier      Chapitre                 75
Prochain SlideShare
Chargement dans…5
×

Circuits logiques1

1 229 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 229
Sur SlideShare
0
Issues des intégrations
0
Intégrations
8
Actions
Partages
0
Téléchargements
108
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Circuits logiques1

  1. 1. Chapitre 1: Système de numération et représentation des données 1
  2. 2. Sommaire Introduction Système décimal, binaire, octal et hexadécimal Conversion entre les bases Opérations arithmétiques Représentation des nombres négatifs Représentation des nombres réels Représentation des caractères 2
  3. 3. Comprendre c’est quoi un système de numérationApprendre la méthode de conversion d’un système à un autre Apprendre à faire des opérations arithmétiques en binaire Représenter des nombres et des caractères 3
  4. 4.  Nous avons pris lhabitude de représenter les nombres en utilisant dix symboles différents: 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8,9 Ce système est appelé le système décimal (déci signifie dix). Il existe cependant dautres formes de numération qui fonctionnent en utilisant un nombre de symboles distincts. ◦ Exemple :  système binaire (bi: deux),  le système octal (oct: huit),  le système hexadécimal (hexa: seize). En fait, on peut utiliser nimporte quel nombre de symboles différents (pas nécessairement des chiffres). Dans un système de numération : le nombre de symboles distincts est appelé la base du système de numération. 4
  5. 5. 5
  6. 6.  On utilise dix symboles différents: {0,1,2,3,4,5,6,7,8,9} N’importe quelle combinaison des symboles { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 } nous donne un nombre. 2334567 Poids faible Poids fort 345 , 567 Partie fractionnelle Partie entière 6
  7. 7. • Soit le nombre 1978, ce nombre peut être écrit sous la forme suivante : 1978 1000 900 70 8 1978 1 * 1000 9 * 100 7 * 10 8 *1 3 2 1 0 1978 1 * 10 9 * 10 7 * 10 8 * 10 Cette forma s’appelle la forme polynomiale Un nombre réel peut être écrit aussi sous la forme polynomiale 3 2 1 0 1 2 31978 , 265 1 * 10 9 * 10 7 * 10 8 * 10 2 * 10 6 * 10 5 * 10 7
  8. 8.  Sur une seule position : 0 ,1,2,3,4,5,….9= 101-1 Sur deux positions : 00 , 01,02, …..,99=102-1 Sur trois positions 000,001,……,999=103-1 Sur n positions : minimum 0 maximum 10n-1 nombre de combinaisons 10n 8
  9. 9. 9
  10. 10. Supposons qu’on a 14 jetons , si on forme des groupes de 10 jetons. Onva obtenir 1 seul groupe et il reste 4 jetons. 1 4 Les dizaines Les unités 10
  11. 11. . Maintenant on va former des groupes de 2 jetons ( on obtient 7 groupes) . Par la suite on va regrouper les 7 groupes 2 à 2 ( on obtient 3 groupes ). . On va regrouper ces derniers aussi 2 à 2 ( on obtient 1 seul groupe ) . Le schéma illustre le principe :Nombre de jetons qui restent en dehors des groupes : 0Nombre de groupes qui contiennent 2 jetons indépendants : 1Nombre de groupes qui contiennent 2 groupes de 2 jetons : 1Nombre de groupes qui contiennent des groupes de 2 groupes de 2 groupes de 2jetons:1 Si on regroupe les différents chiffres on obtient : 1110 1110 est la représentation de 14 dans la base 2 11
  12. 12. • Dans le système binaire, pour exprimer n’importe quelle valeur on utilise uniquement 2 symboles : { 0 , 1} La base ( 1101)2 Un bit ( 1 1 0 1)2 Le bits du poids forts Le bits du poids faible. Un nombre dans la base 2 peut être écrit aussi sous la forme polynomial 3 2 1 0 (1110) 2 1* 2 1* 2 1* 2 0*2 (14 ) 10 3 2 1 0 1 2 3 (1110,101) 2 1* 2 1* 2 1* 2 0*2 1* 2 0*2 1* 2 (14 , 625 ) 10 12
  13. 13. • Sur un seul bit : 0 , 1 Sur 3 Bits Binaire Décimal 000 0.Sur 2 bits : 001 1 010 2 Binaire Décimal 011 3 00 0 100 4 01 1 101 5 10 2 110 6 11 3 111 7 4 combinaisons= 22 8 combinaisons= 23 13
  14. 14. • 8 symboles sont utilisés dans ce système: {0,1,2,3,4,5,6,7}• Exemple 1 : 2 1 0 (127) 8 1* 8 2*8 7 *8 2 1 0 1 2 (127,65) 8 1* 8 2*8 7 *8 6*8 5*8 Exemple 2 : Le nombre (1289) n’existe pas dans la base 8 puisque les symboles 8 et 9 n’appartiennent pas à la base . 14
  15. 15. Décimal Hexadécimal 0 0 1 1 • On utilise seize (16) symboles 2 2 différents: 3 3 4 4 5 5(17) 1 * 16 1 7 * 16 0 6 6 16 1 0 1 7 7(AB) A * 16 B * 16 10 * 16 11 * 1 16 8 8 9 9 10 A 11 B 12 C 13 D 14 E 15 F 15
  16. 16.  Dans une base X , on utilise X symboles distincts pour représenter les nombres. La valeur de chaque symbole doit être strictement inférieur à la base X. Chaque nombre dans une base X peut être écrit sous sa forme polynomiale . 16
  17. 17. 17
  18. 18. • Cette conversion est assez simple puisque il suffit de faire le développement en polynôme de ce nombre dans la base X , et de faire la somme par la suite. Exemple : 3 2 1 0(1101) 2 1* 2 1* 2 0*2 1* 2 (13 ) 10 2 1 0 2 1 0(1A7) 16 1 * 16 A * 16 7 * 16 1 * 16 10 * 16 7 * 16 256 160 7 ( 423 ) 10 3 2 1 0 1 2 3(1101,101) 2 1* 2 1* 2 0*2 1* 2 1* 2 0*2 1* 2 (13 , 625 ) 10 1 0 1( 43 , 2 ) 5 4*5 3*5 2*5 20 3 0,4 ( 23 , 4 ) 10 18
  19. 19.  Effectuer les transformations suivantes à la base 10 ? ◦ (123)6=(?)10 ◦ (1100,11)2 =(?)10 ◦ (1ABC)16 =(?)10 19
  20. 20. Le principe consiste à faire des divisions successives du nombre sur2 , et prendre le reste des divisions dans l’ordre inverse. 35 2Exemple 1 : (35)10=(?)2 1 17 2 1 8 2 0 4 2Après division : 0 2 2on obtient : (35)10=(100011)2 0 1 2 1 0 20
  21. 21.  Un nombre réel est constitué de deux parties : la partie entière et la partie fractionnelle. La partie entière est transformée en effectuant des divisions successives. La partie fractionnelle est transformée en effectuant des multiplications successives par 2 . Exemple : 35,625=(?)2 0,625 * 2 = 1 ,25 P.E= 35 = (100011)2 0,25 * 2 = 0 ,5 0,5 * 2 = 1 ,0 PF= 0,625 = (?)2 (0,625)=(0,101)2 Donc 35,625=(100011,101)2 21
  22. 22.  Exemple 2: (0,6)10=(?)2 0,6 * 2 = 1,2 0,2 * 2 = 0,4 (0,6)= (0,1001)2 0,4 * 2 = 0,8 0,8 * 2 = 1,6 Remarque : Le nombre de bits après la virgule va déterminer la précision .Exercice :Effectuer les transformations suivantes :(23,65)=(? )2(18,190)=(?)2 22
  23. 23.  La conversion se fait en prenant les restes des divisions successives sur la base X dans le sens inverse.Exemple : 35 335 = (?)3 2 3 11 2 3 3 35=(1022)3 0 1 3 1 0• Question : Effectuer les transformations suivantes : (43)10=(?)2=(?)5 =(?)8 =(?)16 23
  24. 24. 43 2 43 51 21 2 3 8 5 1 10 2 3 1 5 0 5 2 1 1 1 2 2 0 1 2 (133)5 1 0 (101011)2 43 16 43 8 8 11 2 16 3 5 2 0 5 0 (2B)16 (53)8 24
  25. 25.  Il n’existe pas de méthode pour passer d’une base b1 à une autre base b2 directement. L’idée est de convertir le nombre de la base b1 à la base 10 , en suit convertir le résultat de la base 10 à la base b2 . ? b1 b2 Développement en polynôme Divisions successives 10 25
  26. 26. Exemple : ( 34)5=(?)7 1 0 ( 34 ) 5 3*5 4*5 15 4 (19 ) 10 (?) 7 19 7 (19)10=(25)7 ( 34)5=(25)7 5 2 7 2 0Exercice : effectuer les transformations suivantes (43)6=(?)5=(?)8 (2A)16=(?)9 26
  27. 27. Octal Binaire. En octal chaque, symbole de la base s’écrit sur 3 0 000bits en binaire. 1 001. L’idée de base est de replacer chaque symbole 2 010dans la base octal par sa valeur en binaire sur 3 3 011bits ( faire des éclatement sur 3 bits ). 4 100 5 101Exemples : 6 110(345)8=(011 100 101)2 7 111(65,76)8=(110 101, 111 110)2(35,34)8=(011 101 , 011 100)2Remarque :le remplacement se fait de droit à gauche pour la partie entièreet de gauche à droite pour la partie fractionnelle . 27
  28. 28. . L’idée de base est de faire des regroupements de 3 bits à partir du poids faible. . Par la suite remplacer chaque regroupement par la valeur octal correspondante .Exemple :(11001010010110)2=(011 001 010 010 110)2=(31226)8(110010100,10101)2= (110 010 100 , 101 010)2=(624,51)8Remarque :le regroupement se fait de droit à gauche pour la partie entièreet de gauche à droite pour la partie fractionnelle . 28
  29. 29. Décimal Hexadécimal 0 0 1 1. En Hexa chaque symbole de la base s’écrit sur 4 bits. 2 3 2 3. L’idée de base est de replacer chaque symbole 4 4par sa valeur en binaire sur 4 bits ( faire des 5 5éclatement sur 4 bits ). 6 6 7 7 8 8 9 9 10 A 11 B 12 C 13 D 14 E Exemple : 15 F (345B)16=(0011 0100 0101 1011)2 (AB3,4F6)16 = ( 1010 1011 0011 , 0100 1111 0110 ) 2 29
  30. 30. . L’idée de base est de faire des regroupements de 4 bits à partir du poids faible.Par la suite remplacer chaque regroupement par la valeur Héxa correspondante .Exemple :(11001010100110)2=(0011 0010 1010 0110)2=(32A6)16(110010100,10101)2= (0001 1001 0100,1010 1000)2=(194,A8)16 30
  31. 31. 0 0 1 1+ + + + 0 1 0 1 0 1 1 1 0 1 1 1 1 0 0 0 1 1 + 1 0 0 0 1 0 1 1 1 1 1 0 1 1 1 0 31
  32. 32. 1 1 4 3 6 5 + 4 5 1 5 8 11 6En octal 8 s’écrit 10 En octal 11 s’écrit 13 0 3 Le résultat final : (5036)8 32
  33. 33. 1 4 8 6 5+ 7 A 5 1 12 18 11 6 C En hexa 11 s’écrit B En hexa 18 s’écrit 12 B 2 Le résultat final : (C2B6)16 33
  34. 34.  Effectuer les opérations suivantes et transformer le résultat au décimal à chaque fois: (1101,111)2+(11,1)2=(?)2 (43)16+(34)16=(?)16 (11011)2+(11000)2=(?)2 (AB1)16+(237)8=(?)16 34
  35. 35. . Les machines numériques utilisent le système binaire.. Dans le système binaire : uniquement 2 symboles sont utilisés : 0 et 1.. C’est facile de représenter ces deux symboles dans les machines numériques.. Le 0 et le 1 sont représentés par deux tensions . 5v Binaire Tension Binaire : 1 (logique ) 2,8 v Inutilisée 0 0V 0,8 v 1 5V Binaire : 0 0v 35
  36. 36. 36
  37. 37. 37
  38. 38. Code ASCII ( American Standard Code for Information Interchange) 38
  39. 39. 39
  40. 40.  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 3 méthodes pour représenter les nombres négatifs : ◦ Signe/ valeur absolue ◦ Complément à 1( complément restreint ) ◦ Complément à 2 ( complément à vrai ) 40
  41. 41.  Si on travail sur n bits , alors le bit du poids fort est utilisé pour indiquer le signe :  1 : signe négatif  0 : signe positif Les autres bits ( n -1 ) désignent la valeur absolue du nombre. Exemple : Si on travail sur 4 bits. 1 001 0 001 Signe Valeur absolue Signe Valeur absolue 1001 est la représentation de - 1 0001 est la représentation de + 1 41
  42. 42. Sur 3 bits on obtient : signe VA valeur Les valeurs sont comprises • 0 00 +0 entre -3 et +3 0 01 +1 0 10 +2 -3 ≤ N ≤ +3 0 11 +3 - ( 4-1 ) ≤ N ≤ + (4 -1 ) -(22 -1) ≤ N ≤ +(22-1 ) -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 ) 1 00 -0 1 01 -1 1 10 -2 1 11 -3 Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en S/VA : -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 ) 42
  43. 43.  C’est une représentation assez simple . On remarque que le zéro possède deux représentations +0 et -0 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 ) 43
  44. 44.  On appel complément à un d’un nombre N un autre nombre N’ tel que : N+N’=2n-1 n : est le nombre de bits de la représentation du nombre N . Exemple :Soit N=1010 sur 4 bits donc son complément à un de N : N’= (24 - 1)-NN’=(16-1 )-(1010)2= (15 ) - (1010)2 = (1111)2 – (1010)2 = 0101 1 0 1 0 + 0 1 0 1 1 1 1 1 44
  45. 45.  Pour trouver le complément à un d’un nombre, il suffit d’inverser tous les bits de ce nombre : si le bit est un 0 mettre à sa place un 1 et si c’est un 1 mettre à sa place un 0 . Exemple : Sur 4 Bits Sur 5 Bits 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 45
  46. 46.  Dans cette représentation , le bit du poids fort nous indique le signe ( 0 : positif , 1 : négatif ). Le complément à un du complément à un d’un nombre est égale au nombre lui même . CA1(CA1(N))= N Exemple : Quelle est la valeur décimale représentée par la valeur 101010 en complément à 1 sur 6 bits ? Le bit poids fort indique quil sagit dun nombre négatif. Valeur = - CA1(101010) = - (010101)2= - ( 21)10 46
  47. 47. Si on travail sur 3 bits : Valeur en Valeur en Valeur CA1 binaire décimal 000 000 +0 001 001 +1 010 010 +2 011 011 +3 100 - 011 -3 101 - 010 -2 110 - 001 -1 111 - 000 -0 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 ( +0 et – 0 ) . 47
  48. 48. Sur 3 bits on remarque que les valeurs sont comprises • entre -3 et +3 -3 ≤ N ≤ +3 - ( 4-1 ) ≤ N ≤ + (4 -1 ) -(22 -1) ≤ N ≤ +(22-1 ) -(2 (3 -1) -1) ≤ N ≤ +(2 (3 -1) -1 ) Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en CA1 : -(2 (n -1) -1) ≤ N ≤ +(2 (n -1) -1 ) 48
  49. 49.  Si on suppose que a est un nombre sur n bits alors : a + 2 n = a modulo 2n et si on prend le résultat sur n bits on va obtenir la même valeur que a . a + 2 n= a Exemple : soit a = 1001 sur 4 bits 24= 10000 1 0 0 1 + 1 0 0 0 0 1 1 0 0 1Si on prend le résultat sur 4 bits on trouve la même valeur de a = 1001 49
  50. 50. 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 + 2n – b = a + (2n – 1) – b + 1 On a b + CA1(b)= 2n – 1 donc CA1(b) = (2n – 1) – b Si on remplace dans la première équation on obtient : a– b = a + CA1(b) + 1La valeur CA1(b)+1 s’appelle le complément à deux de b : CA1(b)+1 = CA2(b)Et enfin on va obtenir : a - b = a+ CA2(b)  transformer la soustraction en une addition . 50
  51. 51.  Trouver le complément à vrai de : 01000101 sur 8 bits ?CA2(01000101)= CA1(01000101)+ 1CA1(01000101)= (10111010)CA2(01000101)=(10111010)+ 1 = (10111011) Remarque 1 :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 1 et inverser les autres bits qui viennent après. 0 1 0 0 0 1 0 1 1 1 0 1 0 1 0 0 1 0 1 1 1 0 1 1 0 0 1 0 1 1 0 0 51
  52. 52.  Dans cette représentation , le bit du poids fort nous indique le signe ( 0 : positif , 1 : négatif ). Le complément à deux du complément à deux d’un nombre est égale au nombre lui même . CA2(CA2(N))= N Exemple : Quelle est la valeur décimale représentée par la valeur 101010 en complément à deux sur 6 bits ? Le bit poids fort indique quil sagit dun nombre négatif. Valeur = - CA2(101010) = - (010101 + 1) = - (010110)2= - ( 22) 52
  53. 53. Si on travail sur 3 bits : Valeur en Valeur en valeur CA2 binaire 000 000 +0 001 001 +1 010 010 +2 011 011 +3 100 - 100 -4 101 - 011 -3 110 - 010 -2 111 - 001 -1Dans 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.• 53
  54. 54. Sur 3 bits on remarque que les valeurs sont comprises entre -4 et +3 -4 ≤ N ≤ +3 - 4 ≤ N ≤ + (4 -1 ) - 22 ≤ N ≤ +(22-1 ) -2 (3 -1) ≤ N ≤ (2 (3 -1) -1 ) Si on travail sur n bits , l’intervalle des valeurs qu’on peut représenter en CA2 : -(2 (n -1)) ≤ N ≤ +(2 (n -1) -1 )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. 54
  55. 55. Effectuer les opérations suivantes sur 5 Bits , en utilisant la représentation en CA2 0 1 0 0 1 0 1 0 0 1 + + +9+9 1 1 1 0 0 0 0 1 0 0 -4+4 +5+ 13 1 0 0 1 0 1 0 1 1 0 1 Le résultat est positif Report (01101)2= ( 13)10 Le résultat est positif (00101)2= ( 5)10 55
  56. 56. 1 0 1 1 1 1 0 1 1 1 -9 + -9 + 1 1 1 0 0 0 1 0 0 1 -4 +9 - 13 +0 1 1 0 0 1 1 1 0 0 0 0 0 Report Report Le résultat est négatif :Résultat = - CA2 (10011)= -( 01101) Le résultat est positif = - 13 (00000)2= ( 0)10 56
  57. 57.  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. 57
  58. 58. 58
  59. 59.  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 ) 59
  60. 60.  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. Exemple : si n=3 et p=2 on va avoir les valeurs suivantesSigne P.E P.F valeur0 000 00 + 0,0 Dans cette représentation les0 000 01 + 0,25 valeurs sont limitées et nous n’avons pas une grande précision0 000 10 + 0,50 000 11 + 0,750 001 .00 + 1,0. . . .. . . . 60
  61. 61.  Chaque nombre réel peut s’écrire de la façon suivante : N= M * b e ◦ M : mantisse , ◦ b : la base , ◦ e : l’exposant Exemple : 15,6 = 0,156 * 10+2 - ( 110,101)2 = - (0,110101)2 * 2+3 (0,00101)2= ( 0,101)2 * 2-2Remarque :on dit que la mantisse est normalisée si le premier chiffre après la virgule est différent de 0 et le premier chiffre avant la virgule est égale à 0. 61
  62. 62.  Dans cette représentation sur n bits : ◦ La mantisse est sous la forme signe/valeur absolue  1 bit pour le signe  et k bits pour la valeur. ◦ L’exposant ( positif ou négatif ) est représenté sur p bits . Signe mantisse Exposant Mantisse normalisée 1 bit p bits k bits Pour la représentation de l’exposant on utilise : * Le complément à deux * Exposant décalé ou biaisé 62
  63. 63.  On veut représenter les nombres ( 0,015)8 et -( 15, 01)8 en virgule flottante sur une machine ayant le format suivant : Signe mantisse Exposant en CA2 Mantisse normalisée 1 bit 4 bits 8 bits (0,015)8=(0,000001101)2= 0,1101 * 2-5 Signe mantisse : positif ( 0) Mantisse normalisé : 0,1101 Exposant = -5  utiliser le complément à deux pour représenter le -5 Sur 4 bits CA2(0101)=1011 0 1 0 1 1 1 1 0 1 0 0 0 0 1 bit 4 bits 8 bits 63
  64. 64. - (15,01)8 = - (001101,000001)2= - 0,1101000001 * 24 Signe mantisse : négatif ( 1) Mantisse normalisée : 0,1101000001 Exposant = 4 , en complément à deux il garde la même valeur ( 0100) On remarque que la mantisse est sur 10 bits (1101 0000 01), 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 1 0 1 0 0 1 1 0 1 0 0 0 0 1 bit 4 bits 8 bitsRemarque : si la mantisse est sur k bits et si elle est représentée sur la machinesur k’ bits tel que k> k’ , alors la mantisse sera tronquée : on va prendreuniquement k’ bits  perdre dans la précision . 64
  65. 65.  en complément à 2, l’intervalle des valeurs qu’on peut représenter sur p bits : -2 (p -1) ≤N≤ 2 (p -1) -1Si on rajoute la valeur 2 (p -1) à tout les terme de cette inégalité : -2 (p -1) +2 (p -1) ≤ N + 2 (p -1) ≤ 2 (p -1) -1+ 2 (p -1) 0 ≤ N+2 (p -1) ≤ 2 p -1 On pose N’= N + 2 (p -1) donc : 0 ≤ N’ ≤ 2 p -1 Dans ce cas on obtient des valeur positives. La valeur 2p-1 s’appelle le biais ou le décalage 65
  66. 66.  Avec l’exposant biaisé on a transformé les exposants négatifs à des exposants positifs en rajoutons à l’exposant la valeur 2p -1. Exposant Biaisé = Exposant réel + Biais 66
  67. 67.  On veut représenter les nombres ( 0,015)8 et -( 15, 01)8en virgule flottante sur une machine ayant le format suivant : Signe mantisse Exposant décalé Mantisse normalisée 1 bit 4 bits 11 bits (0,015)8=(0,000001101)2= 0,1101 * 2-5 Signe mantisse : positif ( 0) Mantisse normalisé : 0,1101 Exposant réel = -5 Calculer le biais : b= 24-1 = 8 Exposant Biaisé = -5 + 8 = +3 = ( 0011)2 0 0011 1 1 0 1 0 0 0 0 0 0 0 1 bit 4 bits 11 bits 67
  68. 68. - (15,01)8=(001101,000001)2= 0,1101000001 * 24 Signe mantisse : négatif ( 1) Mantisse normalisée : 0,1101000001 Exposant réel = + 4 Calculer le biais : b= 24-1 = 8 Exposant Biaisé = 4 + 8 = +12 = ( 1100)21 1100 1 1 0 1 0 0 0 0 0 1 0 1 bit 4 bits 11 bits 68
  69. 69. 69
  70. 70.  Pour passer du décimal au binaire , il Décimal Binaire faut effectuer des divisions 0 0000 successives. Il existe une autre 1 0001 méthode simplifiée pour le passage 2 0010 du décimal au binaire. 3 0011 4 0100 Le principe consiste à faire des éclatement sur 4 bits et de remplacer 5 0101 chaque chiffre décimal par sa valeur 6 0110 binaire correspondante . 7 0111 8 1000 Les combinaisons supérieures à 9 9 1001 sont interdites 70
  71. 71. 1 2 9 5 6 20001 0010 1001 0101 0110 0010129 = ( 0001 0010 1001)2 562 = (0101 0110 0010)2 71
  72. 72.  le passage d’un mot-code au suivant entraînera toujours le changement d’un bit et d’un seul. le code gray n’est pas pondéré, il n’est donc pas adapté pour le calcul numérique. Décimal Binaire naturel Code de Gray 0 000 000 1 001 001 2 010 011 3 011 010 4 100 110 5 101 111 6 111 101 72
  73. 73.  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 28 = 256 combinaisons Chaque combinaison représente un caractère ◦ Exemple :  Le code 65 (01000001)2correspond au caractère A  Le code 97 (01100001) correspond au caractère a  Le code 58 (00111010 )correspond au caractère : Actuellement il existe un autre code sur 16 bits , se code s’appel UNICODE . 73
  74. 74.  ASCII: American Standard Code for Information Interchange. 74
  75. 75. Fin du premier Chapitre 75

×