アマチュア無線や電子工作,バイクの話などを徒然なるままに書き散らすメモ程度のblogです.


by jq1ocr

林檎國:世界の始まりとその終焉

さっきの date コマンドで遊んでみましょう.

有名な2038年問題ってのはこれですね.
$ date -r 0x7fffffff
Tue Jan 19 12:14:07 JST 2038
32bit の signed で表したときの最大値.しかし増やしてみると変な答えが...Mac は unsigned で扱ってるの?
$ date -r 0x8fffffff
Mon Jul 23 09:38:23 JST 2046
いやいやビットを増やしたのですね.52 bit で...
$ date -r 0xfffffffffffff
Sat Dec 6 12:48:15 JST 142715360
なのですが,もう一つ f を増やすと Value too large to be stored in data type と言われます.しかしこれ(同じビット数)だと回答があります.
$ date -r 0xefffffffffffff
Mon Dec 19 18:03:59 JST 2140702833
どうもビット数だけで決めてるわけではなさそう.そもそもビット数が半端すぎます.では
$ date -r 0xf0000000000000
Mon Dec 19 18:04:00 JST 2140702833
ここから刻んでみましょう.結局ぎりぎり寸止めしてみると,
$ date -r 0xf0c2ab7c542aef
Wed Dec 31 23:59:59 JST 2147485547
この時刻を世界の終焉に定義したようです.

ちなみに明確に負の数を与えてみると,
$date -r -1
Thu Jan 1 08:59:59 JST 1970
と,このように返ってくるので,これでも最大値を探してみました.すると
$date -r -67768040609773200
Thu Jan 1 00:00:00 CJT -2147481748
でした.この CJT ってなんだ?と思ったら,昔は日本も広かったからなのか複数の時間帯があり,いわゆる今の JST は昔 CJT (Central Japan Time) だったらしい.しかしそれが紀元前21億年前まで有効だとは古事記も真っ青ですね.ちなみにこの数字を64bit の signed として換算すると ff0f 3d53 7c54 8970 となりますので,64bitで扱っているのは確かなようです.

というわけで,林檎國から見ると世界は紀元前21億年前に始まり,終焉が西暦21億年だということが分かりました.笑
d0106518_18594996.jpg
創世記...じゃなくて,1976年の初代ロゴ

[PR]
by jq1ocr | 2014-04-16 23:00 | 徒然話 | Comments(0)