- 318: 名前:枯れた名無しの水平思考 :2010/11/10(水) 12:35:09 ID:ztUfdL0E0(5)
- スタングレネードって前作もあったっけ?
アレがうまく当てられれば墓石にも勝機が出てくるんじゃないかな- 322: 名前:枯れた名無しの水平思考 :2010/11/10(水) 13:03:50 ID:vPQBe+LW0(3)
- >>318
ライトニングスタナーだよね?
前作にもあったよ
- 468: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:16:08 ID:ztUfdL0E0(5)
- せっかくだから質問させてくれ。
今回からビット演算が導入されたがエンジョイ工業のブログを見ても
里六の機体を眺めても理解が難しい。
何かいい勉強方法はないか?特に演算子が理解できないのと。パラメーターの整数は
チップ内部で0010とかに変換されていると考えていいのか?- 474: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:22:29 ID:2XM4A4ItP(8)
- >>467
勝ちパターンを思い描いてそれに近づけるような設計がいいんじゃないかなぁ
想定外のが来ると即全滅だけど・・・
>>468
or : 二つのカウンタの同じ桁を見て、どっちかが1なら結果(代入先の同じ桁)を1にする、どっちも0なら結果を0にする
and : 二つのカウンタの同じ桁を見て、両方1なら結果を1にする、どっちかが0なら結果を0にする
xor : 二つのカウンタの同じ桁をみて、両方0か両方1なら結果を0、片方だけ1なら1にする
チップ内部は二進数として扱って大丈夫、負の数はまぁややこしいから2の補数でググるべき- 560: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:40:08 ID:ztUfdL0E0(5)
- >>474
改めて書いてもらえるとなんとなく掴めそうな気がしてきた。
>>481
アグリオスでとりあえず一通り対処しようと思ったらカウンタ足りなくなってきてね
>>485
その8桁目が1なのか0なのかを調べるには整数?の以上以下で調べるのか?
でもそれだと9桁目がオンになってるとどっちも以上になりそうだし??
複数のフラグを保管できるらしいけど、取り出し方がやっぱり分かってないみたいだ。
>>543
あぁ、もしかしてフラグの取り出し方って判断チップの前に定数で演算して
オンかオフかを調べればいいのか?- 572: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:48:25 ID:xcy/K3xh0(19)
- >>560
11001111って2進数の
前半4桁と後半4桁で2つの数字を管理したい時
前半部分を取り出すには
11110000とandすりゃいいのかな。
んで後は……4回2で割ればいいのだろうか?
スマン、誰か教えてくれないか……
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 579: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:20 ID:fbDNL5md0(10)
- >>572
1011111 と
0010000 をANDすると
0010000 つまり>1
ただし、カウンタと、計算領域が必要- 585: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:55:42 ID:FaMg/vKe0
- >>579
マスクってやつですね - 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする! - 613: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:43 ID:ztUfdL0E0(5)
- >>579
ほいほい、つまり。
0101の三桁目のフラグを取り出したいときは
0101に0100をAND(ビット積)して0100と同じか以外かで判断すればフラグを取り出せるのか
つまり、カウンタAに5(0101)を代入
カウンタB(計算領域?)にカウンタAを代入
カウンタBに4(0100)をビット積(AND)して
カウンタB=4(0100)Y/Nでいいって事か?
なんとなく分かった気がする。カウンタ一つに8桁の保管が出来るなら
カウンタBを計算領域に当てて残りのカウンタ7個で×8の56個のフラグが保管できるのか- 630: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:37:30 ID:ztUfdL0E0(5)
- >>613
ああ、ちょっと訂正。
カウンタAに5(0101)を代入じゃないや、色々な処理で
カウンタAに1(0001)をor(ビット和)やら4(0100)をorの結果
カウンタAに5(0101)が入っている。からスタートだったな
すごいわここの住人。学生の頃こんな先生に数学習いたかったわ
- 584: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:54:45 ID:4WCPm2lW0(10)
- >>572
>んで後は……4回2で割ればいいのだろうか?
それを人は16で割るという- 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする!
- 599: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:06:22 ID:pCdXVzrz0
- ビット演算の話と聞いて…
アレ楽しいよね。楽しいよね。
>>551
イメージ的には1だけど 数値の1じゃないぜ。
1bitダケ欲しい場合だと0かand演算に比較した数字が出てくるぜ。
複数bitを一気に取る場合は……ややっこしいね
>>572
n回も2で割らずに2のn乗で割ろうぜ 結果は同じ。
- 602: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:09:11 ID:0gvwe2ZS0(14)
- >>572
Andして16で割ってもいいけど、16で割って小数点以下切り捨てるんでもいい- 610: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:17:08 ID:xcy/K3xh0(19)
- >>602
超サンクス
今日はアハ体験が多いなあ。- 637: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:40:54 ID:0gvwe2ZS0(14)
- >>610,614
まぁ言わんでもわかると思うけどついでに、前方に数値を格納したい時には、
格納先を15(00001111)とANDして、格納したい数値を16倍して足す
逆に後方に数値を格納するなら、格納先を240(11110000)とANDして
格納したい数値をそのまま足す
・・・って、あれ?11110000は先頭ビットが1だから負数になるのか?
エクサではどういう扱いになってるのかわかんないや、詳しい人補足よろ
>>620,624
ああ、要はロック先の管理をきっちりしてないとECM削りきれないことがある、と言いたかった
単純に定期ミサだけ実装しても効果薄いぞ、と
何も考えずにやるならキックオフミサの方がチップ数的にも重量的にも見返り大きいし- 642: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:46:02 ID:4WCPm2lW0(10)
- >>637
±99999.99までいけるから
65536(16個目?)までは安心していいと思ってる- 656: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:56:01 ID:efAxtLrZP(8)
- >>642
16個フルに使うとオーバーフローするよ- 661: 名前:枯れた名無しの水平思考 :2010/11/10(水) 22:00:07 ID:efAxtLrZP(8)
- >>656
…と、ごめん勘違いw
- 648: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:52:16 ID:xcy/K3xh0(19)
- >>637
00101110 元の数(前半2、後半14)
00001111
and
00001110
前半に格納したい:5
14+5*16=94→01011110(前半2、後半14)
って事だよね。
ありがとう。スゲー為になった。
- 614: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:47 ID:4wm/DgeQ0(10)
- >>602
何だろ、超ありがたい情報ありがとう!
- 641: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:45:47 ID:VX3Va/iY0
- >>572
11001111 and 11110000 => 11000000
11001111 and 00001111 => 00001111
11001111 or 11110000 => 11111111
11001111 or 00001111 => 11001111
11001111 xor 11110000 => 00111111
11001111 xor 00001111 => 11000000
- 574: 名前:572 :2010/11/10(水) 20:49:05 ID:xcy/K3xh0(19)
- 済まない、>>560は無視してくれorz
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 590: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:06 ID:MHbUT1iW0(3)
- >>560
そのケースだと機体コードが128以上(厳密には96以上だけど)の場合は
必ずなにかしらを射撃中だから分岐条件は128以上でOK
それ以外の場合はたとえば4桁目が0か1かを調べたい場合
2進数の1000は8だから
A=使いまわすカウンタ B=ビット用
��A←B (数値を弄るからBでそのままやるとフラグが飛ぶので、Aに値を移行する)
��A and 8
��A==8で分岐(A>0でもOK)
これでok
andの説明はエンジョイ見たっていうから割り合いしたけど大丈夫?
- 479: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:26:03 ID:yeRcnugA0(5)
- >>468
俺もよくわからんのだが、大量のフラグを管理したいって時に
ビット演算使うようなイメージなのかな?
正直、具体的な使い方が思い浮かばんよね。
必要が無いのなら、スルーしちゃえば?
それとは関係なしに勉強したいってことなら、がんばってくれ。
そんで、ここで解説してくれると俺もうれしい。
- 488: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:35:31 ID:8nK+Zj9t0(14)
- >>479
例えば動作コードを調べると、
射撃1が256(2進数で0100000000)
射撃2が512(2進数で1000000000)
となっててただの移動とかは255以下だから
どんな射撃(ジャンプ射撃とか移動射撃)しててもここの部分だけ見れば
射撃中かどうかを見ることが出来る。
- 481: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:28:20 ID:fbDNL5md0(10)
- >>468
ビット演算は難しいかなぁ
65535(10進数)= FFFF(16進数)= 1111111111111111(2進数)
みたいな感じで変換している (と言うか同じ数字なんだけど)
マニアックな割に効率がそこまで良いわけじゃないから
気にしない方が良いと思うけど
今現在カウンタ8個全部使用しているなら手を出してみてもいいかもしれない
(普通のプログラミングなら必須分野なんだけどね)- 486: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:34:40 ID:BrGVYPlT0(9)
- >>481
カウンタ8個使ってても、常に保持しとく必要のない値は使い回しできるし
いざとなればチャンネルに一時退避もできるしね
それこそもの凄く細かい管理をしないとそこまで必要になると思えないよねw
でも強いかどうかは関係なく、そんな風に組んだ機体は見てみたい。 - 560: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:40:08 ID:ztUfdL0E0(5)
- >>474
改めて書いてもらえるとなんとなく掴めそうな気がしてきた。
>>481
アグリオスでとりあえず一通り対処しようと思ったらカウンタ足りなくなってきてね
>>485
その8桁目が1なのか0なのかを調べるには整数?の以上以下で調べるのか?
でもそれだと9桁目がオンになってるとどっちも以上になりそうだし??
複数のフラグを保管できるらしいけど、取り出し方がやっぱり分かってないみたいだ。
>>543
あぁ、もしかしてフラグの取り出し方って判断チップの前に定数で演算して
オンかオフかを調べればいいのか?- 572: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:48:25 ID:xcy/K3xh0(19)
- >>560
11001111って2進数の
前半4桁と後半4桁で2つの数字を管理したい時
前半部分を取り出すには
11110000とandすりゃいいのかな。
んで後は……4回2で割ればいいのだろうか?
スマン、誰か教えてくれないか……
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 579: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:20 ID:fbDNL5md0(10)
- >>572
1011111 と
0010000 をANDすると
0010000 つまり>1
ただし、カウンタと、計算領域が必要- 585: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:55:42 ID:FaMg/vKe0
- >>579
マスクってやつですね - 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする! - 613: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:43 ID:ztUfdL0E0(5)
- >>579
ほいほい、つまり。
0101の三桁目のフラグを取り出したいときは
0101に0100をAND(ビット積)して0100と同じか以外かで判断すればフラグを取り出せるのか
つまり、カウンタAに5(0101)を代入
カウンタB(計算領域?)にカウンタAを代入
カウンタBに4(0100)をビット積(AND)して
カウンタB=4(0100)Y/Nでいいって事か?
なんとなく分かった気がする。カウンタ一つに8桁の保管が出来るなら
カウンタBを計算領域に当てて残りのカウンタ7個で×8の56個のフラグが保管できるのか- 630: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:37:30 ID:ztUfdL0E0(5)
- >>613
ああ、ちょっと訂正。
カウンタAに5(0101)を代入じゃないや、色々な処理で
カウンタAに1(0001)をor(ビット和)やら4(0100)をorの結果
カウンタAに5(0101)が入っている。からスタートだったな
すごいわここの住人。学生の頃こんな先生に数学習いたかったわ
- 584: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:54:45 ID:4WCPm2lW0(10)
- >>572
>んで後は……4回2で割ればいいのだろうか?
それを人は16で割るという- 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする!
- 599: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:06:22 ID:pCdXVzrz0
- ビット演算の話と聞いて…
アレ楽しいよね。楽しいよね。
>>551
イメージ的には1だけど 数値の1じゃないぜ。
1bitダケ欲しい場合だと0かand演算に比較した数字が出てくるぜ。
複数bitを一気に取る場合は……ややっこしいね
>>572
n回も2で割らずに2のn乗で割ろうぜ 結果は同じ。
- 602: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:09:11 ID:0gvwe2ZS0(14)
- >>572
Andして16で割ってもいいけど、16で割って小数点以下切り捨てるんでもいい- 610: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:17:08 ID:xcy/K3xh0(19)
- >>602
超サンクス
今日はアハ体験が多いなあ。- 637: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:40:54 ID:0gvwe2ZS0(14)
- >>610,614
まぁ言わんでもわかると思うけどついでに、前方に数値を格納したい時には、
格納先を15(00001111)とANDして、格納したい数値を16倍して足す
逆に後方に数値を格納するなら、格納先を240(11110000)とANDして
格納したい数値をそのまま足す
・・・って、あれ?11110000は先頭ビットが1だから負数になるのか?
エクサではどういう扱いになってるのかわかんないや、詳しい人補足よろ
>>620,624
ああ、要はロック先の管理をきっちりしてないとECM削りきれないことがある、と言いたかった
単純に定期ミサだけ実装しても効果薄いぞ、と
何も考えずにやるならキックオフミサの方がチップ数的にも重量的にも見返り大きいし- 642: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:46:02 ID:4WCPm2lW0(10)
- >>637
±99999.99までいけるから
65536(16個目?)までは安心していいと思ってる- 656: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:56:01 ID:efAxtLrZP(8)
- >>642
16個フルに使うとオーバーフローするよ- 661: 名前:枯れた名無しの水平思考 :2010/11/10(水) 22:00:07 ID:efAxtLrZP(8)
- >>656
…と、ごめん勘違いw
- 648: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:52:16 ID:xcy/K3xh0(19)
- >>637
00101110 元の数(前半2、後半14)
00001111
and
00001110
前半に格納したい:5
14+5*16=94→01011110(前半2、後半14)
って事だよね。
ありがとう。スゲー為になった。
- 614: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:47 ID:4wm/DgeQ0(10)
- >>602
何だろ、超ありがたい情報ありがとう!
- 641: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:45:47 ID:VX3Va/iY0
- >>572
11001111 and 11110000 => 11000000
11001111 and 00001111 => 00001111
11001111 or 11110000 => 11111111
11001111 or 00001111 => 11001111
11001111 xor 11110000 => 00111111
11001111 xor 00001111 => 11000000
- 574: 名前:572 :2010/11/10(水) 20:49:05 ID:xcy/K3xh0(19)
- 済まない、>>560は無視してくれorz
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 590: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:06 ID:MHbUT1iW0(3)
- >>560
そのケースだと機体コードが128以上(厳密には96以上だけど)の場合は
必ずなにかしらを射撃中だから分岐条件は128以上でOK
それ以外の場合はたとえば4桁目が0か1かを調べたい場合
2進数の1000は8だから
A=使いまわすカウンタ B=ビット用
��A←B (数値を弄るからBでそのままやるとフラグが飛ぶので、Aに値を移行する)
��A and 8
��A==8で分岐(A>0でもOK)
これでok
andの説明はエンジョイ見たっていうから割り合いしたけど大丈夫?
- 485: 名前:枯れた名無しの水平思考 :2010/11/10(水) 19:33:40 ID:kADpjlo3i(2)
- >>468
2進数を勉強すればいいと思うよ。
これに関しては、きちんと学ぶ意外に近道はないと思う。
16進数:0x7F
10進数:127
2進数:01111111
「機体の状態」値を2進数に変換すると、
桁の位置によって0と1で機体の特定の状態を表している。
射撃1をしているなら、2進数の8桁目が1になる、0なら射撃1してないってこと。
(下位の7ビットは、ユニークな固定値なので、各ビットに意味はなくて7桁まとめて読む)
C言語のビット演算を解説してるページとか見るのもいいかも。- 560: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:40:08 ID:ztUfdL0E0(5)
- >>474
改めて書いてもらえるとなんとなく掴めそうな気がしてきた。
>>481
アグリオスでとりあえず一通り対処しようと思ったらカウンタ足りなくなってきてね
>>485
その8桁目が1なのか0なのかを調べるには整数?の以上以下で調べるのか?
でもそれだと9桁目がオンになってるとどっちも以上になりそうだし??
複数のフラグを保管できるらしいけど、取り出し方がやっぱり分かってないみたいだ。
>>543
あぁ、もしかしてフラグの取り出し方って判断チップの前に定数で演算して
オンかオフかを調べればいいのか?- 572: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:48:25 ID:xcy/K3xh0(19)
- >>560
11001111って2進数の
前半4桁と後半4桁で2つの数字を管理したい時
前半部分を取り出すには
11110000とandすりゃいいのかな。
んで後は……4回2で割ればいいのだろうか?
スマン、誰か教えてくれないか……
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 579: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:20 ID:fbDNL5md0(10)
- >>572
1011111 と
0010000 をANDすると
0010000 つまり>1
ただし、カウンタと、計算領域が必要- 585: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:55:42 ID:FaMg/vKe0
- >>579
マスクってやつですね - 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする! - 613: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:43 ID:ztUfdL0E0(5)
- >>579
ほいほい、つまり。
0101の三桁目のフラグを取り出したいときは
0101に0100をAND(ビット積)して0100と同じか以外かで判断すればフラグを取り出せるのか
つまり、カウンタAに5(0101)を代入
カウンタB(計算領域?)にカウンタAを代入
カウンタBに4(0100)をビット積(AND)して
カウンタB=4(0100)Y/Nでいいって事か?
なんとなく分かった気がする。カウンタ一つに8桁の保管が出来るなら
カウンタBを計算領域に当てて残りのカウンタ7個で×8の56個のフラグが保管できるのか- 630: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:37:30 ID:ztUfdL0E0(5)
- >>613
ああ、ちょっと訂正。
カウンタAに5(0101)を代入じゃないや、色々な処理で
カウンタAに1(0001)をor(ビット和)やら4(0100)をorの結果
カウンタAに5(0101)が入っている。からスタートだったな
すごいわここの住人。学生の頃こんな先生に数学習いたかったわ
- 584: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:54:45 ID:4WCPm2lW0(10)
- >>572
>んで後は……4回2で割ればいいのだろうか?
それを人は16で割るという- 592: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:34 ID:xcy/K3xh0(19)
- >>579
>>584
サンクス
とりあえず1カウンタで複数数値を保存する方法はわかったような気がする!
- 599: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:06:22 ID:pCdXVzrz0
- ビット演算の話と聞いて…
アレ楽しいよね。楽しいよね。
>>551
イメージ的には1だけど 数値の1じゃないぜ。
1bitダケ欲しい場合だと0かand演算に比較した数字が出てくるぜ。
複数bitを一気に取る場合は……ややっこしいね
>>572
n回も2で割らずに2のn乗で割ろうぜ 結果は同じ。
- 602: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:09:11 ID:0gvwe2ZS0(14)
- >>572
Andして16で割ってもいいけど、16で割って小数点以下切り捨てるんでもいい- 610: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:17:08 ID:xcy/K3xh0(19)
- >>602
超サンクス
今日はアハ体験が多いなあ。- 637: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:40:54 ID:0gvwe2ZS0(14)
- >>610,614
まぁ言わんでもわかると思うけどついでに、前方に数値を格納したい時には、
格納先を15(00001111)とANDして、格納したい数値を16倍して足す
逆に後方に数値を格納するなら、格納先を240(11110000)とANDして
格納したい数値をそのまま足す
・・・って、あれ?11110000は先頭ビットが1だから負数になるのか?
エクサではどういう扱いになってるのかわかんないや、詳しい人補足よろ
>>620,624
ああ、要はロック先の管理をきっちりしてないとECM削りきれないことがある、と言いたかった
単純に定期ミサだけ実装しても効果薄いぞ、と
何も考えずにやるならキックオフミサの方がチップ数的にも重量的にも見返り大きいし- 642: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:46:02 ID:4WCPm2lW0(10)
- >>637
±99999.99までいけるから
65536(16個目?)までは安心していいと思ってる- 656: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:56:01 ID:efAxtLrZP(8)
- >>642
16個フルに使うとオーバーフローするよ- 661: 名前:枯れた名無しの水平思考 :2010/11/10(水) 22:00:07 ID:efAxtLrZP(8)
- >>656
…と、ごめん勘違いw
- 648: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:52:16 ID:xcy/K3xh0(19)
- >>637
00101110 元の数(前半2、後半14)
00001111
and
00001110
前半に格納したい:5
14+5*16=94→01011110(前半2、後半14)
って事だよね。
ありがとう。スゲー為になった。
- 614: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:19:47 ID:4wm/DgeQ0(10)
- >>602
何だろ、超ありがたい情報ありがとう!
- 641: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:45:47 ID:VX3Va/iY0
- >>572
11001111 and 11110000 => 11000000
11001111 and 00001111 => 00001111
11001111 or 11110000 => 11111111
11001111 or 00001111 => 11001111
11001111 xor 11110000 => 00111111
11001111 xor 00001111 => 11000000
- 574: 名前:572 :2010/11/10(水) 20:49:05 ID:xcy/K3xh0(19)
- 済まない、>>560は無視してくれorz
- 576: 名前:572 :2010/11/10(水) 20:50:02 ID:xcy/K3xh0(19)
- >>572の書き込みの>>560ってのは間違いなんで無視してくれ、に訂正orz
もうだめぽ- 578: 名前:枯れた名無しの水平思考 :2010/11/10(水) 20:51:11 ID:GAHPjhfP0(18)
- >>576
月影がペッタンペッタン餅を漬いてる姿を想像してもちつけ
- 590: 名前:枯れた名無しの水平思考 :2010/11/10(水) 21:00:06 ID:MHbUT1iW0(3)
- >>560
そのケースだと機体コードが128以上(厳密には96以上だけど)の場合は
必ずなにかしらを射撃中だから分岐条件は128以上でOK
それ以外の場合はたとえば4桁目が0か1かを調べたい場合
2進数の1000は8だから
A=使いまわすカウンタ B=ビット用
��A←B (数値を弄るからBでそのままやるとフラグが飛ぶので、Aに値を移行する)
��A and 8
��A==8で分岐(A>0でもOK)
これでok
andの説明はエンジョイ見たっていうから割り合いしたけど大丈夫?
■TOP■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- ツリー解除 dat