【初心者歓迎】C/C++室 Ver.48【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.48【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト339:デフォルトの名無しさん 08/02/10 22:21:50 test 340:デフォルトの名無しさん 08/02/10 22:28:40 十進数の入力を二進数表示するコードを書いてみたんですが、 最初MASKを0x01に設定して1とか255とか入力したら桁が上下逆になりました。 0x80000000に設定して頭からチェックさせてやったらうまくいったんですが、 intel系のプロセッサはリトルエンディアンだからビットを上下逆に扱うんじゃないんですか? /* d2b.c */ #include <stdio.h> #define MASK 0x80000000 int main(void) { unsigned int x; int n; scanf("%d", &x); for(n = 0; n < 32; n++){ if( ((x << n) & MASK) == 0) putchar('0'); else putchar('1'); if( (n+1) % 4 == 0) putchar(' '); } return(0); } 341:デフォルトの名無しさん 08/02/10 22:34:58 >>340 ×ビットを上下逆 ○バイトの並びが逆 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch