繰り返しブロックを作成します。
構文 .REPEAT
statements...
.UNTIL cond
.REPEAT
statements...
.UNTILCXZ [cond]
.REPEAT
statements...
.FOREVER
例 .REPEAT
CALL SUBR
DEC CX
.UNTIL CX > 0
.REPEAT
CALL SUBR
.UNTILCXZ
.REPEAT
inc ax
.break .if sword ptr ax >= bx
dec bx
.FOREVER
cond には、.IF 文と同様の条件式を記述します。statements には、任意のプロセッサ命令をいくつでも記述できます。
.REPEAT 文は .WHILE 文と似ていますが、ループの内容を最低 1 回は実行する点が異なります。
.
UNTIL 文を使用すると、cond が偽である限り statements が繰り返し実行されます。
.UNTILCXZ 文を使用すると、LOOP 命令が生成されます。CX レジスタがデクリメントされ、0 になるとループが終了します。cond を指定したときは、これに加えて cond が真になったときもループが終了します。
.FOREVER 文〔LASM〕を使用すると、永久にループが続行されます。通常はループ内に .BREAK 文を記述してループを終了させます。