Représentation par leur valeur absolue et leur signe
C'est naturellement la première représentation qui vient à l'esprit. Il suffit d'affecter un bit pour le signe et d'attribuer par convention la valeur 0 au signe + et la valeur 1 au signe -.
Ainsi le nombre +32 s'écrira dans le système binaire :
et le nombre -32 :
Autres exemples :
Le nombre + 9,750 s'écrit :
et - 9,750 :
Ainsi le nombre +32 s'écrira dans le système binaire :
et le nombre -32 :
Autres exemples :
Le nombre + 9,750 s'écrit :
et - 9,750 :
Représentation dans le code du complément restreint
Nous allons d'abord définir ce qu'est le complément restreint. Pour cela il faut tenir compte du format de la donnée et de la base dans laquelle elle est exprimée.
Exemples :
Soit l'information (453)10 ; son format est de 3 caractères et la base utilisé est 10.
La valeur maximale que l'on peut exprimer dans ce format est :
9 9 9
La différence qui existe entre cette valeur maximale et 453 s'appelle le complément restreint.
On le nomme aussi complément à 9 car la base utilisée est 10.
Exemples :
Soit l'information (453)10 ; son format est de 3 caractères et la base utilisé est 10.
La valeur maximale que l'on peut exprimer dans ce format est :
9 9 9
La différence qui existe entre cette valeur maximale et 453 s'appelle le complément restreint.
On le nomme aussi complément à 9 car la base utilisée est 10.
Cette notion de complément restreint se retrouve avec n'importe quelle base utilisée et plus particulièrement en binaire :
complément restreint de (1001)2
complément restreint de (F0A8)16
complément restreint de (1001)2
complément restreint de (F0A8)16
Si nous reprenons l'exemple du binaire, il n'est même pas nécessaire d'exécuter une opération de soustraction pour obtenir ce complément restreint on s'aperçoit qu'il suffit de transformer tous les 1 en 0 et vice versa pour l'obtenir.
100110(2) à pour complément restreint : 011001
Certaines machines utilisent ce code pour la représentation des nombres signés. Il est alors appelé code du complément à 1.
Ainsi le nombre + 25 sera représenté de la manière suivante :
et - 25 :
CR = Complément Restreint.
100110(2) à pour complément restreint : 011001
Certaines machines utilisent ce code pour la représentation des nombres signés. Il est alors appelé code du complément à 1.
Ainsi le nombre + 25 sera représenté de la manière suivante :
et - 25 :
CR = Complément Restreint.
Représentation dans le code du complément vrai
Comme pour le complément restreint, nous allons définir ce qu'est le complément vrai d'un nombre.
Le complément vrai d'un nombre est la valeur qu'il faut ajouter à ce nombre pour obtenir la valeur maximale + 1 que l'on peut exprimer (en tenant compte du format et de la base utilisés).
Exemples :
Calcul du complément vrai de (453)10
Valeur maximale ===> 999
Valeur maximale + 1 ===> 1 000
Complément vrai :
Calcul du complément vrai de (8AF)16
Valeur maximale ===> FFF
Valeur maximale + 1 ===> 1 000
Complément vrai :
Le complément vrai d'un nombre est la valeur qu'il faut ajouter à ce nombre pour obtenir la valeur maximale + 1 que l'on peut exprimer (en tenant compte du format et de la base utilisés).
Exemples :
Calcul du complément vrai de (453)10
Valeur maximale ===> 999
Valeur maximale + 1 ===> 1 000
Complément vrai :
Calcul du complément vrai de (8AF)16
Valeur maximale ===> FFF
Valeur maximale + 1 ===> 1 000
Complément vrai :
On peut aussi obtenir le complément vrai d'un nombre en calculant d'abord son complément restreint et en ajoutant ensuite 1.
Exemples :
Un exemple en binaire :
Restons en binaire (base 2) et appliquons une autre méthode pour traduire un nombre encomplément à 2.
(le complément vrai est également appelé complément à 2)
On part du bit de poids le plus faible (bit de droite) :
===> si c'est un zéro, on recopie 0 jusqu'au premier 1 rencontré,
===> si c' est un "1", on garde ce premier 1.
Ensuite on inverse tous les bits après le premier 1 rencontré à partir de la droite.
Attention si le bit le plus à droite est un 1, c'est aussi le premier 1 rencontré !Exemple :
(42)10 = (101010)2 ===> le bit le plus à droite est un 0
0 ==> 0 on conserve le zéro
1 ==> 1 premier 1 rencontré est conservé
0 ==> 1 inversion des bits après le premier 1 rencontré
1 ==> 0
0 ==> 1
1 ==> 0
Le nombre (42)10 = (101010)2 s'écrit en complément vrai :
010110
En utilisant la méthode du complément restreint + 1 :
Un autre exemple :
(59)10 = (111011)2 ===> le bit le plus à droite est un 1
1 ==> 1 premier 1 rencontré est conservé
1 ==> 0 inversion des bits après le premier 1 rencontré
0 ==> 1
1 ==> 0
1 ==> 0
1 ==> 0
Le nombre (59)10 = (111011)2 s'écrit en complément vrai :
000101
En utilisant la méthode du complément restreint + 1 :
Exemples :
Un exemple en binaire :
Restons en binaire (base 2) et appliquons une autre méthode pour traduire un nombre encomplément à 2.
(le complément vrai est également appelé complément à 2)
On part du bit de poids le plus faible (bit de droite) :
===> si c'est un zéro, on recopie 0 jusqu'au premier 1 rencontré,
===> si c' est un "1", on garde ce premier 1.
Ensuite on inverse tous les bits après le premier 1 rencontré à partir de la droite.
Attention si le bit le plus à droite est un 1, c'est aussi le premier 1 rencontré !Exemple :
(42)10 = (101010)2 ===> le bit le plus à droite est un 0
0 ==> 0 on conserve le zéro
1 ==> 1 premier 1 rencontré est conservé
0 ==> 1 inversion des bits après le premier 1 rencontré
1 ==> 0
0 ==> 1
1 ==> 0
Le nombre (42)10 = (101010)2 s'écrit en complément vrai :
010110
En utilisant la méthode du complément restreint + 1 :
Un autre exemple :
(59)10 = (111011)2 ===> le bit le plus à droite est un 1
1 ==> 1 premier 1 rencontré est conservé
1 ==> 0 inversion des bits après le premier 1 rencontré
0 ==> 1
1 ==> 0
1 ==> 0
1 ==> 0
Le nombre (59)10 = (111011)2 s'écrit en complément vrai :
000101
En utilisant la méthode du complément restreint + 1 :
Complément vrai = complément restreint + 1
En résumer pour l'arithmétique binaire :
Lorsque l'on veut représenter un nombre avec son signe (nombre signé) la solution la plus simple consiste à rajouter un bit sur la gauche de la valeur absolue de ce nombre.
Par convention ce bit sera à 0 pour représenter un nombre positif
et à 1 pour représenter un nombre négatif.
0 1 1 0 signifie + 110 ===> (+ 6)10
1 1 1 0 signifie - 110 ===> (- 6)10
Ce système intéressant par sa simplicité a pour inconvénient de présenter deux zéros.
0000 ==> + 0
1000 ==> - 0.
Par convention ce bit sera à 0 pour représenter un nombre positif
et à 1 pour représenter un nombre négatif.
0 1 1 0 signifie + 110 ===> (+ 6)10
1 1 1 0 signifie - 110 ===> (- 6)10
Ce système intéressant par sa simplicité a pour inconvénient de présenter deux zéros.
0000 ==> + 0
1000 ==> - 0.
Pour faciliter le travail des machines informatiques et pour des circuits électroniques simplifiés on représente un nombre signé en complément à 1 (complément restreint) ou en complément à 2 (complément vrai = complément restreint +1).
La représentation en complément à 2 (la plus répandu) à pour avantage de ne présenter qu'un seul zéro.
Le bit le plus à gauche sera représentatif du signe :
0 pour un nombre positif
1 pour un nombre négatif.
Le tableau suivant donne un aperçu des différentes représentations pour un nombre compris entre - 128 et + 127.
La représentation en complément à 2 (la plus répandu) à pour avantage de ne présenter qu'un seul zéro.
Le bit le plus à gauche sera représentatif du signe :
0 pour un nombre positif
1 pour un nombre négatif.
Le tableau suivant donne un aperçu des différentes représentations pour un nombre compris entre - 128 et + 127.
Tableaux représentant des nombres signés
Exemple sur un octet :
Aucun commentaire:
Enregistrer un commentaire