2

char 元素中的半字节是什么?

我们如何交换它们?

任何人都可以用一个例子来解释半字节的交换:

4

3 回答 3

8

半字节(或 nybbles,类似于字节与咬)是 4 位块char

您可以将它们交换为:

c = ((c & 0x0F) << 4) | ((c & 0xF0) >> 4);
于 2013-04-13T06:07:38.597 回答
2
int x =  0xab; // 1010 1011 

int x1 = ( x & 0xF0) ; // 1010 0000
int x2 = ( x & 0x0F) ; // 0000 1011

x = ( x2 << 4 | x1 >> 4 ) ; // 1011 1010
于 2013-04-13T07:31:01.057 回答
1
char temp1,temp2,z;// your o/p
temp1=((x & 0x0f)<<4);//x  be your input
temp2=((x & 0xf0)>>4);
z=temp1|temp2;
于 2013-04-13T06:18:11.337 回答