AND

論理積

AND

AND


【構文】

(1)AND src, dest

(2)AND src, src2, dest

 

【オペレーション】

(1)dest = dest & src;

(2)dest = src & src2;

 

【機能】

-

(1)destとsrcの論理積をとり、その結果をdestに格納します。

-

(2)srcとsrc2の論理積をとり、その結果をdestに格納します。

 

【命令フォーマット】

構文

処理

サイズ

src

src2

dest

コードサイズ

(バイト)

(1)AND src,dst

L

#UIMM:4

-

Rd

2

L

#SIMM:8

-

Rd

3

L

#SIMM:16

-

Rd

4

L

#SIMM:24

-

Rd

5

L

#IMM:32

-

Rd

6

L

Rs

-

Rd

2

L

[Rs].memex

-

Rd

2(memex=UB)

3(memex!=UB)

L

dsp:8[Rs].memex

-

Rd

3(memex==UB)

4(memex==UB)

L

dsp:16[Rs].memex

-

Rd

4(memex=UB)

5(memex!=UB)

(2)AND src,src2,dst

L

Rs

Rs2

Rd

3

弊社の「RXファミリ アセンブラ」では、ディスプレースメントの値(dsp:8、dsp:16)は、サイズ拡張指定子が“.W”または“.UW”のときは2の倍数、“.L”のときは4の倍数を指定してください。dsp:8には、サイズ拡張指定子が“.W”または“.UW”のとき0〜510(255×2)が、“.L”のとき0〜1020(255×4)が指定できます。dsp:16には、サイズ拡張指定子が“.W”または“.UW”のとき0〜131070(65535×2)が、“.L”のとき0〜262140(65535×4)が指定できます。命令コードには、1/2、1/4した値が埋め込まれます。

 

【フラグ変化】

フラグ

C

Z

S

O

変化

条件

C:-

Z:演算後のdestが0のとき“1”、それ以外のとき“0”になります。

S:演算後のdestのMSBが“1”のとき“1”、それ以外のとき“0”になります。

O:-

 

【記述例】

AND     #15, R2
AND     R1, R2
AND     [R1], R2
AND     [R1].UW, R2
AND     R1, R2, R3