android/javaでチェックサム計算関数を作成しました。次のような機能
void CalculateCheckSum( byte[] bytes ){
short CheckSum = 0, i = 0;
for( i = 0; i < bytes.length; i++ ){
CheckSum = (short) ((short)CheckSum + (short)bytes[i]);
}
Log.i("Checksum", Integer.toHexString(CheckSum));
}
チェックサム計算の入力値は、0xEF、0x01、0xEF、0x01、0x33、0x0C、0xB8、0xE5、0xFC、0x34、0xFF、0xFF、0xFF、0xFF、0xFF、0xFF、0xFF、0xFFです。チェックサム値を手動で計算したところ、結果は0xCE4です。上記の関数を使用すると、0xFFFFFFE4として回答が得られます。計算に誤りがありますか?ある場合は訂正してください。
ありがとう