「12:00 PM」は「午後12時」ではなく、「午前12時」だった?

AMは午前、PMは午後。

ずっと、そう思ってきましたが少し違ったようです。

12時間表記の12時は、英米式と日本式で真逆だった

まず、英米式と日本式で考え方が違うという事実があります。

英米式と日本式の比較

口語だと、「お昼の12時」や「夜中の12時」など表現するので混乱しないですが、正式な文章では使えないですよね。

また、英米式の「11:00 a.m.」の次が「12:00 p.m.」というのが、日本人として納得できないですね。

これは、日本人が0時という表記を使うからです。

英米式では0時は使わない

12時間表記は、アナログ時計から来ています。

アナログ時計に0時はありません。だから12時を使います。

12からはじまり、1, 2 … 10, 11と数が進み針が1周するわけですね。

1日は時計の針が2周するので、1周目をa.m.(ante meridiem)、2周目をp.m.(post meridiem)と書きます。

なので、
24時間表記 → 12時間表記は
— 1周目 —
     11:00 → 11:00 a.m.
— 2周目 —
     12:00 → 12:00 p.m.
     13:00 → 01:00 p.m.
と書くのです。

ちなみに、「AM 11:00」のように時間の前にAM/PMを書くのは英語としては間違いなので後ろに書くようにしましょう。
(日本式としてはありなのかもしれません)

なぜ、0ではないのか

なぜ、時計のはじまりが0ではなく12なのか。

それは、0(ゼロ)という概念が比較的新しいからです。

0(ゼロ)が確立されたのは5世紀頃のインドで、時計の歴史はそれより古く、初期の時計は紀元前3500年頃に作られた古代エジプトのオベリスクが日時計の役割を果たしていました。

明治コソコソ噂話

海外の歴史の話をしたので、少し日本の歴史を振り返ってみます。

現在使われている「1日は24時間という日付・時間の文化」は、明治の鎖国が解かれてから、日本に来ました。

それまでは、「和時計などの不定時法という時間」「天保暦という暦法」を用いていました。

不定時法

日の出前の白々と夜が明ける「薄明」と、日が暮れて人の顔がよくわからなくなる「誰そ彼」(たそがれ)を基準に昼と夜を分けます。

昼と夜をそれぞれ6等分したものを「一刻」と呼びました。

当然、季節によって一刻の長さは異なります。

当時の一刻は現在のおおよそ2時間です。

ただ、古代から不定時法を使っていたかというと、そうでもなく
不定時法が主流になったのは室町時代からだそうです。

それ以前の大昔は四八刻法、五〇刻法、一〇〇刻法などの定時法を使っており、一刻がおおよそ30分や15分であったそうです。

改暦

天保暦(旧暦)からグレゴリオ暦に直すにあたって、明治5年12月3日をもって明治6年1月1日となっています。

ちなみに明治6年は西暦1873年です。

お昼の12時(正午)は午前なの?午後なの?

冒頭の画像「英米式と日本式の比較」に答えはあるのですが、その根拠は何かと言うと、「時刻表」になります。

太政官達第337号「改暦ノ布告」には「時刻表」という表があり、答えはココにありました。

時刻表

日本の法律上、お昼の12時は午前だったわけです。

英米式では、「12:00 p.m.」午後という扱い。

現代においては、一般的にどちらとも言えないのではないでしょうか。(個人的見解)

ただ、英米式の午後という扱いのほうが合理的だとは思います。

プログラム上ではどうなっているのか

ITの文化は、ほとんど米国から来ています。

「それを言ったら、Excelで時間の日本語表記できたよね?どう表示されるの?」

答えは、下記画像になります。

Excelの英語表記と日本語表記の比較
Microsoft Excel for Mac v16.42 (20101102)

残念ながら、Excelの日本語表記は日本式ではなく英米式でした。

プログラミングで日本語12h表記を実装する場合

プログラミングで実装する場合は、大きく分けて3パターンになると思います。

独自実装でよく用いられる12h表記

英米式日本語12h表記(1-12)

AM/PMを午前/午後に置き換える独自実装が必要になります。

しかし、日本人としては違和感を感じてしまいますね。

日本の法律と12時表記が真逆ですし、正式な文章には適さないようにも思えます。

ですが、実際問題、Excelはかなり普及していてたくさんの文章で使われていると思うので、英米式日本語12h表記が一番無難なのかもしれません。

市販の時計でも英米式を採用しているデジタル時計もあります。

採用例:Microsoft製品、デジタル時計(Casio、CITIZEN、SEIKOなど)

日本式12h表記(0-11)

午前/午後が英米式と同じになります。

しかし、ほとんどの言語は0〜11の時間を想定した作りにはなっていないので、「12は0に置き換える」などの独自実装が必要になります。

日本人として違和感がなく、合理的な表記だと思います。

ただし、法律上「午後零時」は存在しないのですが、法令でも利用されているため、正式な文章としても利用できます。

また、法律の解釈次第なのですが午前は12時00分00秒で終わり、午前12時30分などの表記は存在しないと考えると、0-11式が法律上正しいと言えます。

採用例:Apple製品、Android端末、デジタル時計、日本時計協会、国立天文台広報普及室、情報通信研究機構周波数標準課など

日本式12h表記(1-12)

まず、この方式を採用することは止めておいた方が良いでしょう。

英米式と時間の数値が同じになりますが、午前/午後が異なります

実装では「時間を比較して午前/午後を判定する」などの独自実装が必要になり、分秒を表示する際に12時過ぎの表現で間違いとなります。

冒頭の画像「英米式と日本式の比較」や「時刻表」にある通り、法律上は「午後零時」は存在しないので、正式な文章などでは1〜12時間を扱うこの方式が良いかもしれません。(お勧めしている訳ではない)

ただ、英米式の考え方でいうと
「午前12時?時計の針が2週目に入ったのに、まだ午前とか言ってるの?」
「午後12時?日付変わったのに、まだ午後とか言ってるの?」という話ではあるんです。

また、法律上でも1-12式の午前12時30分などは「正午を過ぎているのに、午前と表記してしまう」という事で12時過ぎの表現で間違いとなるので、プログラムで実装するには非常に都合が悪く採用しない事をお勧めします。

もし、実装するのであれば現在時刻を表示するものではなく、印刷物などでかつ分秒は出力しないもので使えると思いますが、これを選ぶメリットはほぼ無いでしょう。

採用例:某技術系サイトで12時間表記の間違った実装例を記載

※言語が対応していたり、ライブラリがあるのであれば独自実装の必要はありません。

まとめ

24時間表記を使いましょう。

参考

https://ja.wikipedia.org/wiki/和時計
https://ja.wikipedia.org/wiki/旧暦#日本
https://ja.wikipedia.org/wiki/時計の歴史#日本の時計の歴史
http://www.kuu-kikaku.jp/rekishi/jikoku-etc.html
https://museum.seiko.co.jp/knowledge/relation_16/
https://www.koho.or.jp/useful/qa/hyouki/hyouki07.html
https://www.sanctio.net/ampm/
https://blog.goo.ne.jp/lemon-stoism/e/651f459bbe12f1d1099cabc7489a6351
https://elaws.e-gov.go.jp/search/elawsSearch/elaws_search/lsg0500/detail?lawId=105DF0000000337
https://elaws.e-gov.go.jp/search/elawsSearch/elaws_search/lsg0500/detail?lawId=409RJNJ20000000
http://www.kodokei.com/la_015_1.html

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です