这句的len的值循环一次就减少1,先执行len!=0,再执行len--。
当len为0时退出循环。
for(i=0x80
i!=0
i/=2)
0x80是十六进制数,也即128
当i!=0时,执行循环体,
然后i=i/2,即i值减半。
unsigned short crc_dsp(unsigned short reg, unsigned char data_crc)//reg为crc寄存器, data_crc为将要处理的8bit数据流
{
unsigned short msb//crc寄存器将移出的最高1bit
unsigned short data
unsigned short gx = 0x8005, i = 0//i为左移次数, gx为生成多项式
data = (unsigned short)data_crc
data = data <<8
reg = reg ^ data
do
{
msb = reg &0x8000
reg = reg <<1
if(msb == 0x8000)
{
reg = reg ^ gx
}
i++
}
while(i <8)
return (reg)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)