Systèmes logiques 1 ISET de Sousse
Chapitre 1
Notions sur les systèmes de numération et les codes
1. Introduction
Le système de numération binaire et les codes numériques sont essentiels en informatique et
en électronique numérique.
Le terme numérique vient du principe de fonctionnement des ordinateurs pour exécuter les
opérations. Pendant plusieurs années, les applications numériques se limitaient aux systèmes
d’ordinateurs. Aujourd’hui, la technologie numérique sert une grande variété de domaines, avec
des applications comme la télévision, les systèmes de communication, le radar, les systèmes
militaires, l’instrumentation médicale, le contrôle de procédés industriels et l’électronique
domestique.
2. Système de numération
2.1 Définitions
On utilise aujourd’hui des systèmes de numération pondérés. La définition d’un système de
numération pondéré repose sur trois notions :
La base du système : c’est un nombre entier, noté B ;
Les digits du système : ce sont des caractères, tous différents, représentant chacun un
élément de la base. Il y en a donc B au total ;
Le poids de chaque digit selon son rang (sa position). Compté de la droite vers la
gauche, ce poids est B 0 (c'est-à-dire 1 ) pour le premier digit, B1 (c'est-à-dire B ) pour
le second digit, B 2 pour le troisième digit, etc…
2.2 Système Décimal
Dans le système décimal, la base est 10 . Il y a 10 digits notés : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 .
Exemple : (195.28)10 195.28 110 2 9 101 5 100 2 10 1 8 10 2 .
1.3 Système Binaire
Dans le système binaire, la base est 2 . Il y a 2 digits notés : 0 et 1 .
On trouve la valeur décimale de tout nombre en additionnant le poids de tous les bits dont le
chiffre est 1 et en ignorant le poids des bits dont le chiffre est 0.
Exemples :
(1101) 2 1 23 1 22 0 21 1 20 13 ;
(101.01) 2 1 22 0 21 1 20 0 21 1 22 5.25 .
Hatem CHOUCHANE
1
Systèmes logiques 1 ISET de Sousse
Le nombre décimal maximal pouvant être obtenu en utilisant n bits est égale à 2 n 1 . Par
exemple, nous pouvons compter de 0 à 255 avec huit bits : 28 1 256 1 255
Vocabulaire
Un bit est un digit du système binaire.
Un mot est un ensemble de bits
Un quartet est un mot de 4 bits
Un octet est un mot de 8 bits
Un 1KO (1 Kilo Octet ) 210 Octets 1024 Octets
Un 1 MO ( Méga Octet ) 1024 K O
Un 1GO (Géga Octet ) 1024 M O
Le bit de poids faible L.S.B. (Less Significant Bit) est le bit situé le plus à droite.
Le bit de poids fort M.S.B. (Most Significant Bit) est le bit situé le plus à gauche.
2.4 Système Octal
Dans le système octal, la base est 8 . Il y a 8 digits notés : 0, 1, 2, 3, 4, 5, 6, 7 .
Exemples :
(547)8 5 82 4 81 7 80 359 ;
(47.12)8 4 81 7 80 1 81 2 82 39.15625 .
2.5 Système Hexadécimal
Le système de numération hexadécimal possède une base de 16, il comprend seize
symboles : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C , D, E , F . L’usage du système hexadécimal est très
répondu dans la programmation en langage machine d’ordinateurs et de microprocesseurs. Il
est beaucoup plus simple de traiter un nombre hexadécimal que son équivalent binaire.
Exemples :
(1A5F )16 1163 10 16 2 5 161 15 160 6751 ;
(5F .2)16 5 161 15 160 2 16 1 95.125 .
3. Changement de système de numération
3.1 Conversion Octal en Binaire et Binaire en Octal
On remarque que la base du système octal est égale à la puissance troisième de la base du
système binaire : 8 2 3 .
A chaque digit d’un nombre exprimé en octal, on peut correspondre un ensemble de 3 bits
du même nombre exprimé en binaire.
Exemple : (1547) 8 (001)(101)(100)(111) (1101100111) 2
Hatem CHOUCHANE
2
Systèmes logiques 1 ISET de Sousse
La conversion inverse se fait de la même manière, en partageant le nombre binaire en
ensemble de 3 bits à partir de la droite.
Exemple : (11010110100) 2 (011)(010)(110)(100) (3264)8
3.2 Conversion Hexadécimal en Binaire et Binaire en Hexadécimal
On remarque que la base du système hexadécimal est égale à la puissance quatrième de la
base du système binaire : 16 2 4 .
A chaque digit d’un nombre exprimé en hexadécimal, on peut correspondre un ensemble de
4 bits du même nombre exprimé en binaire.
Exemple : (6B3)16 (0110)(1011)(0011) (11010110011) 2
La conversion inverse se fait de la même manière, en partageant le nombre binaire en
ensemble de 4 bits à partir de la droite.
Exemple : (1101011101101) 2 (0001)(1010)(1110)(1101) (1AED)16
3.3 Conversion Décimal en Binaire, Octal et Hexadécimal
Il suffit d’effectuer des divisions entières successives du nombre par la base, puis du
quotient obtenu par la base, puis du nouveau quotient par la base, … jusqu’à ce que le quotient
devienne nul. L’expression recherchée est constituée par l’ensemble des restes successifs des
divisions, lu à l’envers, comme on le voit ci-dessous :
Les fractions décimales peuvent également être converties en binaire, en le multipliant par
2 de façon répétitive, jusqu’à ce que la partie fractionnaire donne 0. Les chiffres reportés ou
retenues, générés par les multiplications, forment le nombre binaire. La première retenue
produite devient le MSB et la dernière retenue devient le LSB.
Hatem CHOUCHANE
3
Systèmes logiques 1 ISET de Sousse
Exemple : Retenue
0.3125 2 0.625 0
0.625 2 1.25 1
0.25 2 0.5 0
0.5 2 1.00 1
D’où 0.3125 (0.0101)2
Remarque :
Système décimal
Codage Codage
Décodage Décodage
Autre système non Autre système non
Transcodage
décimal B1 décimal B2
4. Codage binaire
Tout traitement informatique ou automatique d’une information implique que celle-ci soit
codée, c'est-à-dire représentée à l’aide de bits à 2 états distincts, 0 et 1 , ce qui facilite le
stockage et la manipulation. On distingue deux catégories de codes : les codes numériques et
les codes alphanumériques.
4.1 Codage numérique
4.1.1 Code Binaire Naturel (BN)
Le code binaire naturel est le code dans lequel on exprime un nombre selon le système de
numération binaire. C’est le code le plus simple, il est pondéré et il se prête parfaitement bien
au traitement des opérations arithmétiques.
Les poids successifs des bits à partir de la droite (1,2,4,8,16,32,...) sont très faibles par
rapport à ceux du système décimal (1,10,100,1000,...) ce qui est un inconvénient à cause du
nombre de bits nécessaires au codage. Un autre inconvénient du code binaire naturel est qu’il
peut introduire des erreurs lord du codage de grandeurs variant de façon ordonnée. Entre deux
codes successifs, plusieurs bits peuvent changer simultanément. Par exemple : entre le code
(01) 2 représentant 1 en base 10 et le code (10) 2 représentant 2 , les deux bits changent en
même temps, ce qui est impossible physiquement : il y a deux transitions possibles, (11) 2 et
(00)2 . Pendant un court instant, un code parasite risque donc d’introduire une erreur.
4.1.2 Code Binaire Réfléchi (BR) ou code GRAY
Hatem CHOUCHANE
4
Systèmes logiques 1 ISET de Sousse
Pour pallier l’inconvénient du codage Binaire Naturel, on a conçu un codage, appelé code
Binaire Réfléchi tel qu’entre deux codes successifs, un seul bit change de valeur.
Décimal Binaire Naturel Binaire Réfléchi
0 00000000 00000000
Conversion du Binaire Naturel en Binaire Réfléchi
1 0 0 0 0 0 0 01 0 0 0 0 0 0 01
2 0 0 0 0 0 010 0 0 0 0 0 01 1
3 0 0 0 0 0 0 11 0 0 0 0 0 010
4 0 0 0 0 010 0 0 0 0 0 01 10
5 0 0 0 0 0101 0 0 0 0 0 111
6 0 0 0 0 0 11 0 0 0 0 0 0101
7 0 0 0 0 0 111 0 0 0 0 010 0
8 0 0 0 010 0 0 0 0 0 01 10 0
9 0 0 0 010 01 0 0 0 0 11 0 1
10 0 0 0 01010 0 0 0 0 1111
11 0 0 0 0 1 0 11 0 0 0 0 111 0
12 0 0 0 0 11 0 0 0 0 0 01010
13 0 0 0 0 11 0 1 0 0 0 0 1 0 11
14 0 0 0 0 111 0 0 0 0 010 01
15 0 0 0 0 111 1 0 0 0 010 0 0
16 0 0 010 0 0 0 0 0 01 10 0 0
... ... ...
Pour31construire le 0tableau
0 0 1 1des1 1codes
1 Binaires0 Réfléchis,
0 0 1 0 0 0on0 procède par réflexions
32 premiers0codes
Les deux 0 1 0étant 0 0 une
0 0 000 et 1 , on opère 1 1 0symétrie
0 0 0 et on ajoute à gauche deux « 0 »
... ...
et deux...«1» : on obtient ainsi les quatre premiers codes. On opérant de nouveau une symétrie,
63 0 0 1 11 1 11 0 0 1 0 0 000
en ajoutant quatre « 0 » et quatre «1» , on obtient les huit premiers codes. Il faudra opérer une
64 010 0 0 0 0 0 0 11 00 0 0 0
nouvelle huit « 0 » et huit «1» pour
... symétrie, ajouter... ... obtenir les seize premiers codes, etc…
127 Gray est0notamment
Le code 1 1 1 1 1 1 utilisé
1 pour 0les
1 0informations
0 0 0 0 0 fournies par des capteurs de
128
position. 1 0 0utilisé
Il est également 0 0 ranger les1 valeurs
0 0 0 pour 1 0 0 0 binaires
0 0 0 des variables dans un tableau
... ... ...
255 11111111 10 0 0 0 0 0 0
Conversion du Binaire Naturel en Binaire Réfléchi
On additionne sans retenue le nombre complété par un 0 avec lui-même, et on abandonne
le bit de poids faible.
Exemple : 7 (111) BN , le nombre complété par un zéro : 1110
Hatem CHOUCHANE
5
Systèmes logiques 1 ISET de Sousse
1110
111
1001
Donc 7 (100) BR .
Conversion du Binaire Réfléchi en Binaire Naturel
On part de la gauche vers la droite : le premier bit est recopié, les suivants sont recopiés
quand le bit précédent, en codage Binaire Naturel, est 0 ; si le bit précédent, en codage Binaire
Naturel, est 1 , on remplace par le complément.
Exemple :
13 en binaire réfléchi vaut 1011.
Le premier bit 1 est recopié, le second bit 0 est changé en 1 , car le premier bit en binaire naturel
est 1 , le troisième bit 1 est changé en 0 , car le second bit en binaire naturel est 1 ; le quatrième
bit 1 est recopié, car le troisième bit en binaire naturel est 0. 13 en binaire naturel vaut 1101.
4.1.3 Code binaire naturel signé
Dans un nombre binaire signé, le bit situé le plus à gauche est le bit de signe : 0 pour « »
, et 1 pour « » .
Notation signe/valeur absolue
Dans la notation signe/valeur absolue, le bit le plus à gauche est le bit de signe et les autres
bits correspondent à l’équivalent binaire exact de la valeur décimale absolue du nombre positif
ou négatif.
Exemple : Exprimer 25 en un nombre binaire signé de huit bits avec la notation signe/valeur
absolue.
25 (10011001)bns .
Notation en complément à 1
La notation en complément à 1 représente les nombres positifs de façon identique à la
notation signe/valeur absolue. Par contre, les nombres négatifs deviennent les compléments à 1
de leurs nombres positifs correspondants.
Le complément à 1 d’un nombre binaire s’obtient en changeant chaque 0 par un 1 et chaque
1 par un 0.
Hatem CHOUCHANE
6
Systèmes logiques 1 ISET de Sousse
Exemple : Exprimer 25 en un nombre binaire signé de huit bits avec la notation en
complément à 1.
25 (11100110)bns .
Notation en complément à 2
La notation en complément à 2 représente les nombres positifs de façon identique à la
notation signe/valeur absolue et en complément à 1. Par contre, les nombres négatifs deviennent
les compléments à 2 de leurs nombres positifs correspondants.
On obtient le complément à 2 d’un nombre binaire en additionnant 1 au bit le moins
significatif (LSB) du complément à 1 de ce nombre.
Ou encore, en partant de la droite, conserver tous les bits jusqu’au premier 1 inclus, et
inverser le reste.
Exemple : Exprimer 25 en un nombre binaire signé de huit bits avec la notation en
complément à 2.
25 (11100111)bns
4.1.4 Nombres à virgule flottante
En plus de l’Unité Centrale de Traitement (UCT) les ordinateurs utilisent des coprocesseurs
pour effectuer les calculs complexes avec des nombres à virgule flottante. Ce processus permet
d’améliorer la performance en libérant l’UCT pour d’autres tâches. Le coprocesseur
mathématique est également appelé unité à virgule flottante.
Un nombre à virgule flottante, également appelé nombre réel, comprend deux parties et un
signe. La mantisse est la partie qui représente la grandeur du nombre et l’exposant est la partie
qui désigne la quantité de rangs avec laquelle la virgule décimale ou binaire est décalée.
Prenons l’exemple du nombre entier décimal 241506800. La mantisse vaut 0,2415068 et
l’exposant est 9. Le nombre à virgule flottante s’écrit : 0,2415068 109 .
Pour les nombres à virgule flottante binaires le format est définit par la norme ANSI/IEEE
754-1985 selon trois notations : précision simple, précision double et précision étendue. Leur
format est identique, à l’exception du nombre de bits. Les nombres à virgule flottante de
précision simple comptent 32 bits, ceux de précision double ont 64 bits et les nombres de
précision étendue comptent 80 bits.
Dans la notation standard de précision simple pour les nombres binaires, le bit de signe (S)
est celui situé le plus à gauche, l’exposant (E) comprend huit bits représentent un exposant
polarisé (obtenue en additionnant 127 à l’exposant réel) et la mantisse ou partie fractionnaire
(F) comprend les 23 bits de droite.
Hatem CHOUCHANE
7
Systèmes logiques 1 ISET de Sousse
Exemple : Convertir le nombre décimal 3248 en un nombre binaire à virgule flottante de
précision simple.
Convertir d’abord le nombre décimal en binaire :
3248 (111111011100000) 2 1,11111011100000 214
Par convention, le MSB n’occupe pas de position de bit puisqu’il est toujours égal à 1. En
conséquence, la mantisse est la partie fractionnaire du nombre binaire de 23 bits :
11111011100000000000000 et l’exposant polarisé donne 14 127 141 (10001101) 2 .
Le nombre à virgule flottante complet est donc :
0 10001101 11111011100000000000000
4.1.5 Code « Décimal Codé Binaire » DCB
Dans le code DCB, on code chaque chiffre selon son équivalent binaire sur 4 bits.
Exemple : 9708 (1001011100001000) DCB
Ce codage est pondéré, et les poids des bits successifs, en partant de la droite, sont
respectivement : 1, 2, 4, 8,10, 20, 40, 80,100, 200, 400, 800,...
4.1.6 Code Excédent 3
Dans le code excédent 3, on code chaque chiffre selon son équivalent binaire, augmenté de
3.
Exemple : 9708 (1100101000111011)exc 3
4.1.7 Codage avec bit de parité
Pour se garantir contre les erreurs de transmission, on ajoute un bit vérificateur au mot : le
bit de parité. Si, dans le mot initial, le nombre de bits égaux à 1 est pair, on met le bit de parité
à 0 ; Si, dans le mot initial, le nombre de bits égaux à 1 est impair, on met le bit de parité à 1.
Ainsi le nombre total de bits égaux à 1 (dans le mot initial et le bit de parité) est toujours pair,
c’est ce que devra vérifier le détecteur d’erreur.
4.2 Codage alphanumérique
4.2.1 Codes ASCII
Utilisé pour les échanges en informatique, le code ASCII (American Standard Code For
Information Interchange) permet de coder les 26 lettres de l’alphabet (majuscules et
minuscules), les 10 chiffres et les signes de ponctuation : il utilise un octet ( 8 bits). Cet octet
donne une certaine souplesse d’utilisation, puisqu’il permet de coder des commandes de
contrôle en plus des caractères alphanumériques (bits 1 à 7 ), d’utiliser le bit comme bit de
parité ou pour définir un deuxième tableau de caractères (caractères étendus).
Hatem CHOUCHANE
8
Systèmes logiques 1 ISET de Sousse
Codes ASCII
bit b7 0 0 0 0 1 1 1 1
bit b6 0 0 1 1 0 0 1 1
bit b5 0 1 0 1 0 1 0 1
b4 b3 b2 b1
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1
Table des codes ASCII pour les bits 1 à 7
Exemples
K = (4B)16 75 64 11 (1001011) 2
z = (7A)16 122 112 10 (1111010) 2
4.2.2 Les codes à barres
Parmi toutes les techniques d’identification automatique, le code à barres présente de
nombreux avantages qui justifient son utilisation courante :
Rapidité et fiabilité
Même avec le plus simple des lecteurs de codes à barres (laser ou caméra), le décodage est
toujours très rapide. La probabilité d’erreur de lecteur est dans les cas les plus courants de
l’ordre de 1 pour 2 millions, alors qu’une saisie par clavier classique provoque un taux d’erreur
de l’ordre de 2 à 3 pour cent.
Grande résistance aux conditions d’utilisation difficiles
Hatem CHOUCHANE
9
Systèmes logiques 1 ISET de Sousse
Même si un code a été partiellement détruit, la longueur des barres permet d’en conserver
une partie visible, et donc lisible. Ci-contre, le code à barres reste utilisable.
3 7 3 1 5 2 1
Facilité d’utilisation et de réalisation
Les codes à barres sont facilement imprimables sur le lieu d’utilisation. Ils peuvent être de
différentes tailles. Ils peuvent être lus grâce à des lecteurs laser ou caméras CCD, à une distance
allant de quelques centimètres à plusieurs mètres.
Faible prix de revient
Le symbole de code à barres peut être inséré à l’étiquette existante, d’où un coût
négligeable.
Les codes E.A.N. (European Article Number)
Le code EAN est le code à barres le plus utilisé dans le monde pour la distribution de
produits d’alimentation : c’est un standard international. Il est composé de 8 ou 13 chiffres
(code EAN 8 ou EAN 13).
Le code EAN 13 occupe 95 modules (3 6 7 5 6 7 3) . Chaque module peut être
blanc (0) ou noir (1) . Un chiffre est codé par 7 modules.
Module
7 modules
Le code EAN 13 est délimité par deux marques de terminaison (101) . Le code est structuré
en deux zones de même taille séparées par une marque centrale (01010) . Dans chaque zone
sont représentés six chiffres C1 à C6 et C7 à C12 .
Hatem CHOUCHANE
10
Systèmes logiques 1 ISET de Sousse
C13 C12 C11 C10 C9 C8 C7 C6 C5 C4 C3 C2 C1
01010 101
Marque de Marque Marque de
terminaison centrale terminaison
C1 : Clé de contrôle ;
C2 C7 : Code produit ;
C8 C12 : Code entreprise ;
C13 : Code pays.
Aucune barre n’est attribuée au chiffre C13 . Le chiffre C1 est calculée de la manière suivante :
6 6
C1 10 3 C2i C2i 1 MOD 10 , MOD 10 : reste de la division entière par dix.
i 1 i 1
Chaque chiffre est codé sur 7 bits selon un des codes A, B ou C.
Chiffre Code A Code B Code C C13 C12 C11 C10 C9 C8 C7 C6 à
0 0001101 0100111 1110010 C1
1 0011001 0110011 1100110 0 A A A A A A C
2 0010011 0011011 1101100 1 A A B A B B C
3 0111101 0100001 1000010 2 A A B B A B C
4 0100011 0011101 1011100 3 A A B B B A C
5 0110001 0111001 1001110 4 A B A A B B C
6 0101111 0000101 1010000 5 A B B A A B C
7 0111011 0010001 1000100 6 A B B B A A C
8 0110111 0001001 1001000 7 A B A B A B C
9 0001011 0010111 1110100 8 A B A B B A C
9 A B B A B A C
5. Arithmétique binaire
Hatem CHOUCHANE
11
Systèmes logiques 1 ISET de Sousse
L’arithmétique binaire est essentielle dans tous les ordinateurs. Pour comprendre le
fonctionnement de ces systèmes, il fait connaître les notions de base de l’addition, de la
soustraction, de multiplication et de la division binaires.
5.1 Addition binaire
0 0 0
0 1 1
Les quatre règles de base de l’addition de nombres binaires sont les suivantes :
1 0 1
1 1 10
Dans la quatrième règle, on trouve une somme égale à 0 et une retenue égale à 1.
Exemple : Additionner les nombres binaires suivants : 11 11 ; 111 11 ; 110 100 .
Solution : 11 11 110 ; 111 11 1010 ; 110 100 1010 .
5.2 Soustraction binaire
Les quatre règles de base de la soustraction binaire sont les suivantes :
0 0 0
0 1 1, avec un emprunt de 1
1 0 1
1 1 0
Exemple : Effectuer les soustractions binaires suivants : 11 01 ; 11 10 ; 101 011 .
Solution : 11 01 10 ; 11 10 01 ; 101 011 010 .
5.3 Multiplication binaire
0 0 0
0 1 0
Les quatre règles de base de Multiplication binaire sont les suivantes :
1 0 0
1 1 1
On multiplie les nombres binaires de la même façon qu’on multiplie les nombres décimaux.
Exemple : Effectuer les multiplications binaires suivantes : 11 11 ; 101111 ; 11011010 .
Solution : 1111 1001 ; 111101 100011 ; 11011010 10000010 .
5.4 Division binaire
La division de nombres binaires est identique à celle de nombres décimaux.
Exemple : Effectuer les divisions binaires suivantes : 110 11 ;110 10 ; 1100100 .
Solution : 110 11 10 ; 110 10 11 ; 1100 100 11.
6. Opérations arithmétiques avec nombres signés
Hatem CHOUCHANE
12
Systèmes logiques 1 ISET de Sousse
Comme la notation en complément à 2 est la plus couramment utilisée dans les ordinateurs
et les systèmes à microprocesseurs pour la représentation de nombres binaires signés. Nous
limiterons notre étude des opérations arithmétiques en n’utilisant que cette notation en
complément à 2 avec huit bits.
6.1 Addition
Les deux nombres d’une addition sont le cumulateur et le cumulande. Le résultat de
l’addition est une somme.
L’addition de deux nombres positifs donne un résultat positif.
Exemple : 00000111 00000100 00001011
L’addition d’un nombre positif et d’un nombre négatif plus petit donne un résultat positif.
Exemple : 0000111111111010 00001001 , la retenue finale est rejetée.
L’addition d’un nombre positif et d’un nombre négatif plus grand ou de deux nombres
négatifs donne un résultat négatif.
Exemples : 00010000 11101000 11111000 ;
1111101111110111 11110010 , la retenue finale est rejetée.
Le processus d’addition consiste à additionner les deux nombres et rejeter la retenue finale.
Lorsque deux nombres sont additionnés et que la quantité de bits requise pour afficher leur
somme excède la quantité de bits de ces nombres, on atteint une condition de dépassement.
Cette condition s’identifie par un bit de signe erroné. Un dépassement ne peut se produire que
si les deux nombres sont positifs ou si les deux nombres sont négatifs.
Exemple : 01111101 00111010 10110111 (bit de signe inexact, grandeur inexacte).
Dans cet exemple, la somme de 183 requiert huit bits de grandeur. Comme les nombres ne
comportent que sept bits de grandeur avec un bit de signe, une retenue est reportée sur le bit de
signe, provoquant une condition de dépassement.
Pour additionner une chaîne de nombres, on additionne les deux premiers nombres, puis le
troisième nombre à la somme des deux premiers, puis le quatrième nombre à cet résultat et ainsi
de suite. Les ordinateurs procèdent ainsi pour additionner des chaînes de nombres.
Exemple : Additionner les nombres signés 01000100 , 00011011 , 00001110 et 00010010 .
Solution : 01000100 00011011 01011111 ; 01011111 00001110 01101101 ;
01101101 00010010 01111111.
6.2 Soustraction
Hatem CHOUCHANE
13
Systèmes logiques 1 ISET de Sousse
La soustraction est un cas spécial d’addition, dans laquelle un diminuteur est soustrait d’un
diminuende pour donner une différence. La soustraction est l’addition dans laquelle on inverse
le signe du diminuteur. On change le signe d’un nombre binaire positif ou négatif en prenant
son complément à 2.
La soustraction de deux nombres signés s’obtient en prenant le complément à 2 du
diminuteur et en l’additionnant au diminuende et rejeter toute retenue finale.
Exemple : Soustrayez 11110111 de 00001100 .
Solution : 00001100 11110111 00001100 00001001 00010101 .
6.3 Multiplication
Les trois nombres d’une multiplication sont le multiplicande, le multiplicateur et le produit :
8 Multiplica nde
3 Multiplica teur
24 produit
La multiplication est équivalente à une addition répétitive du multiplicande, autant de fois
que la quantité représentée par le multiplicateur : c’est la méthode d’addition directe.
L’inconvénient de cette technique est qu’elle peut demander beaucoup de temps lorsque le
multiplicateur est un nombre élevé. Dans une multiplication binaire, les deux nombres doivent
être en notation binaire réelle, c’est-à-dire non complémentée.
Exemple : Multiplier les nombres binaires signés 01001101 et 00000100 en utilisant la
méthode d’addition directe.
Solution :
01001101 01001101 10011010 01001101 11100111 01001101 100110100
La méthode des produits partiels est plus courante car elle se rapproche de la multiplication
traditionnelle. Les étapes de base de cette technique sont les suivantes :
Etape1 : Déterminer si les signes du multiplicande et du multiplicateur sont identiques ou
différents, afin de connaître le signe de leur produit.
Etape2 : Exprimer tout nombre négatif en notation binaire réelle (non complémentée). Il faut
complémenter à 2 tout nombre négatif pour obtenir sa notation binaire réelle.
Etape3 : En commençant avec le bit le moins significatif du multiplicateur, calculer les produits
partiels. Lorsque le bit du multiplicateur vaut 1, le produit partiel est identique au multiplicande.
Lorsque le bit du multiplicateur vaux 0, le produit partiel donne 0. Décalez chaque nouveau
produit partiel consécutif d’un rang vers la gauche par rapport au précédent.
Etape4 : Additionnez chaque nouveau produit partiel consécutif à la somme des produits
partiels précédents pour obtenir le produit final.
Hatem CHOUCHANE
14
Systèmes logiques 1 ISET de Sousse
Etape5 : Si le bit de signe déterminer à l’étape 1 est négatif, prenez le complément à 2 du
produit. S’il est positif, laissez le produit en notation binaire réelle. Joignez le bit au produit.
Exemple : Multiplier le nombre binaire signé 01010011 par 11000101.
Solution :
Etape1 : Le bit de signe du multiplicande est 0 est celui du multiplicateur est 1. Le bit de signe
du produit sera donc1 (c’est-à-dire un nombre négatif).
Etape2 : Prenez le complément à 2 du multiplicateur afin d’obtenir sa notation réelle.
11000101 00111011
Etape 3 et 4 : 1010011 0111011 1001100100001.
Etape5 : Comme nous avons déterminé à l’étape 1 que le signe du produit est un 1 prenez le
complément à 2 du produit : 1001100100001 0110011011111 .
Joindre le bit de signe : 10110011011111.
6.4 Division
Les nombres d’une division sont le dividende, le diviseur et le quotient :
Dividende
Quotient
Diviseur
Dans une division binaire, les deux nombres doivent être en notation binaire réelle (non
complémentée). Les étapes de base du processus de division sont :
Etape1 : Déterminez si les signes du dividende et du diviseur sont identiques ou différents pour
connaître le signe du quotient. Initialiser le quotient à 0.
Etape2 : Soustrayez le diviseur du dividende en additionnant le complément à 2 pour obtenir
le premier reste partiel et ajoutez 1 au quotient. Si ce reste partiel est positif, passez à l’étape 3.
S’il est négatif ou égale à 0, la division est achevée.
Etape3 : Soustrayez le diviseur du reste partiel et ajoutez 1 au quotient. Si le résultat est positif,
répétez cette étape avec le reste partiel suivant. Si le résultat est négatif ou égal à 0, la division
est achevée.
Continuez à soustraire le diviseur du dividende et des restes partiels jusqu’à l’obtention d’un
résultat négatif ou de 0. Comptez le nombre de soustractions effectuées pour obtenir le quotient.
Exemple : Divisez 01100100 par 00011001 .
Solution :
Etape1 : Comme les signes des nombres sont positifs, le quotient sera positif. Le quotient est
initialement égal à zéro : 00000000
Hatem CHOUCHANE
15
Systèmes logiques 1 ISET de Sousse
Etape2 : Le diviseur est soustrait du dividende avec une addition en complément à 2 les
retenues finales sont rejetées.
01100100 Dividende
11100111 Compément à 2 du diviseur
01001011 Pr emier reste partiel positif
En ajoutant 1 au quotient, on obtient : 00000000 00000001 00000001.
Etape3 :
On soustrait le diviseur du premier reste partiel en additionnant le complément à 2 du diviseur.
01001011 Pr emier reste partiel
11100111 Compément à 2 du diviseur
00110010 Deuxième reste partiel positif
En ajoutant 1 au quotient, on obtient : 00000001 00000001 00000010 .
Etape4 :
On soustrait le diviseur du deuxième reste partiel en additionnant le complément à 2 du diviseur.
00110010 Deuxième reste partiel
11100111 Compément à 2 du diviseur
00011001 Troisième reste partiel positif
En ajoutant 1 au quotient, on obtient : 00000010 00000001 00000011.
Etape5 :
On soustrait le diviseur du troisième reste partiel en additionnant le complément à 2 du diviseur.
00011001 Troisième reste partiel
11100111 Compément à 2 du diviseur
00000000 Re ste égal à zéro
En ajoutant 1 au quotient, on obtient : 00000011 00000001 00000100 .
Hatem CHOUCHANE
16