各自然数を出力する最短のアルゴリズムを探すスレ
■ このスレッドは過去ログ倉庫に格納されています
0016132人目の素数さん
2010/12/04(土) 15:09:41つまり >>2で述べたようなfortimesループの実装で
ループから抜けるための命令(>>12で言うquit)の位置を一般化することで
同じ命令数3のfortimesループでも処理に幅を持たせられるわけですね
<x1にaを加算する命令数saの処理>
*loop
<x0にbを加算する命令数sbの処理> …処理(b)
jz x1, *out
<x0にcを加算する命令数scの処理> …処理(c)
dec x1
j *loop
*out
と書けば
処理(b)がa+1回、処理(c)がa回実行されるので、全体として
"x0に(a+1)*b+a*c"を加算する命令数sa+sb+sc+3の処理"を
していることになりますね…(*')
b=0の場合が>>2のfortimesにあたります
■ このスレッドは過去ログ倉庫に格納されています