如何在任何语言的整数的特定位置翻转位
我有一个整数,我想翻转它的th位(从最低的)在其二进制表示中。我该怎么做?n
k
例如,如果我有 和 ,则结果为n=0b01101
k=2
0b01001=9
任何语言都可以。谢谢。
我有一个整数,我想翻转它的th位(从最低的)在其二进制表示中。我该怎么做?n
k
例如,如果我有 和 ,则结果为n=0b01101
k=2
0b01001=9
任何语言都可以。谢谢。
将数字 1 左移到所需的位数,然后对数字进行 XOR。
JavaScript:
var num = 6, k = 2;
num = num ^ (1 << k);
发生了什么事情:
num = 0b01101 XOR (0b00001 << 2)
num = 0b01101 XOR 0b00100
num = 0b01001