コンピュータにおける日時の扱い方について。基本的に出典はWikipedia。

暦法

グレゴリオ暦

グレゴリオ暦(羅: Calendarium Gregorianum)は、第226代ローマ教皇グレゴリウス13世の命によりつくられた暦。
西暦2020年現在の日本で最も普通に使われている暦法(明治31年勅令第90号による)。

「西暦が4で割り切れる年が閏年、但し100で割り切れる年は平年、但し400で割り切れる年は閏年」とする暦である。閏年には2月29日を設ける。
平均すると1年の長さは365.2425日であり、太陽年に対して1年あたり26秒ほど長い。が、この誤差が積もって1日になるには3221年ほどかかる。

イタリア等の一部のカトリック国(最初に導入した国々)では、グレゴリオ暦の1582年10月15日金曜日から採用された。
この際、ユリウス暦の1582年10月4日木曜日の翌日がグレゴリオ暦の1582年10月15日金曜日となった。

他の国ではグレゴリオ暦の採用日はもっと遅い。
大英帝国ではユリウス暦の1752年9月2日水曜日の翌日がグレゴリオ暦の1752年9月14日木曜日となった。
日本では天保暦の明治5年(西暦1872年)12月2日の翌日がグレゴリオ暦の明治6年(西暦1873年)1月1日となった。

ユリウス暦

ユリウス暦(羅: Calendarium Iulianum)は、グレゴリオ暦の前に西洋諸国で使われていた暦。
ガイウス・ユリウス・カエサル(羅: Gaius Iulius Caesar)が治めていた頃のローマ帝国で制定されたためにこの名がある。
西暦紀元前45年1月1日から実施された。

わかりやすく書くと「西暦が4で割り切れる年が閏年」な暦である(が、この暦が制定されたのはナザレのイエスの生まれる前であるから、そのように定められた訳ではない)。平均すると1年の長さは365.25日。
ただし、西暦8年以前は混乱により正しく閏年が入れられなかったため少しずれている。

グレゴリオ暦がカトリック教会によって定められたものであるという事情から、西暦2020年現在もロシア正教会や日本ハリストス正教会等、東方正教会系のキリスト教会の一部では祭日の計算にユリウス暦が用いられている。

ユリウス日

ユリウス日またはユリウス通日(英: Julian Day)は、ユリウス暦の西暦紀元前4713年1月1日正午を起点とした日数。なお、ここの「正午」は世界時UT1のもの、即ちグリニッジ天文台を通る標準子午線でのものである。また、ここでのユリウス暦は先発ユリウス暦(英: proleptic Gregorian calendar)と呼ばれるものであり、西暦8年以前もそれ以降のような「4年に一度閏年」という原則で暦が作られていたと仮定した場合のものである。

正子ではなく正午が起点となっているのは、天文観測を行う際、一夜のうちに日付が変わらないほうが便利であったからである(このような正午を起点とする日の数え方を天文時(英: astronomical time)という。1925年に天文時は一般に廃止されたが、ユリウス通日の数え方にだけは残っている)。

例えばグレゴリオ歴の2000年1月1日正午はユリウス日で2451545.0である。

英語ではこのユリウス日の値を丸めて(小数第一位を四捨五入して)整数にしたものをJulian Day Numberと呼び分ける。
このような丸め方をすることから、Julian Day Numberの切り替わりは正子、即ち我々が普通に使う1日の切り替わりと一致する。
ユリウス暦の西暦紀元前4713年1月1日がJulian Day Numberで0となる。

修正ユリウス日

修正ユリウス日(英: Modified Julian Date)は、使いやすいようにユリウス日から2400000.5を引いた値。
即ちグレゴリオ暦1858年11月17日正子を起点とした日数。

現代の日常的な計算には数値が小さくなる(例えば1858年11月17日から2132年8月31日の日付を10進5桁の数値で表せる)上、正子が起点となっており分かりやすい。

閏秒

(仏: seconde, 英: second)の定義は、現在の国際単位系(仏: Système International d'unités, SI)(2019年改正の第9版。PDF)では

La seconde, symbole s, est l’unité de temps du SI. Elle est définie en prenant la valeur numérique fixée de la fréquence du césium, $\Delta \nu _\mathrm{Cs}$, la fréquence de la transition hyperfine de l’état fondamental de l’atome de césium 133 non perturbé, égale à 9 192 631 770 lorsqu’elle est exprimée en Hz, unité égale à s$^{−1}$.

のように、セシウム原子の放射の周期によって決められている。

しかし、この定義は1日=60×60×24秒という地球の自転をもとにした直感的な定義とはずれてしまい得る。

協定世界時(UTC)は、原子時計による国際原子時(仏: Temps Atomique International, TAI)を基準としてSIの幅で1秒を刻んでいるが、地球の自転に基づく世界時UT1に値を合わせるため、適宜秒を追加または削除して調整するようにしている。
このときに追加されるのが閏秒(英: leap second)である(現在のところ削除された例はない)。

閏秒は地球の自転に対するずれ(1日の長さのずれ)を補正するするものであって、地球の公転に対するずれ(1年の長さのずれ。上述したグレゴリオ歴の26秒)を補正するものではないことに注意。


最終更新: 2020-04-21 20:05:09 +0900

[Top]

This page is generated by sinanoki.