Créée le, 19/06/2015

 Mise à jour le, 02/09/2016

Visiteurs N°  




Accueil
Nouveau Blog Nouveautés Moteur de Recherche Votre Caddie Pour Vos Achats Votre Espace Membre Vos Signets et Vos Jeux Préférés Page de Bienvenue Statique Site en Français Site en Anglais
Sommaires
Électronique Fondamentale Technologie Fondamentale Testez vos Connaissances Électronique Théorique Digitale Électronique Pratique Digitale Lexique Électronique Numérique Data book TTL Data book CMOS Dépannage TVC Mathématique
Micro-ordinateurs
Théorique des Micro-ordinateurs Testez vos Connaissances Pratique des Micro-ordinateurs Glossaires sur les Ordinateurs
Physique
La lumière Champ d'action Rayonnement Électromagnétique
Technologies
Classification des Résistances Identification des Résistances Classification des Condensateurs Identification des Condensateurs
Formulaires Mathématiques
Géométrie Physique 1. - Électronique 1. 2. - Électronique 1. 3. - Électrotechnique 1. 4. - Électromagnétisme
Accès à tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages N. B. M. - Tome I - 201 Pages E. T. M. - Tome I - 554 Pages Business à Domicile Ouvrages 34 pages gratuits Nos E-books Logiciel Géométrie Logiciel Composants Électroniques
Aperçu de tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages E. T. M. - Tome I - 554 Pages Logiciel Géométrie Logiciel Composants Électroniques
Nos Leçons aux Formats PDF
Électronique Fondamentale Technologie Fondamentale Électronique Théorique Digitale Électronique Pratique Digitale Théorique des Micro-ordinateurs Mathématiques
Informatique
Dépannage Win98 et WinXP et autres Dépannage PC Glossaire HTML et Programmes JavaScript (en cours de travaux) PHP et Programmes Création de plusieurs Sites
Forums
Nouveau Forum Électronique Forum Électronique et Infos Forum Électronique et Poésie
Divers et autres
Formulaire des pages perso News XML Statistiques CountUs Éditeur JavaScript Nos Partenaires avec nos Liens Utiles Gestionnaire de Partenariat Nos Partenaires MyCircle Sondages 1er Livre d'Or 2ème Livre d'Or 3ème livre d'Or Déposez vos Annonces Annuaire Sites Agenda des Événements Album Photos

Signets :
  Opérations dans le Système Octal    Opérations dans le Système Hexadécimal   Soustraction en Complément à deux
  Représentation des Nombres avec leur Signe   Nombres à Plusieurs Bytes   Bas de page


Opérations Arithmétiques dans les Différents Systèmes :


3. - OPÉRATIONS ARITHMÉTIQUES DANS LES DIFFÉRENTS SYSTÈMES

On peut évidemment effectuer les quatre opérations arithmétiques fondamentales (addition, soustraction, multiplication et division) non seulement dans le système décimal mais aussi dans les autres systèmes numériques et en particulier dans le système binaire ; les règles du système décimal seront valables pour ces opérations.

3. 1. - OPÉRATIONS DANS LE SYSTÈME BINAIRE

Pour additionner deux nombres binaires, on procède de la même façon que dans l'arithmétique des nombres décimaux.

On écrit les nombres sur des lignes successives en les mettant en colonne, en partant de la droite ; ensuite on additionne les chiffres de chaque colonne en commençant par celle de droite.

Exemple : additionner les nombres 1100101112 et 10100112 :

Additionner_les_Nombres_Binaires.GIF

Additionner les nombres 1012, 1112, 12, 1102 :

Additionner_les_Nombres_Binaires_2.GIF

On notera que, dans la troisième colonne, on a l'addition suivante : 1 + 1 + 1 + 1 avec retenue de 10.

Dans ce genre de cas, la dernière retenue consiste à mettre "0" dans la première colonne située immédiatement à gauche et "1" dans celle qui suit.

Voyons maintenant la soustraction ; cette opération peut aussi être faite selon la règle traditionnelle de la mise en colonne, en partant de la droite et en ayant recours éventuellement à des unités d'emprunt dans chaque colonne.

