next up previous contents
: 条件分岐のプログラム : マイコンプログラム : WAITのプログラム   目次


比較のプログラム

compare()関数は、7.4のプログラム中で_accという変数に保存された値と、引数に指定された12bitの値を比較し、成立する演算子を大域変数に保存する。プログラムは次のようになる。
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乗であり、そのため加算はフラグ変数の各ビットを立てることを意味する。



Deguchi Lab. 平成20年3月5日