折り返し地点

コンピュータ業界の人にはおなじみの C 言語っていうプログラミング言語があります。1973 年にAT&T;ベル研究所の Dennis M. Ritchie さんたちによって作られたこの言語は、瞬く間に世界中に広がっていろいろなプログラムがこの言語で作られました。

この言語は、時刻を 1970/01/01 00:00:00 からの経過秒数であらわします。そして、その経過秒数を入れとく場所に 32 ビットの領域をとる仕様になっています。最初の 1 ビットは符号(+-)なので数値としては 31 ビットの秒数を確保できるわけです。

31 ビットってのは 231 = 2,147,483,648 – 1 ( 0 の分をマイナス ) で 2,147,483,647 秒 = 68 年と 1 ヶ月ちょっとくらいです。その日が、2038/01/19 03:14:07 (日本時間)で、それ以降は桁があふれちゃう(実際にはマイナスの値になります)からやばいじゃん、っていうのがいわゆる 2038 年問題です。

さて、なぜいきなり 2038 年問題の話をするかというと、 1970/01/01 00:00:00 から 230 – 1 秒経過が、今日 2004/01/10 22:37:03 なんですね。231 の半分、つまり折り返し地点ってわけで、ちょっと感慨深い今日この頃なわけです。

あと 15 分です。

コメント

コメントする

目次