C++运算符将两个32位数拼接成64位数

来源:互联网 发布:linux删除用户组和用户 编辑:程序博客网 时间:2024/06/03 21:05

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;


更多内容请点击点击打开链接





原创粉丝点击