我需要一些按位操作的帮助。 我有数字(64位)前16位是有意义的,我想将其余的设置为“1”
00000000 11000001 00000000 00000000 ... < - currrent value
00000000 11000001 11111111 11111111 ... < - 结果我正在努力实现
P.S。哦耶!有时,要解决 - 你只需要写出你的任务:)
我明白了: value | =( - 1<< bitsCount);
bitsCount - 我有意义的位数
答案 0 :(得分:5)
使用按位OR运算符:
value |= 0xFFFF
1111111111111111
2 = 2 16 - 1 = FFFF
16
答案 1 :(得分:2)
或11111111 11111111
。 foo | 0xffff