info:gene:repdonnees

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
info:gene:repdonnees [2023/10/19 15:10] – [3. Encodage des entiers relatifs (complément à 2)] philinfo:gene:repdonnees [2023/10/19 15:13] (Version actuelle) – [3. Encodage des entiers relatifs (complément à 2)] phil
Ligne 90: Ligne 90:
 //Vérification// : pour n = 18, N<sub>10</sub> ∈ [-2<sup>17</sup>, 2<sup>17</sup>-1] soit **-131072 ≤ N<sub>10</sub> ≤ 131071** //Vérification// : pour n = 18, N<sub>10</sub> ∈ [-2<sup>17</sup>, 2<sup>17</sup>-1] soit **-131072 ≤ N<sub>10</sub> ≤ 131071**
  
 +
 +<callout type="primary" icon="true">**Méthode**
 +  * Les nombres positifs sont représentés de manière usuelle.
 +  * Les **nombres négatifs** sont obtenus en calculant l'opposé du nombre positif par deux opérations successives:
 +    * On **inverse les bits de l'écriture binaire** (opération binaire NON), on fait ce qu'on appelle le complément à un ;
 +    * On **ajoute 1** au résultat (**les dépassements sont ignorés**). \\ Cette opération correspond au calcul de **2<sup>n</sup> − |x|**, où n est la longueur de la représentation et |x| la valeur absolue du nombre à coder. \\ Ainsi, −1 s'écrit comme 256−1 = 255 = 11111111<sub>2</sub>, pour les nombres sur 8 bits. Ceci est à l'origine du nom de cette opération : « complément à 2 puissance n », quasi-systématiquement tronqué en « complément à 2 ».
 +
 +La même opération effectuée sur un nombre négatif donne le nombre positif de départ: **2<sup>n</sup> − (2<sup>n</sup> − x) = x**.
 +</callout>
  
  
  • info/gene/repdonnees.1697721057.txt.gz
  • Dernière modification : 2023/10/19 15:10
  • de phil