データのチェックサムを計算したい。文字列をバイナリに変換した後、XOR が合計の最後にオーバーフロー ビット (キャリー ビット) を生成する場合、そのビットを最終的に追加する必要があるように、8 ビット文字列 (XOR それら) のすべてを合計する必要があります。 sum であり、現在取得されている値が FINAL 値 (8 ビットのチェックサム) です。
次に、8 ビットの FINAL 値の 1 の補数を取りたいと思います。この新しい値は、先に使用できる実際のチェックサムになります。これらのバイナリ文字列のそれぞれを取り上げて、最初にそれらを合計する方法がわかりません:(
#include <string>
#include <bitset>
#include <iostream>
using namespace std;
int main()
{
string myString = "Hello World";
for (std::size_t i = 0; i < myString.size(); ++i)
{
cout << bitset<8>(myString.c_str()[i]) << endl;
}
//the indentations might have shaken a bit in copting the code here.
}