Description
对于 x 这个数,我们希望对它二进制位的第 k 位(从0开始,从低到高数)置为 1: 第 k 位为 1,其它位为 0,正好是(1 << k),那么将 第 k 位 置为 1 的语句可以写成:x | (1 << k)。
对于 x 这个数,我们希望对它二进制位的第 k 位(从0开始,从低到高数)置为 0:我们对标记码的要求是:第 k 位为 0,其它位为 1,我们需要的是(~(1 << k)),那么将 第 k 位 置为 0 的语句可以写成:x & (~(1 << k))。
对于 x 这个数,我们希望对它二进制位的第 k 位(从0开始,从低到高数)取反:对标记码的要求是:第 k 位为1,其余位为 0,其值为(1 << k)。那么将 第 k 位 取反的语句可以写成:x ^ (1 << k)。