ROL、ROLP命令を実行すると、S1のビットがS2ビット左方向にローテーションします。1ビットローテーションするたびに、左端のビット(最上位ビット)は、右端のビット(最下位ビット)にローテーションします。結果はD1に格納されます。ROL、ROLP命令は常に導通します。ROL、ROLP命令を使用する場合は、S1、D1オペランドに指定する変数の型が同じタイプでなければ、エラーとなります。S1、D1オペランドは同じ変数の型を指定してください。
定数指定の場合は下記を参照してください。
S1 : ローテーションアドレス
ローテーションを行うアドレスを指定します。
S2 : ローテーションビット数
ローテーションするビット数を指定します。
D1 : 格納デバイス
ローテーションを行った結果を格納するアドレスを指定します。
例)1ビット左ローテーション
オペランドD1が整数変数の場合
オペランドD1が整数変数の場合でオペランドS1、S2にHEXで入力したい場合
0x(数値のゼロと小文字のx入力)を入力すると以下の値はHEX値となります。
配列指定のデータ(整数変数の配列)をローテーションする場合と配列の要素指定をする場合、同じ形式に合わせてください。
形式が違う場合はエラーとなります。
S1とD1が同じサイズの配列のときは、S1は大きな整数として扱われます。ビットは要素から次の要素へローテーションされます。
それぞれの要素の左端ビットでローテーションしません。配列全体でローテーションします。S2は0以上(32 x 配列サイズ - 1)以下にしてください。
S1とD1が両方とも配列でないときは、単純に32 ビットローテーションします。S2は0 以上31以下にしてください。