loop - vs
loop...endloop ブロックを開始します。
構文
この場合
解説
- ループ カウンター レジスタ (aL) は現在のループ カウントを保持し、ループ ブロック内の 整数型定数レジスタ (c#) または 出力レジスタ (o#) への相対アドレッシングに使用することができます。
- i#.x は、反復カウントを指定します。有効範囲は [0, 255] です。この命令によって i#.x の値が増減することはありません。
- i#.y は、ループ カウンター レジスタ (aL) レジスタの初期値を指定します。有効範囲は [0, 255] です。この命令によって i#.y の値が増減することはありません。
- i#.z は、ステップ/ストライド サイズを指定します。有効範囲は [-128, 127] です。
- i#.w は使用しません。0 に設定する必要があります。
- loop ブロックはネストできます。「フロー制御のネスト制限」を参照してください。
- ネストした場合、ループ カウンター レジスタ (aL) の値は、それを直接囲んでいるループ ブロックを参照します。
- loop ブロックは、if* ブロックの完全に内側に置くか、if* ブロックを完全に囲む必要があります。またぐことはできません。
例
loop aL, i3
add r1, r0, c2[aL]
endloop