[csharp]
/// <summary>
/// 累加校驗和
/// </summary>
/// <param name="memorySpage">需要校驗的數據</param>
/// <returns>返回校驗和結果</returns>
public Int16 Fill校驗合(byte[] memorySpage)
{
int num = 0;
for (int i = 0; i < memorySpage.Length; i++)
{
num = (num + memorySpage[i]) % 0xffff;
}
//實際上num 這裡已經是結果了,如果只是取int 可以直接返回了
memorySpage = BitConverter.GetBytes(num);
//返回累加校驗和
return BitConverter.ToInt16(new byte[] { memorySpage[0], memorySpage[1] }, 0);
}
作者:daonidedie