Codage des nombres relatifs
Pour coder en binaire les nombres relatifs, il faut réserver une partie des codes binaires disponibles (\(2^n\) pour un codage sur \(n\) bits) aux entiers positifs, et l’autre partie aux nombres négatifs.
Le code complément à 2
Le code « complément à 2 » (2 pour « base 2 »), réparti les nombres de la manière suivante :
Exercice :
- Représenter sur un cercle l’ensemble des nombres relatifs que l’on peut coder en binaire sur 3 bits.
- En observant les codes des nombres positifs et négatifs, quel intérêt présente ce codage ?
- Décrire les « opérations » à réaliser sur la représentation binaire d’un nombre permettant d’obtenir son opposé.
Pour coder un nombre négatif, il faut complémenter le code binaire naturel de sa valeur absolue et lui ajouter 1.
\(\bbox[10px,border:2px solid black]{\color{#aaa}\Large{-a = \overline{a}+1}}\)tandis que l’opérateur NON, noté \(\overline{a}\) est une opération binaire (« inversion » de chaque bit du nombre)
Exemple :
le code binaire de l’entier naturel 22 sur un format 8 bits est 0001 0110
pour obtenir son code complément à 2 (pour coder le nombre relatif -22) on commence par complémenter son code binaire naturel : \( \color{#aaa}{\overline{0001\,0110} = 1110\,1001}\)
puis on ajoute 1
Remarques :
- Le nombre de bits doit être défini dans la règle : un nombre négatif n’aura pas le même code sur 8bits et 12bits
exemple : -3710 = 1101 10112 = 1111 1101 10112
- le chiffre binaire de poids fort représente le signe du nombre : 0 = nombre positif ; 1 = nombre négatif
Activité :
Convertir les nombres décimaux suivants en code complément à 2 :
Recommencer …
Recommencer …
Recommencer …
Convertir en écriture décimale les nombres binaires (code complément à 2) suivants :
Recommencer …
Recommencer …