我正在读取来自加速度计的值并将其保存在名为“值”的缓冲区中。每个加速度计的读数是10位长,但读取的值是字节,所以加速度计读数实际上是'值'缓冲区中的两个字节或两个值。这是关于如何将这些两个字节组合示例代码来获取一个值:有人可以向我解释这一行代码吗?
x = ((int)values[1]<<8)|(int)values[0];
,我感到我正在合并值[1]和值[2],我敢肯定的(INT)部分是类型转换为整数的部分(虽然我不知道为什么)。让我感到困惑的部分是<<8
和竖线|
。这两部分在做什么?
感谢您的任何解释和帮助,您可以给!
http://www.cprogramming.com/tutorial/bitwise_operators.html – SLaks