我们在字节位1或0中调用第一位吗?

Pla*_*oks 8 byte naming-conventions bit

在本例中,我创建了一个整数.

int example = 0;
Run Code Online (Sandbox Code Playgroud)

现在让我们说我想知道这个整数的第一位是什么.我知道它将位于位0位置.但我会将其称为位1或0.我问的原因是因为我看过文档,其中整数的第一位标记为位0,然后标记为位1.我知道这是他们的错误,只是好奇我应该把它称为什么.

Jon*_*art 10

大多数情况下,最低位称为位0.

但是,它实际上取决于你所要求它的上下文.我已经研究了两个不同的(互连的)系统,当一个人的文档称为第1位,另一个称为第0位.谈论混乱!重要的是,如果你记录它,总是有资格.

通常,这称为"-indexed".因此,如果最低位被称为"位零",则位域是"零索引".

就个人而言,我总是将最低位称为位零.使用此约定,您可以移动1个n位置,以打开n位:

x = 1<<0;    00000001b  (bit 0 is on)
x = 1<<4;    00010000b  (bit 4 is on)
Run Code Online (Sandbox Code Playgroud)


Mar*_*som 6

如果你简单地使用 2 的幂,2**0 就是 1。从 0 开始对位进行编号更有意义。