C 运算符将两个32位数拼接成64位数
1. 将两个8位数拼接成一个16位数。
2.将一个16位数拆分成两个8位数。
3. 将两个32位数拼接成一个64位数.
4.将一个64位数拆分成两个32位数。
使用到C++运算符 主要是两个:移位( << ) 运算符和 或 ( | )运算符.
话不多说,下面上代码:
1.8位
uint8_t my_8_left = 12;
uint8_t my_8_right = 33;
uint16_t my_16 = 0;
//拼凑
my_int16 = my_8_left;
my_int16 = (my_16 << 8);
my_int16 |= my_8_right;
//拆分
my_8_right = my_16;
my_8_left = my_16 >> 8;
2. 32位
uint32_t my_int32_left = 12;
uint32_t my_int32_right = 33;
uint64_t my_int64 = 0;
//拼凑
my_int64 = my_int32_left;
my_int64 = (my_int64 << 32);
my_int64 |= my_int32_right;
//拆分
my_int32_right = my_int64;
my_int32_left = my_int64 >> 32;
赞 (0)