checksum.c

来自「ADS下的bios工程」· C语言 代码 · 共 20 行

C
20
字号
#include <bios/checksum.h>unsigned int checksum(void *ptr, int len, unsigned int chksum){    unsigned char    *p = (unsigned char *)ptr;    int    i;    for (i = 0; i < len - 1; i += 2)        chksum += (p[i] << 8) | p[i + 1];    if (len & 1)        chksum += p[len - 1] << 8;    chksum = (chksum & 0xffff) + (chksum >> 16);    chksum = (chksum & 0xffff) + (chksum >> 16);    return  chksum;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?