C++ 以位添加列是什么意思?

C++ 以位添加列是什么意思?,c++,bit,C++,Bit,我无法理解我在书中提到的以下文本的含义: 考虑四个两位数字 00,01,10,11。如果你加起来 一的位,你得到一个偶数。 同样地,如果你把二加起来,你就 得到一个偶数。不管有多少 数字中的位,如果将 列,则得到一个偶数 具体来说,对于00“累加一点”是什么意思 一的位是表示一个“一”的位,即最右边的位。“2”位是用来保持2的位,即右边第二位。“2”位左边的下一位是“4”,以此类推 他们的意思是,如果你把四个数字写在一列中: 00 01 10 11 …你看第一列中有多少位(一的位)是1,你得到

我无法理解我在书中提到的以下文本的含义:

考虑四个两位数字
00
01
10
11
。如果你加起来 一的位,你得到一个偶数。 同样地,如果你把二加起来,你就 得到一个偶数。不管有多少 数字中的位,如果将 列,则得到一个偶数

具体来说,对于
00
“累加一点”是什么意思

一的位是表示一个“一”的位,即最右边的位。“2”位是用来保持2的位,即右边第二位。“2”位左边的下一位是“4”,以此类推


他们的意思是,如果你把四个数字写在一列中:

00
01
10
11
…你看第一列中有多少位(一的位)是1,你得到一个偶数。类似地,第二列(“两位”)

他们的主张是,无论数字有多少位,如果你用那么多位写下所有数字,每列中1的数量都是偶数

他们关于一位数字的说法是错误的。通常,对于n位,每列中的1数(显然)将为2^(n-1),这是偶数,除非n=1


这是什么书?他们想表达什么意思?

二进制数中的位通常根据其各自的二次幂按列“命名”:

00000000
│││││││└── 1's bit
││││││└─── 2's bit
│││││└──── 4's bit
││││└───── 8's bit
│││└────── 16's bit
││└─────── 32's bit
│└──────── 64's bit
└───────── 128's bit

回想一下十进制数字中的数字。例如:184。从最右边的数字开始,我们有4个,这相当于说“这个数字中有4个1”。它在1的位置,当我们向左转时,我们在10的位置有8个(表示有8个10),在100的位置有1个(只有100)。对于像10这样的二进制数(二进制表示2),最右边的0位于1的位置,“列”(从右侧开始的位置)是表示该数字中有多少个1的位置。同样的,1在2的位置,表示这个数字中有多少个2。

我想它想说的是,如果你把所有的数字加上一定数量的位-在这个例子中,2加上每列的值,结果将是偶数

因此,对于4个2位数字,分别添加每列:

 0   0
 0   1
 1   0
+1  +1
 -   -
 2   2
每列加2-一个偶数

同样,对于所有3位数字:

 0   0   0
 0   0   1
 0   1   0
 0   1   1
 1   0   0
 1   0   1
 1   1   0
+1  +1  +1
 -   -   -
 4   4   4

每列加上4个偶数

老实说,是奇怪的术语。
 0   0   0
 0   0   1
 0   1   0
 0   1   1
 1   0   0
 1   0   1
 1   1   0
+1  +1  +1
 -   -   -
 4   4   4