关于程序问题

2019-07-15 15:08发布

void Ds18b20WriteByte(unsigned char dat)
{
        unsigned int i,j;
    EA = 0;
        for(j=0;j<8;j++)
        {
                DSPORT=0;                       
                i++;
                DSPORT=dat&0x01;
                i=6;
                while(i--);
                DSPORT=1;       
                dat>>=1;
        }
    EA = 1;
}
刚刚接触单片机,有点看不懂程序中的这一句DSPORT=dat&0x01;是什么意思? 然后dat>>=1;为什么dat要移一位?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。