getbits#
getbits.c
/* getbits: get n bits from the position p */
#include<stdio.h>
unsigned getbits(unsigned x,int p,int n);
int main(void)
{
printf("%u",getbits((unsigned)8,3,1));
}
unsigned getbits(unsigned x,int p,int n)
{
return (x >> (p+1-n)) & ~(~0 << n);
}