au niveau du bit le plus significatif de bit

Je veux trouver le bit le plus significatif est définie à 1. J'ai essayé tous les moyens possibles à partir de & à ORing tous les bits de 1 à 31 et ça ne fonctionne pas.

Comme si 1000000 je voudrais avoir 7.

Qu'avez-vous essayer dans le détail? Quel a été le résultat?
Est-ce devoirs?
J'ai fait toute la count += 1&(~x >> 1-31); et il m'a donné des numéros différents que ce que j'attend, je veux le bit le plus significatif à 1 et c'est tout
Comment doit-nombres négatifs-elle être traitée?
N'a pas d'importance j'ai besoin de le bit le plus significatif c'est 1 c'est tout. donc, même si j'ai -2 j'ai encore besoin de le bit le plus significatif avec le 1

OriginalL'auteur mkuk | 2012-02-02