top of page

1  #include<stdio.h>
2  int main(void){
3
4     unsigned short getbit(unsigned short number, unsigned short position);
5     short       a=-1;
6     short      *ap=&a;
7     unsigned short *bp;
8     int i;
9     unsigned short b;
10    bp=(unsigned short *) ap;
11    b=*bp;
12    for(i=15;i>=0;i--)
13       printf("%4d",i);
14    printf("\n");
15
16    for(i=15;i>=0;i--)
17       printf("%4u",getbit(*bp,i));
18    printf("\n");
       
19   return 0;
20 }
21
22 unsigned short getbit(unsigned short number, unsigned short position){
23
24    unsigned short tmp;
25
26    number=number>>position;
27
28    tmp=0U;
29    tmp=~tmp;
30    tmp=tmp<<1;
31    tmp=~tmp;
32
33    return number&tmp;
34 }
 

  • b-facebook
  • Twitter Round
  • b-googleplus
bottom of page