ローテートを行います。(Rotate Left)
[指定形式]
immに指定できるものを次に示します。
[機能]
- | “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つ生成されます。 |
注 | 機械語命令の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
|
−
|