動作確認をお願いしたいのです。
もしお暇でしたらよろしくお願いします。
;--------------------------------------- ;InsertSort array , int , int , int , sign , var , var , var , var , var , var ; %1 ソートする配列変数名 ; %2 ソートを開始するインデックス ; %3 ソートを終了するインデックス ; %4 配列変数の要素総数 ; %5 フラグ ( <=昇順 : >=降順 ) ;[以下内部使用変数初期値]省略可 ; %6 ise_bsize ; %7 ise_stok ; %8 ise_index1 ; %9 ise_index2 ; %10 ise_index2_p_int_size ; %11 ise_work #define global int_size 4 ; 32bit環境でのint型のサイズ。 #define global InsertSort(%1,%2,%3,%4,%5,%6=ise_bsize,%7=ise_stok,%8=ise_index1,%9=ise_index2,%10=ise_index2_p_int_size,%11=ise_work) :\ %6 = (%4)*int_size :\ repeat (%3)-(%2),(%2)+1 : %7=cnt :\ repeat cnt-(%2),(%2) :\ if (%1(%7) %5 %1(cnt)) { :\ %8=%7*int_size : %9=cnt*int_size : %10=%9+int_size : %11 = %1(%7) :\ memcpy %1 , %1 , (%6-%8-int_size) , %8 , (%8+int_size) :\ memcpy %1 , %1 , (%6-%10) , (%10),%9 :\ %1(cnt)=%11 : break } \ loop :\ loop :\