En particulier, quand le chiffre du premier terme est "0" et celui correspondant au second terme est "1", dans le premier terme on inverse tous les chiffres situès à gauche jusqu'au premier 1 inclus, et on met "1" devant le "0" initial pour former ainsi le nombre binaire 10. De ce nombre, on soustrait ensuite le chiffre 1 du second terme, en se rappelant que dans le système binaire, on a : 10 - 1 = 1.

Exemple : soustraire de 101110110002 le nombre 11001112 :

Soustraction_Binaire.GIF

L'addition et la soustraction sont les deux opérations les plus importantes et les plus utilisées au sein des calculateurs.

La multiplication et la division, comme les opérations précédentes, se calculent toujours selon les règles arithmétiques traditionnelles ; elles sont peu utilisées ; on verra toutefois un exemple de calcul pour chaque opération.

Exemple de multiplication :

Multiplication_Binaire.GIF

Exemple de division :

Division_Binaire.GIF

Les deux opérations précédentes ne devraient présenter aucune difficulté puisque les calculs consistent surtout à multiplier des chiffres binaires (c'est-à-dire 0 x 0 = 0 ; 0 x 1 = 0 ; 1 x 0 = 0 ; 1 x 1 = 1) et à soustraire directement deux nombres pour la division.

HAUT DE PAGE 3. 2. - OPÉRATIONS DANS LE SYSTÈME OCTAL

Dans ce paragraphe, on examinera les opérations d'addition et de soustraction dans le système octal. Comme pour le système binaire, on applique les mêmes règles pour les nombres octaux.

Toutefois, dans ce cas, on aura la retenue "1" à gauche à chaque fois que la somme dépasse 7 et il serait bon de se servir du tableau de la figure 4.

Tableau_Octal.GIF

Pour additionner deux chiffres octaux, on cherche ces chiffres dans le tableau : un en début de colonne, l'autre en début de ligne ; la somme se trouve dans la case correspondant au croisement entre colonne et ligne.

Par exemple, si l'on doit additionner les chiffres octaux 7 et 5, on cherche la somme dans la case située au croisement de la colonne 7 et de la ligne 5. Dans cette case, on trouve 14. Ainsi, dans le système octal, on aura :

7 + 5 = 14

Exemple d'addition octale :

Addition_Octale.GIF

Pour la soustraction, après avoir transféré par la méthode habituelle les emprunts éventuels, on utilise le tableau de la figure 4, en procédant par ordre inverse : D'abord, on lit en début de colonne le chiffre du second terme ; puis on cherche dans cette même colonne le nombre du premier terme (formé éventuellement en posant devant lui l'unité d'emprunt) ; ensuite, on lit la différence en début de ligne.

Exemple de soustraction octale :

 Soustraction_Octale.GIF

HAUT DE PAGE 3. 3. - OPÉRATIONS DANS LE SYSTÈME HEXADÉCIMAL

Étendons maintenant les règles arithmétiques aux nombres hexadécimaux, en rappelant que l'on aura une retenue de 1 dans la colonne de gauche à chaque fois que la somme dépasse F, (F = 1510).

Si l'on doit additionner deux chiffres hexadécimaux, on utilisera le tableau de la figure 5 avec la même méthode que pour celui de la figure 4 pour les calculs octaux.

Tableau_Hexadecimal.GIF

Exemple d'addition hexadécimale :

Addition_Hexadecimale.GIF

Pour la soustraction, on peut appliquer la même règle que celle utilisée dans le système octal.

Exemple de soustraction hexadécimale :

Soustraction_Hexadecimale.GIF

HAUT DE PAGE 3. 4. - LA SOUSTRACTION EN COMPLÉMENT À DEUX

Les circuits du micro-calculateur ne peuvent pas soustraire directement des nombres binaires, mais seulement les additionner. Il est donc nécessaire de trouver une méthode pour transformer les soustractions en additions. La procédure est relativement simple si l'on se sert du complément à deux relatif au deuxième terme. Pour connaître la méthode des complémentations, il faut d'abord voir comment elle se présente dans le système décimal et plus précisément, dans la soustraction :

 7 - 4 = 3

En additionnant 10 aux deux termes de l'égalité, celle-ci ne change pas ; on a donc :

7 - 4 + 10 = 3 + 10

On peut écrire l'expression ci-dessus de la façon suivante :

7 + (10 - 4) = 10 + 3

Maintenant, en effectuant la soustraction que l'on a écrite entre parenthèse, on obtient :

7 + 6 = 13

En ôtant le "1" de "13", on obtient 3, c'est-à-dire exactement la différence entre "7" et "4". La quantité "10 - 4 = 6" est appelée complément à "10" de "4". De la même façon, 3 sera le complément à "10" de "7" et ainsi de suite.

On a donc vu qu'en substituant au second terme ("4" dans l'exemple cité) son complément à "10", la soustraction peut être faite en additionnant les deux termes tout en ignorant la retenue.

