Explication: pour obtenir le complément a deux d'un nombre:
on fait le complément à un du nombre binaire, et on ajoute 1
0101 codage de 5 en binaire
1010 complément à un
1011 on ajoute 1 : représentation de -5 en complément à deux
Pour faire l'inverse:
1011 on ajoute 1 : représentation de -5 en complément à deux
0100 complément à 1
0101 on ajoute 1
Après il faut savoir que, en binaire,
5=1*2^0+0*2^1+1*2^2+0*2^3
Note que la notion de complément à deux nécessite de définir un format de données (dans notre exemple, 4 bits), et que le bit de poids forts est le bit de signe (=0: Nombre positif, =1, nombre négatif).
A partir de la, pour transformer un nombre binaire (positif ou négatif) il faut:
1 déterminer son signe en fonction du bit de signe
2 si négatif, positionner le signe à "-" et effectuer le omplément a 2 de ta valeur (pour obtenir la valeur positive.
3/ Si positif, mettre le signe à "+"
4 convertir la valeur binaire (soit originelle si le bit de signe est à 0, soit celle issue de l'étape 2 si bit de signe=1) en décimal.
- prendre en compte le signe détermoné a l'étape 2 ou 3
J'espère que ça répond à tes questions.
Sinon pour comprendre e complément à deux:
Toujours sur 4 bits: 0=0000b=0x0. OK?
Retire 1 à cette valeur: sur 4 bits, tu obtiens en binaire 1111, ou 0xf en hexa, soit -1 en decimal.
Complément à deux de 1111:
1111 valeur initiae.
0000 Complément à 1
0001 on ajoute 1
# C'est pourtant simple ...
Posté par totof2000 . En réponse au message Complémentation à 2. Évalué à 3.
Explication: pour obtenir le complément a deux d'un nombre:
on fait le complément à un du nombre binaire, et on ajoute 1
0101 codage de 5 en binaire
1010 complément à un
1011 on ajoute 1 : représentation de -5 en complément à deux
Pour faire l'inverse:
1011 on ajoute 1 : représentation de -5 en complément à deux
0100 complément à 1
0101 on ajoute 1
Après il faut savoir que, en binaire,
5=1*2^0+0*2^1+1*2^2+0*2^3
Note que la notion de complément à deux nécessite de définir un format de données (dans notre exemple, 4 bits), et que le bit de poids forts est le bit de signe (=0: Nombre positif, =1, nombre négatif).
A partir de la, pour transformer un nombre binaire (positif ou négatif) il faut:
1 déterminer son signe en fonction du bit de signe
2 si négatif, positionner le signe à "-" et effectuer le omplément a 2 de ta valeur (pour obtenir la valeur positive.
3/ Si positif, mettre le signe à "+"
4 convertir la valeur binaire (soit originelle si le bit de signe est à 0, soit celle issue de l'étape 2 si bit de signe=1) en décimal.
- prendre en compte le signe détermoné a l'étape 2 ou 3
J'espère que ça répond à tes questions.
Sinon pour comprendre e complément à deux:
Toujours sur 4 bits: 0=0000b=0x0. OK?
Retire 1 à cette valeur: sur 4 bits, tu obtiens en binaire 1111, ou 0xf en hexa, soit -1 en decimal.
Complément à deux de 1111:
1111 valeur initiae.
0000 Complément à 1
0001 on ajoute 1
compris ?