私は機械シミュレーションプログラムに取り組んでいます。私は主メモリ用のビットセットのベクトルを持っているので、特定の "ワード"にアクセスするために、このベクトルへのポインタ、pMemory-> at(i)を使うことができます。私は実際にベクトルのビットセットのデザインを好んでおり、私はそれに固執しています(このプログラムは約6時間で終了します、eek!)ビットセットの操作にはどのような方法が推奨されますか?
私は、 (シミュレーションされたレジスタや他のメモリ位置など)のビットセットを取得する方法について説明します。私はこれを思いついた:
#include <bitset>
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main()
{
/** demonstrating use of stringstream to/from bitset **/
{
bitset<12> sourceBits(std::string("011010010100"));
bitset<12> targetBits(0);
stringstream iBits(stringstream::in | stringstream::out);
iBits << sourceBits.to_string();
cout << targetBits << endl;
iBits >> targetBits;
cout << targetBits << endl;
} //end stringstream to/from bitset
return 0;
}
これはうまくいき、私はこの技術を自分のプログラムに適合させることができます。
私の質問は、これが良い考えですか?ビットセット>>と< <の演算子を使用することについて何か不足している基本がありますか?このマニュアルをすべて論じることが本当に必要ですか?
また、接頭辞として、12ビットのビットセットを16ビットのビットセットにコピーするときはどうすればよいですか?
ありがとう、stackoverflow!これは以降のこのコミュニティへの私の最初の質問です。グーグル。みんなの洞察に感謝します!
+1。 –