Exemple :

Effectuons la soustraction 6 - 2. Le complément à "10" de 2 est 10 - 2 = 8 ; donc :

6 + 8 = 14

En ignorant la retenue, comme on l'a déjà dit, il nous reste 4, différence entre 6 et 2.

On peut remarquer que le problème n'a pas été totalement résolu puisque pour obtenir le complément à dix, il est de toute façon nécessaire de faire une soustraction et, calculer "10 - 4" n'est pas plus simple que "7 - 4". Mais en code binaire les calculs changent, en effet, dans ce code, l'équivalent du complément à dix est le complément à deux et pour l'introduire, il est nécessaire de faire un passage intermédiaire, qui est le complément à 1 du nombre binaire choisi. Ce complément s'obtient en inversant tous les bits du nombre, c'est-à-dire en mettant 0 à la place de 1 et vice versa.

Ainsi, le complément à 1 de 10 01 11 01 est 01 10 00 10.

C'est une opération que l'on peut faire aisément dans les circuits digitaux car, pour faire le complément d'un nombre il suffit de l'envoyer à un circuit inverseur qui agira sur chaque bit du nombre. Ensuite, on obtient le complément à 2 en ajoutant simplement "1" au complément précédent.

Par exemple, le complément à "2" de 10 01 11 01 est :

Complement_a_2.GIF

Une autre règle permet d'obtenir le complément à "2", elle s'énonce de la façon suivante :

On recopie le nombre dont on veut trouver le complément à "2" de la droite vers la gauche jusqu'au premier "1" rencontré ; on complémente ensuite tous les bits à sa gauche.

Par exemple, faisons le complément à "2" du nombre binaire 10  110 100.

En partant de la droite, on a deux "0" et un "1" que l'on recopie simplement ; à partir de cet instant, on termine l'écriture du nombre en complétant chaque bit.

Complement_a_2_autre_methode.GIF 

Arrivé à ce stade, il est facile de comprendre comment une soustraction binaire peut être transformée en addition.

Voyons l'exemple suivant :

Soustraction_Binaire_2.GIF

En faisant l'opération par une addition du premier terme au complément à "2" du second terme, la retenue finale ne sera pas prise en considération comme pour le système décimal vu précédemment. On obtiendra donc :

 Addition_Binaire_avec_Retenue_a_negliger.GIF

La différence est donc : 0 1 1 1.

HAUT DE PAGE 3. 5. - REPRÉSENTATION DES NOMBRES AVEC LEUR SIGNE

Pour représenter un nombre dans les ordinateurs, on utilise une quantité donnée de bits (8, 16, 32).

Avec 8 bits (1 octet), on obtient toutes les combinaisons comprises entre 0 0 0 0 0 0 0 02 et 1 1 1 1 1 1 1 12, c'est-à-dire entre 010 et 25510.

Si l'on veut accroître le champ des nombres représentés, il est nécessaire d'ajouter d'autres bits ; par exemple, avec 16 bits (équivalent à 2 octets), on peut représenter tous les nombres décimaux entre 010 et 65 53510 ; avec 32 bits (4 octets), on peut représenter tous les nombres décimaux qui vont de 010 à 4 294 967 29510.

Dans tous les cas, il s'agit toujours de nombres naturels, mais en considérant le premier bit à gauche d'un octet ou d'un groupe d'octets, on peut aussi représenter les nombres signés, c'est-à-dire les nombres positifs (identifiés par le signe +) et négatifs (identifiés par le signe -).

On peut associer le 0 au signe + et le 1 au signe -. Ainsi, le nombre décimal + 23 sera exprimé, dans le système binaire, de la façon suivante :

