64 ビット整数の n 番目のビットを 1 に設定する必要があります。組み込みがあります(ここに文書化されていますhttp://msdn.microsoft.com/en-us/library/z56sc6y4(v=vs.90).aspx):
unsigned char _bittestandset64(
__int64 *a,
__int64 b
);
それが仕事をします。私の質問は、(テストなしで) ビット セットを実行する方法があるかどうか、および目的のために戻り値を無視して bittestandset64 を使用するとパフォーマンスが低下するかどうかです。
GCCで使用するアセンブリでそれを行う方法があるかどうかも興味があります(Intel Core2からi7の場合)。