rotl


ローテートを行います。(Rotate Left)

[指定形式]

-

rotl imm, reg2, reg3

-

rotl reg1, reg2, reg3

 

immに指定できるものを次に示します。

-

5ビット幅までの値を持つ絶対値式

[機能]

-

“rotl imm, reg2, reg3”の形式

汎用レジスタreg2のワード・データを,ワード長までゼロ拡張した5ビット・イミーディエトで示されるシフト数分,左へローテート(回転)し,汎用レジスタreg3に書き込みます。汎用レジスタreg2は影響を受けません。

-

“rotl reg1, reg2, reg3”の形式

汎用レジスタreg2のワード・データを汎用レジスタreg1の下位5ビットで示されるシフト数分,左へローテート(回転)し,汎用レジスタreg3に書き込みます。汎用レジスタreg1,reg2は影響を受けません。

[詳細説明]

-

“rotl imm, reg2, reg3”の形式でimmに次のものを指定した場合,アセンブラでは,機械語命令のrotl命令が1つ生成されます。

(a)

0〜31の範囲の絶対値式

機械語命令のrotl命令は,第1オペランドにレジスタまたは0〜31(0〜0x1F)の範囲のイミーディエトをとります。

 

-

“rotl reg1, reg2, reg3”の形式

アセンブラでは,機械語命令のrotl命令が1つ生成されます。

[フラグ]

CY

演算結果のビット0が1になった場合1,そうでない場合0,ただしローテート量が0のときは0

OV

0

S

演算結果が負になった場合1,そうでない場合0

Z

演算結果が0になった場合1,そうでない場合0

SAT