• ベストアンサー

チェックサムの実装方法について

チェックサムの実装方法について データの送信で送信対象データの1バイト毎の合計とチェックサムを加算した値が0x0000になるようなPGをVB.net(バージョン問わず)で作成したいと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

チェックサムの算出範囲の大きさはどの程度なのでしょう? 1Byte,2Byte,4Byte データの配列が Byte型ならば Function myNeg( arData() as Byte ) as Integer   dim nSum, nNeg, n as Integer   for n = 0 to arData.Length - 1     nSum = nSum and &HFF ' 1Byteでいいならば     ' 2Byteならば &HFFFFとします     ' 4Byteならば nSum nNegを Long型にして &HFFFFFFFF     nSum += arData(n)   next   nNeg = &H100 - nSum ' 1Byteならば   ' 2Byteならば &H10000 - nSum   ' 4Byteならば &H100000000 - nSum   retunr nNeg End Function といった具合でしょう

kaihatusha
質問者

お礼

回答ありがとうございました。

kaihatusha
質問者

補足

回答ありがとうございます。 2Byteの取得で上位バイトと下位バイトをそれぞれ、設定するには下記のようにすればいいでしょうか? Dim srtSumH As Short = (&HFF And (nNeg >> 8)) '上位バイトの取得 Dim srtSuml As Short = (&HFF And nNeg) '下位バイトの取得

関連するQ&A