2ちゃんねるログビューア

カルネージハートエクサ1機目   を含む(ツリー表示)

■TOP■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- ツリー解除
135: 名前:枯れた名無しの水平思考 :2010/07/07(水) 21:08:55 ID:XE+K+/ot0(4)
> RT @GANDONE: 試合結果の出力が出来ると超嬉しいんですけど!テキストでもスクショでも。
> スクリーンショット機能が間に合いそうなので、それを利用してください。
写真と違ってズレることはないので画像のピクセルを調べれば結果は判定可能か。
必要そうならスクショから大会結果を自動出力するツールとかつくろうかしら。

136: 名前:枯れた名無しの水平思考 :2010/07/07(水) 21:17:35 ID:YaX7BMDS0(2)
>>135
それがあれば進行が楽になりそうですね
進行の手間もだけど集計ミスがなくなるのも大きそうです
141: 名前:枯れた名無しの水平思考 :2010/07/07(水) 22:46:40 ID:XE+K+/ot0(4)
Main->Sub でSubからRETURNするとMainに戻る。これがスタック1段。
Main->SubA->SubBと呼べて、さらにSubBからRETURNすると一旦SubAに戻り、そこからもう一度RETURNするとMainに戻る。これがスタック2段。

つまり、Main->SubA->SubB->SubA->SubB->SubA->SubB->SubA->SubB->SubA->SubB->
RETURN->RETURN->RETURN->RETURN->RETURN->RETURN->RETURN->RETURN->RETURN->RETURN。
ということができる。ただし11回目(Mainも数えるなら10回目かも)のSub呼び出しは失敗する(これがオーバーフロー)。
143: 名前:枯れた名無しの水平思考 :2010/07/07(水) 22:59:56 ID:5ZnAstBY0(4)
>>141
サブ1、2間の直接移動を10回繰り返したら強制的にメインに戻るって事?
144: 名前:枯れた名無しの水平思考 :2010/07/07(水) 23:10:24 ID:WZFtuDwe0(3)
>>143
10回繰り返したあと、11回目を実行しようとしたら、
CALL-SUB実行自体されないんじゃないかな?
NOPとして処理される。
わからんけどw
145: 名前:枯れた名無しの水平思考 :2010/07/07(水) 23:14:56 ID:XE+K+/ot0(4)
>>142
あの書き方だとできそうね。禁止する理由もなさそう。
>>143
うーん、そうきたかw。じゃぁ別な説明で。
「どこからSubが呼ばれたか」という情報を記録する場所が10個ある。始めは全部空っぽ。
  [空][空][空][空][空][空][空][空][空][空]

まず、MainからSubを呼んだら、その場所を一つ使ってMainから呼ばれたことを記録する。
  [Main][空][空][空][空][空][空][空][空][空]
さらに、Subの中からSubをもう一度呼んだら、もう一つ場所を使ってSubから呼ばれたことを記録する。
  [Main][Sub][空][空][空][空][空][空][空][空]
そこからさらにSubを呼ぶと、もう一個使う。
  [Main][Sub][Sub][空][空][空][空][空][空][空]
そこからSubからReturnするときには、最後に記録した情報の場所に戻ると同時に、その最後の記録を消す。
  [Main][Sub][空(消去済)][空][空][空][空][空][空][空]

もし、MainからSubを呼び、そのSubの中からもう一度Subを呼び、そこからさらにSubを…と繰り返すと
空いている場所が減っていき、Subが10回呼ばれたときに最期は全部情報が入っている状態になり、空いている場所がなくなる。
  [Main][Sub][Sub][Sub][Sub][Sub][Sub][Sub][Sub][Sub]
空いている場所がない時にSubの呼び出そうとしても、「どこからSubが呼ばれたか」はもう記録できない。
その場合は、呼び出しに失敗する(おそらくSUBチップを素通りする)。
149: 名前:枯れた名無しの水平思考 :2010/07/07(水) 23:25:14 ID:d5ZEVcEM0(4)
>>145
>あの書き方だとできそうね。禁止する理由もなさそう。
途中でSub2に条件分岐することも可能だと思うし、禁止しないとまずいと思う
まあ、そんな変態ソフト見てみたいけど
157: 名前:枯れた名無しの水平思考 :2010/07/08(木) 00:06:26 ID:v/0sjp6A0(2)
>>145
それって無限ループ起こさね?
例えば11回目でsubが無視された結果retunに入ったら、
もう片方のsubに戻ったときまた空きが一つ出来るよね?
158: 名前:枯れた名無しの水平思考 :2010/07/08(木) 00:18:18 ID:KUVNHMvA0(3)
>>157
なるよ。だから再帰を使うならどこかに「脱出条件が満たされていたらRETURN」と書いておく。
152: 名前:枯れた名無しの水平思考 :2010/07/07(水) 23:28:07 ID:XE+K+/ot0(4)
>>147,149
「無視されます」だからオーバーフロー時にはMainに戻るんじゃなくて、SUBを素通りするだけな気が。
そして問題はスタックの制限だけっぽいから、Sub1でもSub2でも区別なくMax10段…じゃないかなぁ。
あー早くモノを手に入れて検証したいw

■TOP■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- ツリー解除 dat