BMCnd
|
条件ビット転送
|
BMCnd
|
Bit Move Conditional
|
【構文】
BMCnd src, dest
【オペレーション】
(1)destがメモリの場合
unsigned char dest;
if ( Cnd )
dest |= ( 1 << ( src & 7 ));
else
dest &= ~( 1 << ( src & 7 ));
(2)destがレジスタの場合
register unsigned long dest;
if ( Cnd )
dest |= ( 1 << ( src & 31 ));
else
dest &= ~( 1 << ( src & 31 ));
【機能】
- | Cndで示す条件の真偽値をsrcで指定されたdestのビットに転送します。真の場合は“1”、偽の場合は“0”が転送されます。 |
|
|
|
|
BMGEU,
BMC
|
|
|
|
BMEQ,
BMZ
|
|
|
|
BMGTU
|
|
|
|
BMPZ
|
|
|
|
BMGE
|
|
|
|
BMGT
|
|
|
|
BMO
|
|
|
|
BMLTU,
BMNC
|
|
|
|
BMNE,
BMNZ
|
|
|
|
BMLEU
|
|
|
|
BMN
|
|
|
|
BMLE
|
|
|
|
BMLT
|
|
|
|
BMNO
|
|
|
|
srcのIMMの値はビット番号です。
IMM:3の範囲は、0≦IMM:3≦7です。
IMM:5の範囲は、0≦IMM:5≦31です。
【命令フォーマット】
|
|
|
|
|
BMCnd src, dest
|
|
#IMM:3
|
[Rd].B
|
|
|
#IMM:3
|
dsp:8[Rd].B
|
|
|
#IMM:3
|
dsp16[Rd].B
|
|
BMCnd src, dest
|
|
#IMM:5
|
Rd
|
|
【フラグ変化】
フラグ変換はありません。
【記述例】