Décalage

Résolu/Fermé
bonuxdu13 - Modifié le 20 juil. 2020 à 19:22
[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 - 21 juil. 2020 à 17:51
Bonjour, mon cours indique les opérateurs de décalage peuvent engendrer des modifications concernant la taille de la variable résultat. Je veux bien des exemples de ceci.
si je décale à gauche, les bits à un finiront par etre perdus/tronqués. Je ne vois pas de dépassement de capacité possible sur le type de la variable. Seulement un résultat faux ou indéfini possible. Si je décale à droite les valeurs stockées sont plus petites, mais bon le type de la variable ne change pas, c'est possible puisqu'on peut bien coder une valeur inférieure à 256 (pour du non signé par exemple) dans un entier long si on en a envie. Mais bon je pense que le terme "taille" de la variable de mon cours fait référence à celle du type de celle ci, fixe. Cette phrase est un non sens pour moi. Pouvez vous m'eclairer?

3 réponses

yg_be Messages postés 21304 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 1 326
20 juil. 2020 à 22:39
bonjour, il me semble que le type du résultat d'une operation est fixe, à fortiori si le résultat est enregistré dans une variable.
si tu nous donnes plus de contexte, nous y trouverons peut-être un sens.
0
[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 1 043
21 juil. 2020 à 10:51
Salut bonuxdu13,

Le terme "taille" fait référence à celle du type, oui, mais cela pourrait s'interpréter de la façon suivante :

En cas de décalage à gauche, pour éviter d'obtenir un résultat "faux" (non tronqué) de l'opération, il est nécessaire d'affecter préalablement le contenu d'une variable d'un certain type à un type semblable de plus grande taille.

Evidemment, cela ne se fait pas tout seul, c'est un point d'attention requis du programmeur.

Dal
0
yg_be Messages postés 21304 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 1 326
21 juil. 2020 à 11:39
bonjour Dal, je pense que tu as très bien interprété:
"en cas d'utilisation des opérateurs de décalage, il peut être utile d'utiliser un type de plus grande taille pour la variable résultat"
0
oui Dal je pense aussi que tu as compris le sens de cette phrase en effet. Je ne l'avais pas envisagé comme celà, tout simplement. Merci!
0
yg_be Messages postés 21304 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023 1 326
21 juil. 2020 à 15:25
peux-tu alors marquer la discussion comme résolue?
0
[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 1 043 > yg_be Messages postés 21304 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 mars 2023
21 juil. 2020 à 17:51
Je pense qu'il ne peux pas le faire car bonuxdu13 n'a pas créé de compte sur CCM.

Je l'ai fait pour lui.
0