对于这个例子,我创建了一个整数。
int example = 0;
现在让我们说我想知道这个整数的第一位是什么。我知道它将位于位0位置。但我会将其称为位1或0.我问的原因是因为我看过文档,其中整数的第一位标记为位0,然后标记为位1。我知道这是他们的错误,只是好奇我应该把它称为。
答案 0 :(得分:9)
大多数情况下,最低位被称为位0。
但是,它实际上取决于你所要求的上下文。我曾经在两个不同的(互连的)系统上工作,当一个人的文档称为第1位,而另一个人称之为第0位。谈论混乱!重要的是,如果你记录它,总是有资格。
通常,这称为“-indexed”。因此,如果最低位被称为“位零”,则位域为“零索引”。
就个人而言,我总是将最低位称为位零。使用此约定,您可以移动1 n
个位置,以打开n
位:
x = 1<<0; 00000001b (bit 0 is on)
x = 1<<4; 00010000b (bit 4 is on)
答案 1 :(得分:4)
如果简单地以2的幂为单位,则2 ** 0为1.对从0开始的位进行编号更有意义。