今天研究树莓派上dht11测温湿度时,发现了个不懂的代码
databuf*=2;
if(digitalRead(pinNumber)==1) //1
{
databuf++;
}
这段代码和下面这段效果是一样的
flag = digitalRead(pinNumber);
databuf <<= 1;
databuf |= flag;
后面经过敲计算机研究,发现databuf*=2 实际上在二进制层面就是左移一位
今天研究树莓派上dht11测温湿度时,发现了个不懂的代码
databuf*=2;
if(digitalRead(pinNumber)==1) //1
{
databuf++;
}
这段代码和下面这段效果是一样的
flag = digitalRead(pinNumber);
databuf <<= 1;
databuf |= flag;
后面经过敲计算机研究,发现databuf*=2 实际上在二进制层面就是左移一位