void compare(ushort value)
{
_compareFlag = 0; // 初期化
if (_acc == value)
_compareFlag += COMP_EQUAL; // 等しい
else
_compareFlag += COMP_NOTEQUAL; // 等しくない
if (_acc < value)
_compareFlag += COMP_SMALL; // (引数が)大なり
if (_acc > value)
_compareFlag += COMP_BIG; // (引数が)小なり
}
_compareFlagに加算されている各定数は2のn乗であり、そのため加算はフラグ変数の各ビットを立てることを意味する。