将两个整数存储在一个字节中

时间:2012-03-05 04:42:33

标签: memory bit

我想将两个4位整数(1,4,7 .....)存储到一个字节中。

我有2个整数a=0001b=1111,我喜欢把它整数存储到内存中的一个字节。

任何人都可以帮我吗?

1 个答案:

答案 0 :(得分:6)

您需要将其中一个位移4位,然后使用二进制OR。

unsigned char number = (a << 4) | b;

要让他们退出,用1111b掩盖一个,然后将另一个移回:

a = number >> 4;
b = number & 15;