Bonjour,
Je me renseigne actuellement sur les lacunes que j’ai en informatique pour pouvoir passer à terme une VAE (je n’ai pas de formation en informatique, j’apprends par ci et par là…)
En reprenant les éléments enseignés sur une licence informatique, j’ai fait le point sur ce que je connaissais et ce que… je ne connaissais pas !
Je regarde actuellement la partie « Architecture de l’ordinateur » en autodidacte.
Et je ne comprends pas un point (en page 10 sur 700 pages… c’est mal parti ! )
Ci-dessous une extraction du tutoriel :
-------------------------------------------------------------------
Ce complément à deux se calcule en plusieurs étapes :
• 1 - On convertit notre nombre en complément à un, en inversant tous les bits du nombre.
• 2 - On ajoute 1 au résultat : on obtient alors le complément à deux de notre nombre. Ce complément à deux est alors strictement équivalent au nombre d'origine, du point de vue de l'addition, de la multiplication, de la soustraction, etc.
Pas convaincu ? alors on va prendre un exemple : 7 + (-6). On suppose que ces nombres sont codés sur quatre bits.
Pour 7, pas de changements, ça reste 0111. Pour coder -6, on va :
• prendre 6 : 0110 ;
• calculer son complément à 1 : 1001 ;
• calculer son complément à 2 : 1010.
Ensuite, il nous faut faire l'addition : 0111 + 1010 = 10001.
Et là, on prend en compte le fait que nos deux nombres de base sont codés sur 4 bits ! On ne doit garder que les 4 derniers bits de notre résultat. Le résultat de 0111 + 1010 = 10001, une fois tronqué sur 4 bits, donnera alors 0001. On trouve bien le bon résultat.
----------------------------------------------------------------------------------------------------
Pour obtenir 6 en binaire, tout est bon.
Pour calculer le complément à 1, c’est bon aussi.
Mais pour calculer le complément à 2, je ne comprends pas.
Ajouter 1 au résultat ? Est-il possible de décomposer cette partie-là pour que je comprenne le cheminement ?
Idem pour l’addition :
7 – 6 = 1 => 0111 + 1010 = 0001 mais d’où vient le 1 du bit le plus fort ? Cela ne peut être pour le signe car nous sommes positif. Cela devrait être 0
D’avance merci pour votre aide.
Partager