无符号字符型数据和 16 的关系,求大神解释
时间:10-02
整理:3721RD
点击:
无符号字符型数据和 16 的关系,求解惑,求真相
被你问的问题都无解了
实在处理DS18B20数据的时候遇到的问题,看资料说 18B20温度为负的时候,高5位为1,所以我的代码是这样的
if((b&0xf8)!=0x00) //负温度处理,如果高5为不为0,则温度为负
{
b=~b;
a=~a+1;
flag=1; //负数标志
}
else flag=0;
这样温度为-16的时候,显示为零,
后来代码改成这样就没事了
t=b;
t<<=8;
t=t|a; //两字节合成一个整型变量。
if(t&(1<<15)) //如果温度为负数,则取原码
{
t=~t;
t+=1;
flag=1; //标志为负数
}