【发布时间】:2021-01-07 15:06:49
【问题描述】:
我有一个函数,我很难理解数学是如何执行的:
unsigned long Fat_AuthAnswer(char b1, char b2, char b3, char b4)`
{
unsigned char* ptr = NULL;
unsigned short StartCRC = b1 + b2*256;
unsigned long ret = crcbuf(StartCRC, b3, &AuthBlock[b4]);
ret = (ret & 0x0000ffff) | (crcbuf(StartCRC, b4, &AuthBlock[b3])<<16);
}
b1=0xAF b2=0x50
函数执行时StartCRC = b1 + b2*256;产生 StartCRC = 0x4FAF
我希望 StartCRC 的结果是 0x50AF。
我的问题是为什么 b2 似乎减一? 任何帮助,将不胜感激。谢谢
【问题讨论】: