ひとりごと

新しい記事:[2423]  古い記事:[2421] 表示単位 :

ついったー[おとなり日記] かがみさん Y.Kumagaiさん

2009/01/14 (水)

・ 64ビットの効用

前にも少し書きましたが、FreeBSDを i386 版から amd64 に切り替えたので、PHPの整数型変数の取扱いが少々変わっています。てことでちょっと実験してみました。

<?php
$a = 1;
$b = 1;
while($a>0) {
    $a = (integer)($a * 2);
    echo "2^$b = " , $a , "\n";
    $b++;
}
?>
i386の場合
2^1 = 2
2^2 = 4
2^3 = 8
(略)
2^30 = 1073741824
2^31 = -2147483648
amd64の場合
2^1 = 2
2^2 = 4
2^3 = 8
(略)
2^30 = 1073741824
2^31 = 2147483648
(略)
2^62 = 4611686018427387904
2^63 = -9223372036854775808

ビデオキャプチャの録画データを扱っていると、ファイルサイズが 2^31-1 バイトを超えることも珍しくありません。裏ワザを使わずとも受け取った値をそのまま使えるってのはなかなか便利です。「整数型なんて32ビット長あれば十分」と思っていましたが、実際には十分じゃないので長くても遅くならないのであればこっちの方が良いですな。

参考までに、64ビット整数型はどれくらいのファイルサイズまで扱えるのか数えてみました。

E   P   T   G   M   K
4,611,686,018,427,387,904

えーと、きろ・めが・ぎが・てら・ぺた・えくさ、、ですか? 我が家のHDDは「次は夢のいちてら!!」というレベルなので当面は大丈夫そうですね。

そして、上の数字を日本円に直すと4百京円。京ってどれくらいの金額なんだろう(笑)? 百万円ぐらいの数字は読めるのですが、それより上の位にカンマが4つもある世界なんてよくわかんないです。

[つっこみ]

新しい記事:[2423]  古い記事:[2421] 表示単位 :
※このページへのリンクは自由です。リンクの方法については[つっこみ]で表示されるページの最後をごらんください。
たかたに(takatani@mars.dti.ne.jp)