Valeur_Absolue_du_nombre_Positif.GIF

Le nombre décimal - 23, toujours dans le système binaire, sera par contre exprimé de la façon suivante :

Valeur_Absolue_du_nombre_Negatif.GIF

En prenant en compte le signe, le champ des nombres se trouve modifié car de 0 à 255 on passe à - 127 à + 127 mais l'amplitude reste constante à 256 valeurs.

Voyons, par exemple, le champ numérique d'un octet (8 bits). Celui-ci peut comprendre tous les nombres naturels de 0 à 255 ou bien tous les nombres relatifs de - 127 à + 127 (figure 6).

Figure 6. - Champs numériques avec signe.
Champ hexadécimal Champ décimal Champ binaire (en signe et valeur absolue)
7F + 127 0 1 1 1 1 1 1 1
7E + 126 0 1 1 1 1 1 1 0
7D + 125 0 1 1 1 1 1 0 1
03 + 3 0 0 0 0 0 0 1 1
02 + 2 0 0 0 0 0 0 1 0
01 + 1  0 0 0 0 0 0 0 1
00  + 0 0 0 0 0 0 0 0 0
80 - 0 1 0 0 0 0 0 0 0
81 - 1 1 0 0 0 0 0 0 1
82 - 2 1 0 0 0 0 0 1 0
FE - 126 1 1 1 1 1 1 1 0
FF - 127 1 1 1 1 1 1 1 1


Note : Les nombres du champ hexadécimal sont obtenus en écrivant la valeur hexadécimale des deux quartets qui composent le nombre correspondant du champ binaire (octet).

En observant la colonne intitulée champ binaire (en signe et valeur absolue) du tableau de la figure 6, on remarque que l'on a deux codes différents pour le 0 : 0000 0000, que l'on pourrait aussi écrire + 0, et 1000 000 que l'on pourrait écrire - 0.

Donc, en incluant les deux codes du 0, l'amplitude des champs est toujours de 256 nombres que ce soit dans le cas des nombres naturels ou bien dans celui des nombres relatifs.

Ce nouveau système binaire de numération est un progrès, mais n'est pas encore satisfaisant. A titre démonstratif, effectuons l'addition suivante, en utilisant la représentation binaire avec signe :

Addition_Binaire.GIF 

Le résultat 1 0 0 0 1 1 0 0 équivaut à - 12 et non à + 2, comme cela devrait être. L'addition binaire des nombres avec leur signe ne nous donne donc pas automatiquement le résultat exact à l'intérieur du système adopté.

Il est donc nécessaire de le modifier comme suit :

On représente toujours les nombres positifs selon le code binaire normal (le signe + est encore un 0) ; les nombres négatifs, par contre, sont représentés en utilisant le complément à deux de leur valeur absolue et en conservant le bit 1 comme bit représentant le signe - (figure 7).

Figure 7. - Champs numériques avec signe et complément à deux de la valeur binaire négative.
Champ hexadécimal Champ décimal Champ binaire (en complément à deux)
7F + 127 0 1 1 1 1 1 1 1
7E + 126 0 1 1 1 1 1 1 0
7D + 125 0 1 1 1 1 1 0 1
  4  + 4 0 0 0 0 0 1 0 0
 3 + 3 0 0 0 0 0 0 1 1
 2 + 2 0 0 0 0 0 0 1 0
 1 + 1 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0
FF - 1 1 1 1 1 1 1 1 1
FE - 2 1 1 1 1 1 1 1 0
FD - 3 1 1 1 1 1 1 0 1
83 - 125 1 0 0 0 0 0 1 1
82 - 126 1 0 0 0 0 0 1 0
81 - 127 1 0 0 0 0 0 0 1
80 - 128 1 0 0 0 0 0 0 0


Dans l'exemple précédent, + 7 sera encore représenté par 0 0 0 0 0 1 1 1; le nombre négatif - 5 sera par contre exprimé par 1 1 1 1 1 0 1 1.

Avec la nouvelle représentation, effectuons à nouveau la somme :

Avec cette nouvelle méthode, on obtient la somme exacte 0 0 0 0 0 0 1 0 (on ne tient pas compte de la retenue).

