元スレ+ JavaScript の質問用スレッド vol.98 +
JavaScript覧 / PC版 /みんなの評価 :
501 = :
>>493
>32bitで64マスを扱うより64bitで64マスを扱う方が高速なのはもちろん遥かに、遥かに簡単になる
ちとピンとこないな。
っつーか、「16bitの漢字は16bitのパソコンでないと扱えない」みたいな勘違い臭がする。
502 = :
JS的に考えると、内部で自動的に型を変換して、処理速度とメモリが許すまで無限に大きい数を扱えるようにして欲しい。
現状でも特定の変数を32bit浮動少数型からより小さい整数型にしたりして勝手に高速化したりしてるんだからそれくらいできるはず。
503 :
>>493
だからオセロなのかw
504 = :
>>501
JavaScriptではbit演算は32bit整数扱いになる
各ビット、(または何ビットかずつ)でマスの状態を表す事で
演算一回全てのマスにで効果を与える事ができて、
何回かの単純な演算をするだけで目的の効果を全てのマスに与えられる
これは配列でループ的なものを使ってやるより普通ビックリするくらい究極に早い
いわゆるパターンマッチは(場合によってトリッキー(繁雑)になるが)もう配列より遥かに得意
なにより演算だけでなく参照もarray[n10]よりint&n2の方が早い
ライフゲームとかだともう天と地ほど違う
おまけでメモリ消費量も少ない
8x8マスのオセロ(色んな箇所でbit演算が非常に有効)でやろうとすると64ビット必要
これを32ビット×2でやると桁溢れ等の始末や、
どちら、または両方のどの位置同士を演算するかを求める演算が別個にいる
演算を補助するためにそれより多く演算がいるんだから数倍から下手すると十倍くらい
パフォーマンスが下がる上に非常に面倒な処理を書かなくてはいけなくなる
505 = :
盤上のオセロの状態って、石無し、黒石、白石、の3状態だから1マスにつき2bitの情報量が必要じゃねの?
507 = :
>>504
ビットきっちりのデータ構造よりも、1セル1バイトや1ワードの方が
特定ビットを取り出す演算がない分、すっきり書けるよ。
オセロもライフゲームも、書いた事ないでしょ。
経験者の発言とはちょっと思えない。
508 = :
>>505
ベテランの504さんが1bitで出来るつってんだから出来るだろ
509 = :
C+で作ったときは白他、黒他、有無の3つ64bit用意して使うたな。
128bitで2bitずつ使うのはこれよりどれだけ楽になるのか。
奇数を有無、偶数を白黒とかにする…?
うむ???
510 = :
64bitを3つだと1マスにつき3bit使ってることになるが・・・
511 = :
>>507
オセロ、将棋、囲碁、ライフゲーム、○×、五目並べといろいろ作ってるよ
オセロで64ビットでできるというのは間違えてた
一番昔にオセロ、直近にライフゲーム作ってビット演算で悩んでたから混乱してたわスマン
でも>>509のやり方でできるのか?
512 = :
使用メモリ量を減らすことと、処理速度を上げること、トレードオフであるから用途に合わせて好きなようになさい
513 = :
配列とビット演算ならどちらもビット演算の勝ちじゃないの?
514 = :
ビット演算がいいのはコピーが早いこと。
これは配列がどう足掻いても勝てない。
516 = :
>>511
囲碁のプログラミングは難しいだろ、すげーな。
でも、『GNU GO』みたいなdilation/erosionをするには、
1ビット(又は2ビット)じゃ足りないよね。
どうやってビット単位で?
517 = :
ネット弁慶の机上の空論なんだから>>501で正解。
そう言えば、「丘サーファー」みたいに「振りだけのプログラマ」を指す
短い言葉ってあるのかな。
518 = 503 :
>>514
検索も速いような気がしてきた
519 = :
お前らすごいね
大学や専門学校でプログラム勉強してCとかさんざやったあと
javascriptの世界に来たの?
520 = :
俺はニワカ知識でjavascriptやって状況に応じてC++とかやってたらいつの間にか知ってたな
大学の情報とか専門行ってたやつと比べると穴だらけだが
522 = :
>>516
お前さんが何を言ってるのかちんぷんかんぷん
思い出してみたらbit演算を本気でやろうとしてたのはライフゲームだけで
あとは特にオセロ何かでは配列の変わりに文字列を使えないか悩んでたんだったわ
それでごっちゃになってた、スマン
囲碁が難しいってCOMのAIの話か?
そんなの9路で素人の自分にも負けるようなしょぼいのしか作れんわ
スマホがメインだから処理がきつくてきつくてな……
オセロはスマホでもそこらの奴らには負けなくなったけど
囲碁はちょうど今モンテカルロ系を知って作ってみようかってところ
523 = 503 :
学校でちゃんと習ったのは、大学の一般教養でCのポインタまでと
研究室で院生に教わったアセンブラでDSPを動かしてたくらい
あ、小学校のときBASICを独学した
というか本に載ってるプログラムを丸写しがほとんどだったなw
524 = :
さっきから、自己の主張を否定する事をよく「思い出す」な。
525 = :
>>524
本当にスマンかった
その通りだ申し訳ない
526 = :
var fade = function (node) {
var level = 1;
var step = function ( ) {
var hex = level.toString(16);
node.style.backgroundColor = '#FFFF' + hex + hex;
if (level < 15) {
level += 1;
setTimeout(step, 100);
}
};
//setTimeout(step, 100);//Javascript Good partsの記述
step();//これでも挙動が同じ
};
fade(document.body);
good partsにクロージャのサンプルとして背景を黄色から白色に
徐々に変えていくとコードが載ってましたが、
setTimeout(step, 100);である必要ってのが理解できません。
step()でも全く問題なく同じ挙動しているようにみえるのですが、
教えてください。
527 = :
同じ挙動に「見える」だけで、同じじゃないだろ。
逆に、setTimeoutって何よ?
528 = :
質問させて下さい
ブログでランダム記事を作成したいと思っています
<script type="text/javascript"><!--
function GetRandomNumber() {
var randnum = Math.floor( Math.random() * 100 );
document.getElementById("sample").innerHTML = randnum;
}
// --></script>
<p>
<input type="button" value="ランダムな番号を選ぶ" onclick="GetRandomNumber();">
</p>
<p>
ランダムに選ばれた番号: <span id="sample">***</span>
</p>
この * 100 の部分にURLをいれればいいのでしょうか?
529 = :
>>528
なんかもう、ぜんぜん分かってないじゃないか・・・
お前には無理だやめとけ
531 = :
>>529-530
すいません、ずぶの素人ですT-T
使用しているのはライブドアブログで
URLはhttp://blog.livedoor.jp/○○○/archives/3302814.html
このようになっています
ランダムで3302814.htmlこの部分を他のアーカイブ数字に変更したいんです
532 = :
んじゃそのアーカイブ数字はいくつからいくつまでが存在して、いくつからいくつまでを指定すんのよという話に
533 = :
>>532
ここの数字を完全にランダムにしてしまうと
他の人のブログに飛んでしまいますんで
自分のブログ内でのランダムにしたいんです
説明が下手で申し訳ないです
534 = 503 :
>>533
じゃあまずその数字の規則性を見つけないと
535 = 503 :
ああ、途中で・・・
規則性がないなら、自分の番号だけを配列に入れておこう
536 = :
>>535
この場合は、自分のURL全体をランダムにするより
数字だけをランダムに入れた方が
表示は軽くなりますよね?
537 = :
自分のブログのRSSを取得して配列にぶち込む
ぶち込んだ配列の最大長までのランダムなキーを生成
配列からデータ取り出して、記事URLへリダイレクト
これが理解できないなら無理
以下次の質問へ
538 = :
>>537
ヒントいただき有り難うございます!
頑張ります!
539 = :
RSSってなんだそりゃー
もはやjavascript関係ねー
540 = :
>>536
さして変わらんと思うよ
俺なら全部入れとくと思う
541 = :
えー、xhrの出番だろ?モロにJSじゃないかJK
542 = :
てかlivedoorのブログってその記事番号変えただけで人のブログになるような仕様になってんの?
そんなアホな
543 = :
ウェブ上で科学計算が出来るページを作りたいのですが
その計算に使われるデータが膨大になり,スクリプト本体ではなく
サーバ上のデータファイルにアクセスするような仕様にしたい場合は
Javascriptでは厳しいでしょうか?
別の言語でCGIを利用すべきですか?
544 = :
>>543
ちょっと何言ってんのかわかんない
ってか、質問者の日本語が分からないのが多いんですけど
545 = :
CGIで計算XHRで入出力か、全部JSでやるかって事だろ
そんなんどっちがいいか状況に合わせて考えることで一概にには言えない
546 = :
>>543
普通はcgi
JSでやるにしてもサーバー側でのプログラミングも必要だしデータのマージ処理も大変面倒
ただサーバー側が重くなるので限界はある
完全に分散処理でweb上で行いたいならJSでもいいんじゃね?
547 = :
どちらにせよブラウザがギブアップして処理を中断すると予想
548 = :
そんな処理なら並のPCのCGIでやらせたらも危険だから逆にブラウザでやらせるべきだな
Workerとか使ってさ
549 = :
JSで分散コンピューティングか。面白そうだ。
Nodeとか使えばJSオンリーでいけるよ。
550 = :
別に分散コンピューティングとは決まってないが
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.95 + (1001) - [97%] - 2012/1/17 4:16
- + JavaScript の質問用スレッド vol.88 + (1001) - [97%] - 2011/7/20 7:03
- + JavaScript の質問用スレッド vol.99 + (1001) - [97%] - 2012/5/7 4:32
- + JavaScript の質問用スレッド vol.97 + (1001) - [97%] - 2012/3/1 3:31
- + JavaScript の質問用スレッド vol.96 + (1001) - [97%] - 2012/1/28 23:01
- + JavaScript の質問用スレッド vol.78 + (1001) - [97%] - 2010/6/25 3:53
- + JavaScript の質問用スレッド vol.94 + (1001) - [97%] - 2012/1/8 15:46
- + JavaScript の質問用スレッド vol.93 + (1001) - [97%] - 2012/1/1 4:46
- + JavaScript の質問用スレッド vol.93 + (1001) - [97%] - 2011/12/10 18:31
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/11/15 20:32
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/10/26 4:18
- + JavaScript の質問用スレッド vol.128 + (1001) - [95%] - 2016/2/26 6:45
- + JavaScript の質問用スレッド vol.118 + (1002) - [95%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.138 + (1004) - [95%] - 2019/4/20 23:45
- + JavaScript の質問用スレッド vol.108 + (1001) - [95%] - 2013/9/21 15:16
- + JavaScript の質問用スレッド vol.89 + (1001) - [95%] - 2011/9/4 4:17
- + JavaScript の質問用スレッド vol.87 + (1001) - [95%] - 2011/6/21 6:33
トップメニューへ / →のくす牧場書庫について