0
私はビットシフトとマスキングを使用して32ビットのバイナリ整数からビットを抽出しようとしていますが、私はそれを気にしています。Cの整数からビットを抽出するには?
#include <stdio.h>
int main(){
int number = 87; //0000 000 0000 0000 0000 0000 0101 0111
int i;
int bit;
int g = 0;
for(i = 32; i > 0; i--){
if(g%4==0 && g!=0){
printf(" ");
}
g++;
bit = (number >> i) & 1;
printf("%d", bit);
}
printf("\n");
return 0;
}
のために働く場合は、ステッピングみましたコード内の行単位でdeバグ? –
また、ビット番号はゼロベースであることに注意してください。最初のビットは数字「0」であり、32ビットの数字の最後のビットは数字「31」である。 –
どうやってやるの? – christian