Jusque-là, il n'y a rien de nouveau par rapport à la soustraction faite avec la méthode du complément à deux. Considérons toutefois un autre cas.

Addition_Binaire_avec_Nouvelle_Methode_2.GIF

Si l'on examine le résultat, on voit tout d'abord qu'il représente un nombre négatif, le premier bit étant à 1.

En outre, 1 1 1 1 1 0 0 est le complément à deux de 4. En interprétant le nombre selon la nouvelle méthode, on en déduit que le résultat exact est - 4.

Les nombres traités par les ordinateurs sont généralement codés par cette méthode. En effet, de cette façon, le résultat d'une addition entre nombres relatifs est automatiquement exact (s'il n'y a pas de dépassement de capacité) et la soustraction est à considérer comme une addition de nombres relatifs.

Par exemple, si l'on doit soustraire - 2 de + 4, on transforme l'opération, en l'addition des nombres + 4 et + 2, car + 4 - (- 2) = + 4 + 2.

On obtient :

Addition_Binaire_avec_Nouvelle_Methode_3.GIF

La somme 0 0 0 0 0 1 1 0 équivaut à 6, valeur décimale du résultat de la soustraction.

HAUT DE PAGE 3. 6. - NOMBRES A PLUSIEURS BYTES

Dans la mémoire des micro-ordinateurs, les cases disponibles pour enregistrer un nombre ont généralement une longueur donnée : 1 byte, par exemple, correspond souvent à un nombre de 8 bits.

Supposons que l'on ait à enregistrer un nombre formé d'une quantité de bits supérieure aux huit bits qui constituent un byte. Dans de tels cas, on utilise deux ou plusieurs bytes pour stocker ce nombre et on devra donc réserver dans la mémoire deux ou plusieurs emplacements de 8 bits pour ce seul nombre.

Dans la mémoire, le nombre sera de préférence stocké dans des cases contiguës, comme on le voit dans le schéma suivant (rien n'interdit cependant d'avoir les deux bytes dans des cases non adjacentes).

Cases_Memoire.GIF

Comment effectuera-t-on des opérations avec des nombres occupant deux ou plusieurs bytes en mémoire ?

Il faut en effet savoir que l'ordinateur peut travailler seulement avec des nombres ayant une longueur donnée.

Supposons que l'on veuille additionner deux nombres de 2 bytes en utilisant un ordinateur conçu pour des nombres de 8 bits.

L'addition, dans ce cas, doit être effectuée en deux temps : un premier temps pour le byte 0 et un deuxième temps pour le byte 1.

Double_Additions_Binaires.GIF

Dans un premier temps, l'ordinateur additionne les parties de droite des deux termes (les moins significatives) ; dans un deuxième temps, il additionne les parties de gauche en tenant compte de la retenue éventuelle, produite par la somme précédente.

Une telle retenue est stockée dans une case appropriée de l'unité centrale pour pouvoir être additionnée au bit le moins significatif du byte suivant, ou bien pour être utilisée par exemple comme indicateur d'overflow (dépassement) quand on dépasse la capacité de l'ordinateur.

Dans les tableaux des figures 6 et 7, en plus du champ binaire et du champ décimal, le champ hexadécimal correspondant est reporté ; la représentation hexadécimale n'est pourtant pas utilisée dans les derniers calculs car on a voulu montrer simplement les problèmes arithmétiques imposés par les caractéristiques opérationnelles de l'ordinateur.

Les nombres hexadécimaux et parfois même les nombres octaux, sont utilisés exclusivement par le programmateur en substitution des expressions binaires pour éviter des fautes de lecture et de transcription. On reparlera de ces nombres par la suite.

Testez vos connaissances sur cette 3ème théorie avant de continuer les autres leçons en cliquant ici.

  Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet.   Haut de page
  Page précédente   Page suivante




    






Envoyez un courrier électronique à Administrateur Web Société pour toute question ou remarque concernant ce site Web. 

Version du site : 10. 4. 12 - Site optimisation 1280 x 1024 pixels - Faculté de Nanterre - Dernière modification : 02 Septembre 2016.   

Ce site Web a été Créé le, 14 Mars 1999 et ayant Rénové, en Septembre 2016.