SUB3 START RPUSH LD GR2,GR1 ; e=<GR1> LD GR3,GR0 ; ループカウンタ i=<GR0> に初期化 LAD GR4,1 ; ループカウンタの減算値1 LOOP1 ; 次と2つの命令で PUSH <e> PUSH 0,GR5 ; ; アドレスの加算 e=e+1 SUBL GR3,GR4 ; ループカウンタのデクリメント i=i-1 JPL LOOP1 ; i>0 ならば LOOP1に戻り繰り返し ; ここから後半だが,e=<GR1>, i=<GR0>, <GR4>=1 はそのまま使用 LOOP2 POP GR5 ; POP ; <e>に格納 LAD GR1,1,GR1 ; アドレスの加算 e=e+1 SUBL GR0,GR4 ; ループカウンタのデクリメント i=i-1 JPL LOOP2 ; i>0 ならば LOOP2に戻り繰り返し RPOP RET END