20131219【C言語】バイトの上位4ビットと下位4ビットを入れ替える
お題
バイトの上位4ビットと下位4ビットを入れ替える
プログラム概要
文字を入力させ、その文字のビットを表示する。
その後、上位4ビットと下位4ビットを入れ替えて再度ビットを表示する
ソース
#include <stdio.h>
void show_binary(unsigned char u);
int main(void)
{
unsigned char ch, t1, t2;
printf("Please input character: ");
scanf("%c", &ch);
show_binary(ch);
t1 = ch;
t2 = ch;
t1 <<= 4;
t2 >>= 4;
ch = t1 | t2;
show_binary(ch);
return 0;
}
void show_binary(unsigned char u)
{
unsigned char n;
for (n = 128; n > 0; n >>= 1)
if (u & n)
printf("1 ");
else
printf("0 ");
printf("\n");
return;
}
実行結果
Please input character: A
0 1 0 0 0 0 0 1
0 0 0 1 0 1 0 0