Masque et d'en extraire les bits en C

J'ai regardé tous les posts sur le masque, mais ne peut toujours pas obtenir ma tête autour de la façon d'extraire certains bits à partir d'un certain nombre de C.

Dire si nous avons un int number 0001 1010 0100 1011 , il est donc représentation hexadécimale est x1a4b droit? Si je veux savoir la 5ème à la 7ème numéro, qui est 101 dans ce cas, doit-je utiliser int mask= 0x0000 1110 0000 0000, int extract = mask&number?

Aussi comment puis-je vérifier si il est 101? Je suppose que == ne fonctionne pas ici... merci Beaucoup!

si vous voulez vérifier la 5th et 7th nombre est 101 ou pas, alors gardez le masque comme int mask= 0x0000 1010 0000 0000. et puis ExNOR .. si extract 5th et 7th bits est 111, alors il est 101
Je pense que votre premier nombre est 0x1a4b pas 0x1a43?
désolé de ma mauvaise! corrigés.
Qu'est-ce que ce 0x0000 1110 0000? Dans le cas où vous voulez montrer un peu de la série ce qui est faux, comme 0x indique une hexadécimal littérale.

OriginalL'auteur stillAFanOfTheSimpsons | 2014-10-14