Je veux donc représenter le nombre -12.5
. Donc 12,5 équivaut à:
001100.100
Si je ne calcule pas la fraction, c'est simple, -12
est:
110100
Mais qu'est-ce que -12,5? est-ce 110100.100
? Comment puis-je calculer cette fraction négative?
Avec les systèmes de nombres décimaux, chaque position (ou colonne) numérique représente (lecture d'un nombre de droite à gauche): unités (qui est 10 ^ 0), dizaines (c.-à-d. 10 ^ 1), centaines (c.-à-d. 10 ^ 2), etc.
Avec des nombres binaires non signés, la base est 2, ainsi chaque position devient (encore une fois, la lecture de droite à gauche): 1 (c.-à-d. 2 ^ 0), 2 (c.-à-d. 2 ^ 1), 4 (c.-à-d. 2 ^ 2), etc.
Par exemple
2^2 (4), 2^1 (2), 2^0 (1).
En complément à deux signé, le bit le plus significatif (MSB) devient négatif. Il représente donc le signe numérique: "1" pour un nombre négatif et "0" pour un nombre positif.
Pour un nombre à trois bits, les lignes contiendraient ces valeurs:
-4, 2, 1
0 0 1 => 1
1 0 0 => -4
1 0 1 => -4 + 1 = -3
La valeur des bits détenus par un système à virgule fixe (fractionnaire) est inchangée. Les valeurs des colonnes suivent le même schéma que précédemment, base (2) à une puissance, mais avec une puissance négative:
2^2 (4), 2^1 (2), 2^0 (1) . 2^-1 (0.5), 2^-2 (0.25), 2^-3 (0.125)
-1 sera toujours 111.000
- 0,5 ajoutez-y 0,5: 111.100
Dans ton cas 110100.10
est égal à -32 + 16 + 4 + 0,5 = -11,5. Ce que vous avez fait était de créer -12 puis d'ajouter 0,5 plutôt que de soustraire 0,5.
Ce que vous voulez réellement, c'est -32 + 16 + 2 + 1 + 0,5 = -12,5 = 110011.1
vous pouvez doubler le nombre encore et encore jusqu'à ce qu'il soit un entier négatif ou atteigne une limite définie, puis définissez le point décimal en conséquence.
-25 est 11100111, donc -12,5 est 1110011.1
Donc, U veut représenter -12,5 dans la représentation du complément à 2
12,5: - >> 01100.1
Complément de 2 de (01100.1): - >> 10011.1
vérifier les ans en vérifiant la propriété de code pondérée de la représentation du complément à 2 (le poids MSB est -ve). nous obtiendrons -16 + 3 + .5 = -12,5