JP3674957B2 - Calendar display device - Google Patents
Calendar display device Download PDFInfo
- Publication number
- JP3674957B2 JP3674957B2 JP02937094A JP2937094A JP3674957B2 JP 3674957 B2 JP3674957 B2 JP 3674957B2 JP 02937094 A JP02937094 A JP 02937094A JP 2937094 A JP2937094 A JP 2937094A JP 3674957 B2 JP3674957 B2 JP 3674957B2
- Authority
- JP
- Japan
- Prior art keywords
- calendar
- date
- lunar
- day
- days
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Calculators And Similar Devices (AREA)
Description
【0001】
【産業上の利用分野】
本発明は、太陰暦のカレンダを表示するカレンダ表示装置に関する。
【0002】
【従来の技術】
従来、時計やコンピュータ等の電子機器において、その表示画面にカレンダ表示を行なうものが広く実用化されている。
このようなカレンダ表示機能を備えた電子機器では、一般に、カレンダは太陽暦(西暦)に対応して表示されるので、1年が365日,各月日数が31日と30日で2月のみ28日、そして、4年周期で1年が366日,2月のみ29日と規定されている。
【0003】
一方、地球上で実際に利用されている暦としては、例えばアラブ諸国において宗教上の暦として利用される太陰暦(陰暦)が上げられる。
この太陰暦は、12ケ月を持って1年とし、月の運行によって月日数が定められるもので、奇数月は30日,偶数月は29日にして1年を354日、そして、30年周期で2,5,7,10,13,16,18,21,24,26,29年目にそれぞれ閏年を設けて1日追加し355日にするという原則になっている。
【0004】
【発明が解決しようとする課題】
ここで、特にアラブ諸国では、通常は西暦を用いた生活をしていても、宗教上の儀式を行なう等のため、例えば西暦上の当日が陰暦上の何年,何月,何日に該当するかを知る必要が生じる。
【0005】
しかしながら、太陽暦のカレンダ表示を行なう前記従来の電子機器では、太陽暦上の年月日を太陰暦上の年月日に変換して表示することはできない。
本発明は前記課題に鑑みなされたもので、太陽暦(西暦)上の年月日に対応して太陰暦(陰暦)上の年月日を表示することが可能になるカレンダ表示装置を提供することを目的とする。
【0006】
【課題を解決するための手段】
すなわち、本発明に係わる第1のカレンダ表示装置は、太陽暦上の任意の年月日を指定する年月日指定手段と、所定の基準日から前記指定された太陽暦上の年月日までの日数データを指定日日数データとして算出する指定日日数演算手段と、前記所定の基準日から太陰暦上の特定の年月日までの日数データを陰暦基準日日数データとして記憶する陰暦基準日記憶手段と、太陰暦の各年における各月毎の日付日数を記憶する太陰暦情報記憶手段と、前記指定日日数演算手段により算出された指定日日数データと前記陰暦基準日記憶手段により記憶された陰暦基準日日数データとの差の日数データを陰暦指定日日数データとして算出する陰暦指定日日数演算手段と、前記太陰暦上の特定の年月日に対して、この陰暦指定日日数演算手段により算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日を、前記太陰暦情報記憶手段に記憶された太陰暦の各年における各月毎の日付日数を用いて算出することによって、前記指定された太陽暦上の年月日を対応する太陰暦の年月日に変換する西暦/陰暦変換手段と、この西暦/陰暦変換手段により得られた太陰暦の年月日を表示する陰暦表示手段とを備えて構成したものである。
【0007】
また、本発明に係わる第2のカレンダ表示装置は、前記第1のカレンダ表示装置にあって、前記陰暦基準日記憶手段に記憶される陰暦基準日日数データは、前記太陰暦情報記憶手段に記憶される太陰暦の複数の年の中で複数設定される特定年月日のそれぞれに対応して記憶され、前記特定年月日のそれぞれに対応して記憶された各陰暦基準日日数データのうち、前記指定日日数演算手段により算出された指定日日数データに近い陰暦基準日日数データを利用対象に設定する陰暦基準設定手段を具備し、前記陰暦指定日日数演算手段は、前記指定日日数演算手段により算出された指定日数データと、この陰暦基準設定手段により利用対象に設定された陰暦基準日日数データとの差の日数データを陰暦指定日日数データとして算出し、前記西暦/陰暦変換手段は、前記陰暦基準設定手段により利用対象に設定された陰暦基準日日数データに対応する太陰暦上の特定の年月日に対して、この算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日を算出するものとして構成したものである。
【0008】
また、本発明に係わる第3のカレンダ表示装置は、前記第1又は第2のカレンダ表示装置にあって、前記年月日指定手段は、計時手段により計時された現在時刻により随時更新される現在の年月日に対応する太陽暦上の年月日を指定するものとして構成したものである。
【0009】
また、本発明に係わる第4のカレンダ表示装置は、前記第1又は第2のカレンダ表示装置にあって、前記年月日指定手段は、キー入力手段により太陽暦上の年月日を指定するものとして構成したものである。
【0010】
また、本発明に係わる第5のカレンダ表示装置は、前記第1から第4のカレンダ表示装置にあって、前記陰暦表示手段は、前記西暦/陰暦変換手段により得られた太陰暦の年月日が属する月の太陰暦カレンダを表示するものとして構成したものである。
【0011】
また、本発明に係わる第6のカレンダ表示装置は、前記第1から第5のカレンダ表示装置にあって、前記太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数を訂正する陰暦月日数訂正手段を備えて構成したものである。
【0012】
また、本発明に係わる第7のカレンダ表示装置は、前記第6のカレンダ表示装置にあって、前記陰暦月日数訂正手段により前記太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数が訂正された際に、その訂正日数に応じて、前記陰暦基準日記憶手段に記憶される太陰暦上の特定の年月日に対応する日数データを書換える陰暦基準日数書換え手段を備えて構成したものである。
【0015】
【作用】
つまり、前記第1のカレンダ表示装置では、年月日指定手段により太陽暦上の任意の年月日が指定されると、所定の基準日から該指定年月日までの日数データが指定日日数データとして指定日日数演算手段により算出され、この算出された指定日日数データと陰暦基準日記憶手段に記憶された所定の基準日から陰暦上の特定年月日までの陰暦基準日日数データとの差の日数データが陰暦指定日日数データとして陰暦指定日日数演算手段により算出され、前記太陰暦上の特定の年月日に対して、この陰暦指定日日数演算手段により算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日が、前記太陰暦情報記憶手段に記憶された太陰暦の各年における各月毎の日付日数を用いて算出されることによって、前記指定された太陽暦上の年月日が対応する太陰暦の年月日に変換され、表示されることとなる。従って、所定の基準日から太陰暦上の特定の年月日までの日数データである陰暦基準日日数データを用いて、この陰暦基準日日数データと指定日日数データとの差の日数データが算出され、この差の日数分だけ前記太陰暦上の特定の年月日から変化させた陰暦の年月日が算出されることにより、高速に陰暦年月日への変換処理が行なえることになる。
【0016】
また、前記第2のカレンダ表示装置では、第1のカレンダ表示装置にあって、前記陰暦基準日記憶手段に記憶される陰暦基準日日数データは、前記太陰暦情報記憶手段に記憶される太陰暦の複数の年の中で複数設定される特定年月日のそれぞれに対応して記憶され、前記特定年月日のそれぞれに対応して記憶された各陰暦基準日日数データのうち、前記指定日日数演算手段により算出された指定日日数データに近い陰暦基準日日数データが陰暦基準設定手段により利用対象に設定され、前記指定日日数演算手段により算出された指定日数データと、この陰暦基準設定手段により利用対象に設定された陰暦基準日日数データとの差の日数データが前記陰暦指定日日数演算手段により陰暦指定日日数データとして算出され、前記陰暦基準設定手段により利用対象に設定された陰暦基準日日数データに対応する太陰暦上の特定の年月日に対して、この算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日が算出される。従って、指定日日数演算手段により算出された指定日日数データに最も近い陰暦基準日日数データを活用して、高速に陰暦年月日への変換処理が行なえることになる。
【0017】
また、前記第3のカレンダ表示装置では、前記第1又は第2のカレンダ表示装置にあって、その年月日指定手段により指定される太陽暦上の年月日は、計時手段により計時された現在時刻により随時更新される現在の年月日に対応する太陽暦上の年月日が指定されるので、現在の太陽暦上の当日年月日に対応する陰暦年月日が容易に変換表示されることになる。
【0018】
また、前記第4のカレンダ表示装置では、前記第1又は第2のカレンダ表示装置にあって、その年月日指定手段により指定される太陽暦上の年月日は、キー入力手段により指定されるので、太陽暦上の現在,過去,未来それぞれ所望の年月日に対応する陰暦年月日が容易に変換表示されることになる。
【0019】
また、前記第5のカレンダ表示装置では、前記第1から第5何れかのカレンダ表示装置にあって、その陰暦表示手段により表示される太陰暦の年月日は、該陰暦年月日が属する月の太陰暦カレンダとして表示されることになる。
【0020】
また、前記第6のカレンダ表示装置では、前記第1から第5何れかのカレンダ表示装置にあって、その太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数は、陰暦月日数訂正手段により必要に応じて訂正されるので、イスラム教の指導等による陰暦日数の変更に応じて、容易に日付訂正が行なえることになる。
【0021】
また、前記第7のカレンダ表示装置では、前記第6のカレンダ表示装置にあって、陰暦月日数訂正手段により太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数が訂正された際には、陰暦基準日数書換え手段により、陰暦基準日記憶手段に記憶される太陰暦上の特定の年月日に対応する日数データが前記訂正日数に応じて書換えられるので、イスラム教の指導等による陰暦日数の変更があっても、将来に渡り正確な陰暦年月日への変換表示処理が行なえることになる。
【0024】
【実施例】
以下図面により本発明の一実施例について説明する。
図1はカレンダ表示装置の外観構成を示す正面図である。
このカレンダ表示装置における装置本体11の正面には、キー入力部12及び液晶表示部13が設けられる。
【0025】
キー入力部12には、電源の投入/遮断を行なうON/OFFキー14a,14bの他、表示画面上でのカーソル移動によりデータ選択を行なう際に操作されるカーソルキー15、数値データを入力する際に操作されるテンキー16、任意の年月日を指定する際に操作される「月/日」キー17、太陽暦(西暦)と太陰暦(陰暦)とを変換する際に操作される「変換」キー18、太陰暦の日付訂正を行なう際に操作される「訂正」キー19等が備えられる。
【0026】
液晶表示部13には、例えばONキー14aの操作による電源の投入に伴ない、西暦の当日年月日及び曜日が表示されると共に、該当日年月日がカーソルにより点滅指示された1カ月のカレンダが表示されるもので、この液晶表示部13に表示された西暦年月日を、前記「月/日」キー17及びテンキー16を操作して任意の年月日に変更指定すると、その変更操作に伴ないカレンダ表示も切替わり、また、該カレンダ表示でカーソル指示される月日を、前記カーソルキー15を操作して変更指定すると、その変更操作に伴ない年月日表示も切替わる。
【0027】
そして、前記「変換」キー18が操作されると、液晶表示部13に表示されている西暦年月日及びそのカレンダは、対応する陰暦年月日及びそのカレンダに変換されて表示される。
【0028】
図2は前記カレンダ表示装置の電子回路の構成を示すブロック図である。
このカレンダ表示装置は、中央処理装置(CPU)等で構成される制御部21を備えている。
【0029】
制御部21は、キー入力部12からのキー操作信号に応じて、ROM22に予め記憶されているシステムプログラムを起動させ、回路各部の動作制御を行なうもので、この制御部21には、前記キー入力部12及びROM22の他、計時回路23、太陰暦RAM24、ワークRAM25が接続されると共に、表示RAM26を介して前記液晶表示部13が接続される。
【0030】
図3は前記カレンダ表示装置のROM22における固定データの記憶状態を示す図である。
ROM22には、カレンダ表示処理プログラムや西暦/陰暦の変換表示処理プログラム、陰暦日数の訂正処理プログラム等が予め記憶されると共に、西暦カレンダ日数テーブル31a、西暦全日数最小値データ31b、西暦全日数最大値データ31c、指定日全日数計算式31d、曜日計算式31e、曜日データ31f等が記憶される。
【0031】
前記西暦カレンダ日数テーブル31aには、このカレンダ表示装置で表示可能な西暦1901年〜2099年までの各月毎の日付日数(30or31or28or29)が記憶されると共に、各月毎の1日の曜日データ(0:日曜〜6:土曜)が記憶される。
【0032】
前記西暦全日数最小値データ31bとしては、例えば西暦1900年3月1日を基準日“1”とする前記カレンダ表示可能な最小西暦年月日1901年1月1日までの全日数“307”が記憶される。
【0033】
前記西暦全日数最大値データ31cとしては、前記西暦1900年3月1日を基準日“1”とする前記カレンダ表示可能な最大西暦年月日2099年12月31までの全日数“72991”が記憶される。
【0034】
前記指定日全日数計算式31dは、前記「月/日」キー17やカーソルキー15の操作に応じて指定された西暦年月日までの、前記西暦基準日(1900年3月1日)からの全日数を算出するための計算式であり、西暦指定日の年をa,月をb,日をcとすると、その全日数Xは、b≧3の場合に下式(1)で算出され、また、b<3の場合に下式(2)で算出される。
【0035】
ここで、[ ]cut とは、小数点以下の切捨てを意味し、[ ]5/4 とは、四捨五入を意味する。
【0036】
前記曜日計算式31eは、前記西暦基準日(1900年3月1日)からの全日数Xに応じて対応する曜日を算出するための計算式であり、下式(3)による演算結果の余り値が曜日データ(0:日曜〜6:土曜)として得られる。
【0037】
(全日数+3)÷7 …式(3)
つまり、前記式(3)による演算結果の余り値が、例えば“0”の場合には“日曜日”、“6”の場合には“土曜日”となる。
【0038】
前記曜日データ31fは、0:日曜日、1:月曜日、2:火曜日、3:水曜日、4:木曜日、5:金曜日、6:土曜日として、それぞれ対応付けされて記憶される。
【0039】
図4は前記カレンダ表示装置の太陰暦RAM24における太陰暦テーブルの記憶状態を示す図である。
この太陰暦テーブルには、前記カレンダ表示可能な西暦範囲1901年1月1日(全日数307)〜2099年12月31日(全日数72991)に対応する陰暦範囲1318年9月10日〜1524年1月6日をカバーする陰暦1318年1月〜1525年12月までの各月毎の日付データ(“0”29or“1”30)が記憶されるもので、この太陰暦テーブルにおいて、陰暦1400年1月〜1450年12月の範囲は、サウジ公式カレンダとして各月毎の日数が原則として確定されている。
【0040】
図5は前記カレンダ表示装置のワークRAM25における各種ワークレジスタの構成を示す図であり、同図(A)は陰暦変換用ワークRAM25aのレジスタ構成を示す図、同図(B)はカレンダ表示用ワークRAM25bのレジスタ構成を示す図である。
【0041】
前記図5(A)における陰暦変換用ワークRAM25aには、計時レジスタ41a、現西暦年月日レジスタ41b、指定年月日レジスタ41c、指定日全日数レジスタ41d、陰暦基準全日数レジスタ41e、日数レジスタ41f、陰暦年月日レジスタ41g、陰暦テーブル年ポインタ41h、陰暦テーブル月カウンタ41iが備えられる。
【0042】
前記計時レジスタ41aには、計時回路23からの計時データに基づき制御部21にて逐次更新される現在時刻データが記憶される。
前記現西暦年月日レジスタ41bには、前記計時レジスタ41aに記憶される現在時刻データに従って制御部21にて逐次更新される現在の西暦年月日及びその曜日データが記憶される。
【0043】
前記指定年月日レジスタ41cには、前記「月/日」キー17やカーソルキー15の操作に応じてユーザ指定された西暦上の指定年月日が記憶される。
前記指定日全日数レジスタ41dには、前記指定日年月日レジスタ41cに記憶された西暦指定年月日に対応して、前記式(1)又は式(2)により算出された全日数Xが記憶される。
【0044】
前記陰暦基準全日数レジスタ41eには、前記太陰暦テーブル(図4参照)のサウジ公式カレンダに対応させた、先頭年の初期陰暦年月日1400年1月1日(西暦1979年11月20日に対応)の前記西暦基準年月日1900年3月1日に基づく全日数データ“29118”が、第1の陰暦基準全日数として記憶されると共に、同サウジ公式カレンダに対応させた、最終年の初期陰暦年月日1450年1月1日(西暦2028年5月26日に対応)の全日数データ“46838”が、第2の陰暦基準全日数として記憶される。
【0045】
前記日数レジスタ41fには、西暦/陰暦の変換処理に際し、前記指定日全日数レジスタ41dに記憶された西暦指定年月日の全日数Xを基礎して演算処理される日数データが必要に応じて書込み記憶される。
【0046】
前記陰暦年月日レジスタ41gには、前記西暦指定年月日に対応して変換処理された太陰暦での年月日及び曜日データが記憶される。
前記陰暦テーブル年ポインタ41hには、西暦/陰暦の変換処理に際し、前記太陰暦テーブル(図4参照)上の年度を示すポインタが記憶される。
【0047】
前記陰暦テーブル月カウンタ41iには、西暦/陰暦の変換処理に際し、前記太陰暦テーブル(図4参照)上の月数を示すカウントデータが記憶される。
また、前記図5(B)におけるカレンダ表示用ワークRAM25bには、1日曜日レジスタ42a、最終日付レジスタ42b、表示データレジスタ42c、表示行レジスタ42d、表示桁レジスタ42eが備えられる。
【0048】
前記1日曜日レジスタ42aには、表示すべき日付が属する1カ月のカレンダ表示処理に際し、該当月の1日の曜日データが記憶されるもので、西暦表示の場合、前記ROM22内の西暦カレンダ日数テーブル31aから読出されて記憶され、また、陰暦表示の場合、前記式(3)に基づき算出されて記憶される。
【0049】
前記最終日付レジスタ42bには、表示すべき日付が属する1カ月のカレンダ表示処理に際し、該当月の最終の日付データが記憶されるもので、西暦表示の場合、前記ROM22内の西暦カレンダ日数テーブル31aから読出されて記憶され、また、陰暦表示の場合、前記太陰暦テーブル(図4参照)から読出されて記憶される。
【0050】
前記表示データレジスタ42cには、前記カレンダ表示処理に際し、前記表示RAM26に書込んで配列表示すべき1カ月の日付データが、前記最終日付レジスタ42bに記憶された最終日付データに一致するまで順次カウントアップされて記憶される。
【0051】
前記表示行レジスタ42dには、前記表示データレジスタ42cに記憶された日付データを配列すべき表示RAM26上の行アドレスが、1週間表示毎に順次カウントアップされて記憶される。
【0052】
前記表示桁レジスタ42eには、前記表示データレジスタ42cに記憶された日付データを配列すべき表示RAM26上の桁アドレスが、1週間単位の1日表示毎に順次カウントアップされて記憶される。
【0053】
次に、前記構成によるカレンダ表示装置の動作について説明する。
まず、キー入力部12のONキー14aを操作して電源を投入すると、ワークRAM25内の現西暦年月日レジスタ41bに記憶されている現在の西暦年月日及び曜日データに対応する西暦年月日及び曜日が、例えば図1で示したように、液晶表示部13に表示されると共に、該西暦年月日の属する1カ月のカレンダが、ROM22内の西暦カレンダ日数テーブル31aに記憶されている該当月の日付日数及びその1日の曜日データに基づき表示される。
【0054】
図6は前記カレンダ表示装置による西暦/陰暦変換表示処理を示すフローチャートである。
すなわち、現西暦年月日レジスタ41bに記憶された現在の西暦年月日に応じて表示された西暦年月日、又は、キー入力部12の「月/日」キー17やカーソルキー15の操作に応じて表示された所望の西暦年月日が、図1で示したように、例えば西暦1994年2月1日(火)である場合に、この西暦年月日“1994年2月1日”に対応する太陰暦の年月日を表示させるのに、「変換」キー18を操作すると、まず、陰暦への変換対象として指定された前記西暦年月日“1994年2月1日”が、ワークRAM25内の指定年月日レジスタ41cに記憶される(ステップS1)。
【0055】
すると、西暦基準日“1900年3月1日”から前記西暦指定年月日“1994年2月1日”までの全日数Xが、ROM22内に記憶される指定日全日数計算式[式(1)又は式(2)]に基づき算出され、ワークRAM25内の指定日全日数レジスタ41dに記憶される(ステップS2)。
【0056】
この場合、西暦指定月b=2であるので、式(2)により全日数Xが算出されるもので、この式(2)に対し、前記西暦指定年月日に対応してa=1994,b=2,c=1と代入されると、その全日数Xは、
として算出され、前記指定日全日数レジスタ41dに記憶される。
【0057】
ここで、指定日全日数レジスタ41dに記憶された指定日全日数X“34306”が、ROM22内に予め記憶されたカレンダ表示可能な西暦全日数最小値データ31b“307”(西暦1901年1月1日に対応)〜西暦全日数最大値データ31c“72991”(西暦2099年12月31日に対応)の範囲内か否か判断されるもので、この場合、前記指定日全日数X“34306”は、表示可能範囲“307”〜“72991”内なので、太陰暦テーブル(図4参照)に対する基準年ポインタのセット処理に移行する(ステップS3→SA)。
【0058】
一方、前記西暦指定日全日数Xが、西暦全日数最小値データ31b及び最大値データ31cで示されるカレンダ表示可能範囲外であると判断された場合には、液晶表示部13にエラーメッセージが表示される(ステップS3→S4)。
【0059】
図7は前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう陰暦テーブルの基準年ポインタセット処理を示すフローチャートである。
すなわち、まず、前記ステップS2においてワークRAM25内の指定日全日数レジスタ41dに記憶された西暦指定日“1994年2月1日”の全日数X“34306”と、陰暦基準全日数レジスタ41eに記憶されている陰暦テーブル(図4参照)上の1400年1月1日に対応する第1の陰暦基準全日数“29118”とが比較され、前記西暦指定日が陰暦上の1400年未満に存在するか否か判断される(ステップA1,A2)。
【0060】
このステップA2において「NO」、つまり、前記指定日全日数X“34306”は前記第1の陰暦基準全日数“29118”以上なので、前記西暦指定日“1994年2月1日”は陰暦上の1400年以上に存在すると判断されると、さらに、前記指定日全日数X“34306”と、陰暦基準全日数レジスタ41eに記憶されている陰暦テーブル(図4参照)上の1450年1月1日に対応する第2の陰暦基準全日数“46838”とが比較され、前記西暦指定日が陰暦上の1450年未満に存在するか否か判断される(ステップA3,A4)。
【0061】
このステップA4において「YES」、つまり、前記指定日全日数X“34306”は前記第2の陰暦基準全日数“46838”未満なので、前記西暦指定日“1994年2月1日”は陰暦上の1400年以上で1450年未満に存在すると判断されると、その先頭の陰暦基準日1400年1月1日に対応する第1の陰暦基準全日数“29118”が前記陰暦基準全日数レジスタ41eから読出され、前記指定日全日数X“34306”との差が「34306−29118=5188」として求められる(ステップA5,A6)。
【0062】
つまり、このステップA6では、西暦指定日“1994年2月1日”に対応する全日数X“34306”が示すところの陰暦上の年月日が、第1の陰暦基準日“1400年1月1日”以降の何日目に存在するか求められるもので、この指定日全日数X“34306”に対応させた第1の陰暦基準日“1400年1月1日”からの日数データ“5188”は、ワークRAM25内の日数レジスタ41fに記憶される。
【0063】
すると、ワークRAM25内の陰暦テーブル年ポインタ41hには、太陰暦テーブル(図4参照)上の第1の陰暦基準年度1400年を示すアドレスポインタがセットされる(ステップA7)。
【0064】
一方、前記ステップA4において「NO」、つまり、西暦指定日に対応する全日数Xは第2の陰暦基準全日数“46838”以上なので、西暦指定日は陰暦上の1450年以上に存在すると判断されると、その先頭の陰暦基準日1450年1月1日に対応する第2の陰暦基準全日数“46838”が陰暦基準全日数レジスタ41eから読出され、前記指定日全日数Xとの差が「X−46838」として求められる(ステップA8,A9)。
【0065】
つまり、このステップA9では、西暦指定日に対応する全日数Xが示すところの陰暦上の年月日が、第2の陰暦基準日“1450年1月1日”以降の何日目に存在するか求められるもので、この指定日全日数Xに対応させた第2の陰暦基準日“1450年1月1日”からの日数データ“X−46838”は、ワークRAM25内の日数レジスタ41fに記憶され、陰暦テーブル年ポインタ41hには、太陰暦テーブル(図4参照)上の第2の陰暦基準年度1450年を示すアドレスポインタがセットされる(ステップA10)。
【0066】
一方、前記ステップA2において「YES」、つまり、西暦指定日に対応する全日数Xは第1の陰暦基準全日数“29118”未満なので、西暦指定日は陰暦上の1400年未満に存在すると判断されると、陰暦1318年9月10日に対応する全日数、つまり、表示可能最小日に対応する全日数“307”が、ROM22内の西暦全日数最小値データ31bから読出され、前記指定日全日数Xとの差が「X−307」として求められる(ステップA11,A12)。
【0067】
つまり、このステップA12では、西暦指定日に対応する全日数Xが示すところの陰暦上の年月日が、表示可能陰暦最小日“1318年9月10日”以降の何日目に存在するか求められるもので、この指定日全日数Xに対応させた表示可能陰暦最小日“1318年9月10日”からの日数データ“X−307”は、ワークRAM25内の日数レジスタ41fに記憶され、陰暦テーブル年ポインタ41hには、太陰暦テーブル(図4参照)上の表示可能陰暦最小年度1318年を示すアドレスポインタがセットされる(ステップA13)。
【0068】
このように、前記図7における陰暦テーブルの基準年ポインタセット処理(ステップA1〜A7)に従って、西暦指定日“1994年2月1日”に対応する全日数X“34306”が存在するところの陰暦テーブル上の先頭年度“1400年”を示すアドレスポインタが、陰暦テーブル年ポインタ41hにセットされると、前記西暦指定日“1994年2月1日”に対応する太陰暦の年月日取得処理に移行する(ステップSB)。
【0069】
図8は前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦年月日の取得処理を示すフローチャートである。
すなわち、まず、現在の陰暦テーブル年ポインタ41hにて示される陰暦年度“1400年”に対応する1年分の日数が、前記太陰暦テーブル(図4参照)における該当年各月毎の日数データ“1,0,1,0,1,0,0,1,0,1,1,0”に基づき“29×6+30×6=354日”として算出される(ステップB1)。
【0070】
すると、前記ステップA6において日数レジスタ41fに記憶された、指定日全日数X“34306”に対応する陰暦年月日までの“1400年1月1日”以降の日数データ“5188”から、前記ステップB1にて算出された陰暦テーブル年ポインタ41hが示す陰暦年度“1400年”の1年分の日数データ“354日”が「5188−354=4834」として減算処理されるもので、この減算結果である、西暦指定日に対応する陰暦年月日までの陰暦年度“1401年”以降の日数データ“4834”は、前記日数レジスタ41fに書換えられて記憶される(ステップB2)。
【0071】
そして、前記日数レジスタ41fに記憶された日数データ“4834”が“負”であるか否か判断されるもので、この場合、日数データ“4834”は“正”なので、前記陰暦テーブル年ポインタ41hが(+1)更新され、陰暦テーブル上の1401年が指示される(ステップB3→B4)。
【0072】
この後、前記ステップB1〜B4の処理が繰返し実行され、前記日数レジスタ41fに記憶された日数データ“4834”から、前記陰暦テーブル年ポインタ41hが示す陰暦1401年以降それぞれの年度の1年分の日数データが順次減算されるもので、後のステップB4において、陰暦テーブル年ポインタ41hが(+1)されて陰暦テーブル上の1414年が指示された際に、ステップB1,B2において、そのとき日数レジスタ41fに記憶されている西暦指定日に対応する陰暦年月日までの陰暦1414年以降の日数データ“228”から、当該陰暦1414年の1年分の日数データ“355日”が減算されると、「228−355=−127」として新たに日数レジスタ41fに記憶され、ステップB3において、減算結果“負”と判断される。
【0073】
すると、前記日数レジスタ41fに記憶された日数データ“−127”に、その直前に減算した陰暦1414年の1年分の日数データ“355日”が「−127+355=228」として加算処理され、西暦指定日に対応する陰暦年月日が陰暦1414年の228日目として求められ、日数レジスタ41fに記憶される(ステップB3→B5)。
【0074】
次に、前記ステップB5において日数レジスタ41fに記憶された、西暦指定日に対応する陰暦年月日を示す陰暦1414年の日数データ“228”から、陰暦テーブル年ポインタ41hが示す陰暦“1414年”における各月毎の日数が、陰暦テーブル上の1414年の各月の日付データに従って減算処理されるもので、まず、陰暦1414年1月の日付データ“1”に従って、前記陰暦年月日を示す日数データ“228”が「228−30=198」として減算処理されると、この減算結果である、陰暦1414年2月から西暦指定日に対応する陰暦年月日までの日数データ“198”は、前記日数レジスタ41fに書換えられて記憶される(ステップB6)。
【0075】
そして、前記日数レジスタ41fに記憶された日数データ“198”が“負”であるか否か判断されるもので、この場合、日数データ“198”は“正”なので、陰暦テーブル月カウンタ41iが“1”から“2”にカウントアップされ、陰暦テーブル上の1414年2月が指示される(ステップB7→B8)。
【0076】
この後、前記ステップB6〜B8の処理が繰返し実行され、前記日数レジスタ41fに記憶された日数データ“198”から、前記陰暦テーブル月カウンタ41iが示す陰暦1414年2月以降それぞれの月毎の日数データが順次減算されるもので、後のステップB8において、陰暦テーブル月カウンタ41iが(+1)されて陰暦テーブル上の1414年8月が指示された際に、ステップB6において、そのとき日数レジスタ41fに記憶されている西暦指定日に対応する陰暦年月日までの陰暦1414年8月1日以降の日数データ“21”から、当該陰暦1414年8月分の日数データ“29日”が減算されると、「21−29=−8」として新たに日数レジスタ41fに記憶され、ステップB8において、減算結果“負”と判断される。
【0077】
すると、前記日数レジスタ41fに記憶された日数データ“−8”に、その直前に減算した陰暦1414年8月分の日数データ“29日”が「−8+29=21」として加算処理され、西暦指定日に対応する陰暦年月日が陰暦1414年8月の21日目として求められ、日数レジスタ41fに記憶される(ステップB7→B9)。
【0078】
これにより、前記陰暦テーブル年ポインタ41hが示す陰暦年度“1414年”、及び前記陰暦テーブル月カウンタ41iが示す陰暦月“8”、及び前記日数レジスタ41fに記憶された日数データ“21”が、それぞれ陰暦年月日レジスタ41gにセットされ、西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日として“1414年8月21日”が得られるようになる(ステップB10〜B12)。
【0079】
一方、前記西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日“1414年8月21日”の曜日データは、前記指定日全日数X“34306”に基づき、ROM22に予め記憶された曜日計算式31e[式(3)]により算出されるもので、つまり、前記指定日全日数X“34306”を前記式(3)に代入すると、
(34306+3)÷7=4901…余り2
となるので、該余り“2”(火曜)が曜日データとして前記陰暦年月日レジスタ41gにセットされ、前記西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日“1414年8月21日(火)”が得られるようになる。
【0080】
なお、前記図7における太陰暦テーブルの年ポインタセット処理において、そのステップA1,A2→A11〜A13の処理を経て、指定日全日数Xに対応する陰暦年月日が第1の陰暦基準日“1400年1月1日”未満に存在すると判断されることで、表示可能な陰暦最小日“1318年9月10日”から前記指定日全日数Xに対応する陰暦年月日までの日数データが日数レジスタ41fに記憶されると共に、陰暦テーブル年ポインタ41hに対し、陰暦1318年を示すアドレスポインタがセットされた場合には、前記図8における太陰暦年月日取得処理のステップB1,B2において前記日数データから減算される1年分の日数は、前記年ポインタ41hが陰暦1318年を示している第1回目の処理に限り、前記表示可能陰暦最小日“1318年9月10日”以降同年12月末までの日数として設定される。
【0081】
つまり、前記太陰暦テーブル(図4参照)の1318年9月〜12月までの日付データ“1,0,1,0”に基づき、その合計日数“118日”が算出され、これから9月の“10日”分が減算されることで、前記日数データから減算すべき1318年度分の日数“108日”が得られる。
【0082】
よって、陰暦テーブル年ポインタ41hに対し、陰暦1318年を示すアドレスポインタがセットされた場合には、ステップB1,B2における第1回目の日数データ減算処理でのみ、日数レジスタ41fに記憶された日数データからは前記“108日”が減算され、次年度以降は、順次1年分の日数が減算されるようになる。
【0083】
また、前記図8における太陰暦年月日取得処理のステップB6において、陰暦テーブル年ポインタ41hが陰暦1318年にセットされいる場合には、陰暦テーブル月カウンタ41iの初期値は“9月”となり、日数レジスタ41fに記憶された日数データからの第1回目の月日数減算処理でのみ、前記“1318年9月10日”以降の当月残日数“21日”が減算される。
【0084】
こうして、前記図8における太陰暦年月日の取得処理に従って、西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日“1414年8月21日(火)”が、ワークRAM25内の陰暦年月日レジスタ41gに得られると、該陰暦年月日“1414年8月21日”の属する月の1日、つまり“陰暦1414年8月1日”の曜日データが、当該“1414年8月1日”の全日数“34286”「=X−20」に基づき、ROM22に予め記憶された曜日計算式31e[式(3)]により算出される(ステップS5)。
【0085】
つまり、前記“陰暦1414年8月1日”の全日数“34286”を前記式(3)に代入すると、
(34286+3)÷7=4898…余り3
となるので、該余り“3”(水曜)が陰暦カレンダの1日の曜日データとしてワークRAM25内の1日曜日レジスタ42aにセットされる。
【0086】
また、前記陰暦年月日“1414年8月21日”の属する月、つまり“陰暦1414年8月”の日付日数が、前記太陰暦テーブルに記憶された対応する日付データ“0”に基づき“29日”として取得され、ワークRAM25内の最終日付レジスタ42bにセットされる(ステップS6)。
【0087】
こうして、前記西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日“1414年8月21日(火)”が陰暦年月日レジスタ41gに得られると共に、該当月の1日の曜日データ“3”(水曜)及び日付日数“29日”が、それぞれ1日曜日レジスタ42a及び最終日付レジスタ32bに得られると、太陰暦カレンダの表示処理に移行する(ステップSC)。
【0088】
図9は前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦カレンダの表示処理を示すフローチャートである。
図10は前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦カレンダの表示状態を示す図である。
【0089】
すなわち、まず、表示RAM26がクリアされると、ワークRAM25内の1日曜日レジスタ42aに記憶された表示すべき陰暦カレンダ“1414年8月”の1日の曜日データ“3”(水曜)に基づき、対応する日付“1”を表示データとして表示すべき、表示RAM26に対するカレンダ表示領域の桁行位置が、表示行レジスタ42d及び表示桁レジスタ42eのそれぞれに対して初期設定される(ステップC1,C2)。
【0090】
この場合、水曜日の桁に対応する第1週行目が初期の桁行位置として設定される。
そして、ワークRAM25内の表示データレジスタ42cに対して、第1日目として表示すべき日付“1”が初期設定される(ステップC3)。
【0091】
すると、前記ステップC2において表示行及び桁レジスタ42d,42eに初期設定された桁行位置に対応して、前記表示データレジスタ42cに初期設定された日付“1”が、表示RAM26に書込まれて液晶表示部13に表示されるもので、この際、前記表示桁レジスタ42eにセットされている桁位置に基づき1週間分の表示が終了したか否か判断される(ステップC4,C5)。
【0092】
この場合、前記表示桁レジスタ42eで示される桁位置は水曜日の位置にあるので、1週間分の表示は終了してないと判断され、前記表示データレジスタ42cに記憶される日付が(+1)されて“2”に更新される(ステップC5→C6)。
【0093】
そして、前記表示桁レジスタ42eで示される桁位置が木曜日の位置に更新される(ステップC7)。
ここで、前記表示データレジスタ42cに記憶された次に表示すべき日付“2”と、前記最終日付レジスタ42bに記憶された“陰暦1414年8月”の最終日付日数“29”とが比較され、1カ月分のカレンダ表示が終了したか否か判断される(ステップC8)。
【0094】
この場合、前記表示データレジスタ42cに記憶された次に表示すべき日付は“2”であり、表示月“陰暦1414年8月”の最終日付日数“29”を越えてないので、1カ月分のカレンダ表示は終了してないと判断され、前記表示行及び桁レジスタ42d,42eに設定された桁行位置(この場合、木曜日の桁に対応する第1週行目)に対応して、前記日付“2”が表示RAM26に書込まれて液晶表示部13に表示される(ステップC8→C4)。
【0095】
この後、前記ステップC4〜C8の処理が繰返し実行されることで、表示桁レジスタ42eで示される曜日桁が更新されると共に、表示データレジスタ42cに記憶される次に表示すべき日付が更新され、金曜日の桁位置に対応する第1週行目に日付“3”、土曜日の桁位置に対応する第1週行目に日付“4”と、順次表示RAM26に書込まれて液晶表示部13に表示されるもので、ここで、前記表示桁レジスタ42eで示される桁位置が土曜日にあり、1週間分の表示終了と判断されると、前記表示行レジスタ42dで示される行位置が第2週行目に更新される(ステップC5→C9)。
【0096】
これにより、“陰暦1414年8月”のカレンダが、前記表示行及び桁レジスタ42d,42eで示されるカレンダ表示領域上の桁行位置に従って、各日付毎に表示RAM26に書込まれ順次生成表示されるもので、この後、ステップC4において、水曜日の桁に対応する第5週行目に日付“29”が表示された際に、ステップC6において、表示データレジスタ42cに記憶された日付が“30”に更新されると、次に表示すべき日付“30”が当月の最終日付日数“29”を越えるので、ステップC8において、1カ月分のカレンダ表示は終了したと判断される。
【0097】
これにより、前記西暦指定年月日“1994年2月1日(火)”に対応する陰暦年月日“1414年8月21(火)”が変換表示されると共に、該陰暦年月日“1414年8月21(火)”の属する1カ月の陰暦カレンダが表示されようになる。
【0098】
一方、前記太陰暦カレンダの実際の運用に関しては、月が出たらその月の始まりにする等、月の運行を肉眼で確認して行なわれるもので、原則として30日と29日とから定められる各月毎の日数は、イスラムの指導者等によって変更されることがある。
【0099】
ここで、前記陰暦月の日数が変更された場合の前記太陰暦テーブル(図4参照)の訂正処理について説明する。
すなわち、キー入力部12における「訂正」キー19を操作すると、太陰暦RAM24に記憶されている太陰暦テーブルが表示RAM26に書込まれて液晶表示部13に表示される。
【0100】
ここで、カーソルキー15の操作により、日数変更の必要な陰暦年度の該当月をカーソル指示すると共に、テンキー16の“0”又は“1”を操作して、その日付データを書換え、再び前記「訂正」キー19を操作すると、この日付データの書換えられた太陰暦テーブルが、前記太陰暦RAM24に対し新たに記憶されるようになる。
【0101】
これにより、任意の陰暦月の日付日数の訂正が行なえるもので、この場合、訂正された陰暦月の日付日数に応じて、前記陰暦変換用ワークRAM25a内の陰暦基準全日数レジスタ41eで管理される第1の陰暦基準日“1400年1月1日”に対応する全日数や第2の陰暦基準日“1450年1月1日”に対応する全日数が訂正される。
【0102】
すなわち、前記太陰暦テーブルの訂正処理において、例えば陰暦1400年1月未満に存在するある月の日付日数が訂正された場合には、その訂正日数(+1)又は(−1)に応じて、前記第1及び第2の陰暦基準日に対応する各全日数が、共に(+1)又は(−1)されて訂正され、また、例えば陰暦1400年1月以降1450年1月未満に存在するある月の日付日数が訂正された場合には、前記第2の陰暦基準日に対応する全日数のみが(+1)又は(−1)されて訂正される。
【0103】
これにより、前記太陰暦テーブル上の日付日数に変更訂正があっても、前記図6における西暦/陰暦の変換表示処理は正確に実行される。
したがって、前記構成のカレンダ表示装置によれば、カーソルキー15や「月/日」キー17あるいは現西暦年月日レジスタ41bで管理される年月日データに応じて、液晶表示部13上で表示される太陽暦上の年月日が指定され「変換」キー18が操作されると、ROM22に記憶された西暦全日数最小値データ31b及び西暦全日数最大値データ31cに基づき、前記西暦指定年月日までの全日数Xが指定日全日数計算式31dに従って算出され、この算出された西暦指定日までの全日数X及び陰暦基準全日数レジスタ41eで前記西暦基準日に基づき管理される第1及び第2の陰暦基準日に対応する全日数及び太陰暦RAM24に記憶された陰暦上の年及び各月毎の日付日数を示すテーブルデータに基づき、前記西暦指定日が対応する陰暦年月日に変換され液晶表示部13に表示されるので、前記西暦及び陰暦に対応付けた全日数の演算処理により、太陽暦の指定年月日を太陰暦の年月日に容易に変換して表示できるようになる。
【0104】
また、太陰暦RAM24に記憶された太陰暦テーブル上の任意の年月に対応する日付日数は、「訂正」キー19やカーソルキー15,テンキー16の組合せ操作により必要に応じて訂正されるので、イスラム教の指導等による陰暦日数の変更に応じて、容易に日付訂正ができるようになる。
【0105】
さらに、陰暦基準全日数レジスタ41eで西暦基準日に基づき管理される陰暦基準日の全日数は、太陰暦RAM24に記憶される太陰暦テーブル上でサウジ公式カレンダに応じて複数設定される第1及び第2の陰暦基準日のそれぞれに対応して記憶されるので、西暦/陰暦変換処理による日数データの演算処理に際しては、西暦指定日までの全日数に最も近い陰暦基準日に対応する全日数を活用して、高速に陰暦年月日への変換処理ができるようになる。
【0106】
そして、前記「訂正」キー19やカーソルキー15,テンキー16の組合せ操作により、太陰暦RAM24に記憶された太陰暦テーブルの任意の年月に対応する日付日数が訂正された際には、前記陰暦基準全日数レジスタ41eで管理される各陰暦基準日に対応する全日数も前記訂正日数に応じて書換え訂正されるので、イスラム教の指導等による陰暦日数の変更があっても、将来に渡り正確な陰暦年月日への変換表示処理が実行できるようになる。
【0107】
【発明の効果】
以上のように、本発明の第1のカレンダ表示装置によれば、年月日指定手段により太陽暦上の任意の年月日が指定されると、所定の基準日から該指定年月日までの日数データが指定日日数データとして指定日日数演算手段により算出され、この算出された指定日日数データと陰暦基準日記憶手段に記憶された所定の基準日から陰暦上の特定年月日までの陰暦基準日日数データとの差の日数データが陰暦指定日日数データとして陰暦指定日日数演算手段により算出され、前記太陰暦上の特定の年月日に対して、この陰暦指定日日数演算手段により算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日が、前記太陰暦情報記憶手段に記憶された太陰暦の各年における各月毎の日付日数を用いて算出されることによって、前記指定された太陽暦上の年月日が対応する太陰暦の年月日に変換され、表示されることとなる。従って、所定の基準日から太陰暦上の特定の年月日までの日数データである陰暦基準日日数データを用いて、この陰暦基準日日数データと指定日日数データとの差の日数データが算出され、この差の日数分だけ前記太陰暦上の特定の年月日から変化させた陰暦の年月日が算出されることにより、高速に陰暦年月日への変換処理が行なえるようになる。
【0108】
また、本発明の第2のカレンダ表示装置によれば、第1のカレンダ表示装置にあって、前記陰暦基準日記憶手段に記憶される陰暦基準日日数データは、前記太陰暦情報記憶手段に記憶される太陰暦の複数の年の中で複数設定される特定年月日のそれぞれに対応して記憶され、前記特定年月日のそれぞれに対応して記憶された各陰暦基準日日数データのうち、前記指定日日数演算手段により算出された指定日日数データに近い陰暦基準日日数データが陰暦基準設定手段により利用対象に設定され、前記指定日日数演算手段により算出された指定日数データと、この陰暦基準設定手段により利用対象に設定された陰暦基準日日数データとの差の日数データが前記陰暦指定日日数演算手段により陰暦指定日日数データとして算出され、前記陰暦基準設定手段により利用対象に設定された陰暦基準日日数データに対応する太陰暦上の特定の年月日に対して、この算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日が算出される。従って、指定日日数演算手段により算出された指定日日数データに最も近い陰暦基準日日数データを活用して、高速に陰暦年月日への変換処理が行なえるようになる。
【0109】
また、本発明の第3のカレンダ表示装置によれば、前記第1又は第2のカレンダ表示装置にあって、計時された現在時刻により随時更新される現在の年月日に対応する太陽暦上の年月日が指定されるので、現在の太陽暦上の当日年月日に対応する陰暦年月日が容易に変換表示されるようになる。
【0110】
また、本発明の第4のカレンダ表示装置によれば、前記第1又は第2のカレンダ表示装置にあって、その年月日指定手段により指定される太陽暦上の年月日は、キー入力手段により指定されるので、太陽暦上の現在,過去,未来それぞれ所望の年月日に対応する陰暦年月日が容易に変換表示されるようになる。
【0111】
また、本発明の第5のカレンダ表示装置によれば、前記第1から第5何れかのカレンダ表示装置にあって、その陰暦表示手段により表示される太陰暦の年月日は、該陰暦年月日が属する月の太陰暦カレンダとして表示されるようになる。
【0112】
また、本発明の第6のカレンダ表示装置によれば、前記第1から第5何れかのカレンダ表示装置にあって、その太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数は、陰暦月日数訂正手段により必要に応じて訂正されるので、イスラム教の指導等による陰暦日数の変更に応じて、容易に日付訂正が行なえるようになる。
【0113】
また、本発明の第7のカレンダ表示装置によれば、前記第6のカレンダ表示装置にあって、陰暦月日数訂正手段により太陰暦情報記憶手段に記憶された太陰暦の任意の年月に対応する日付日数が訂正された際には、陰暦基準日数書換え手段により、陰暦基準日記憶手段に記憶される太陰暦上の特定の年月日に対応する日数データが前記訂正日数に応じて書換えられるので、イスラム教の指導等による陰暦日数の変更があっても、将来に渡り正確な陰暦年月日への変換表示処理が行なえることになる。
【図面の簡単な説明】
【図1】本発明の一実施例に係わるカレンダ表示装置の外観構成を示す正面図。
【図2】前記カレンダ表示装置の電子回路の構成を示すブロック図。
【図3】前記カレンダ表示装置のROMにおける固定データの記憶状態を示す図。
【図4】前記カレンダ表示装置の太陰暦RAMにおける太陰暦テーブルの記憶状態を示す図。
【図5】前記カレンダ表示装置のワークRAMにおける各種ワークレジスタの構成を示す図であり、同図(A)は陰暦変換用ワークRAMのレジスタ構成を示す図、同図(B)はカレンダ表示用ワークRAMのレジスタ構成を示す図。
【図6】前記カレンダ表示装置による西暦/陰暦変換表示処理を示すフローチャート。
【図7】前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう陰暦テーブルの基準年ポインタセット処理を示すフローチャート。
【図8】前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦年月日の取得処理を示すフローチャート。
【図9】前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦カレンダの表示処理を示すフローチャート。
【図10】前記カレンダ表示装置の西暦/陰暦変換表示処理に伴なう太陰暦カレンダの表示状態を示す図。
【符号の説明】
11…装置本体、12…キー入力部、13…液晶表示部、14a,14b…ON/OFFキー、15…カーソルキー、16…テンキー、17…「月/日」キー、18…「変換」キー、19…「訂正」キー、21…制御部、22…ROM、23…計時回路、24…太陰暦RAM、25…ワークRAM、25a…陰暦変換用ワークRAM、25b…カレンダ表示用ワークRAM、26…表示RAM、31a…西暦カレンダ日数テーブル、31b…西暦全日数最小値データ、31c…西暦全日数最大値データ、31d…指定日全日数計算式、31e…曜日計算式、31f…曜日データ、41a…計時レジスタ、41b…現西暦年月日レジスタ、41c…指定年月日レジスタ、41d…指定日全日数レジスタ、41e…陰暦基準全日数レジスタ、41f…日数レジスタ、41g…陰暦年月日レジスタ、41h…陰暦テーブル年ポインタ、41i…陰暦テーブル月カウンタ、42a…1日曜日レジスタ、42b…最終日付レジスタ、42c…表示データレジスタ、42d…表示行レジスタ、42e…表示桁レジスタ。[0001]
[Industrial application fields]
The present invention relates to a calendar display device that displays a calendar of a lunar calendar.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, electronic devices such as clocks and computers that perform calendar display on their display screens have been widely put into practical use.
In an electronic apparatus having such a calendar display function, since the calendar is generally displayed corresponding to the solar calendar (Western calendar), the year is 365 days, and the number of days is 31 and 30. In a four-year cycle, one year is 366 days, and February is 29 days.
[0003]
On the other hand, as a calendar actually used on the earth, for example, a lunar calendar used as a religious calendar in the Arab countries is used.
This lunar calendar is a year with 12 months, and the number of months is determined by the operation of the moon. The odd month is 30 days, the even month is 29 days, and the year is 354 days, with a cycle of 30 years. According to the principle, leap years are added to the second, fifth, seventh, tenth, thirteenth, sixteenth, sixteenth, twenty-eighth, twenty-fourth, twenty-sixth and twenty-sixth years, and one day is added to 355 days.
[0004]
[Problems to be solved by the invention]
Here, especially in the Arab countries, even if you live in the Western calendar, for example, the day in the Christian calendar corresponds to the year, month, or calendar date of the lunar calendar. You need to know what to do.
[0005]
However, in the conventional electronic device that displays the calendar of the solar calendar, the date on the solar calendar cannot be converted and displayed on the lunar calendar.
The present invention has been made in view of the above problems, and provides a calendar display device capable of displaying the date on the lunar calendar (the lunar calendar) corresponding to the date on the solar calendar (the western calendar). Objective.
[0006]
[Means for Solving the Problems]
That is, the first calendar display device according to the present invention is:Year / month / day designation means for designating an arbitrary date on the solar calendar, and designated day / day calculation means for calculating the number of days from the predetermined reference date to the specified date on the solar calendar as the designated day / day data And a calendar date reference storage means for storing date data from the predetermined reference date to a specific date on the lunar calendar as lunar calendar date data, and a date date for each month in each year of the lunar calendar Lunar calendar information storage means, and the number of days data of the difference between the specified day / day data calculated by the specified day / day calculation means and the lunar calendar reference day / day data stored by the lunar calendar reference day storage means is calculated as the date specified by the lunar calendar The lunar calendar designated days / days calculation means, and the lunar calendar changed by the number of days of the lunar calendar designated days / days data calculated by the lunar calendar specified days / days calculation means for the specific date on the lunar calendar The date of the lunar calendar corresponding to the designated date on the solar calendar is calculated by calculating the date of each lunar calendar in the lunar calendar stored in the lunar calendar information storage means. Western calendar / yen calendar conversion means for converting the day, and an lunar calendar displaying the date of the lunar calendar obtained by the Western calendar / yen calendar conversion means.And a display means.
[0007]
The second calendar display device according to the present invention is:In the first calendar display device, the lunar calendar reference day / day data stored in the lunar calendar reference date storage means is specified in a plurality of the lunar calendar years stored in the lunar calendar information storage means. Stored in correspondence with each of the specific dates, out of each implicit calendar reference date data stored in correspondence with each of the specific dates, to the specified date data calculated by the specified date calculation means It includes an lunar calendar standard setting means for setting the nearest lunar calendar reference day data to be used, and the lunar calendar specified day number computing means includes the designated day data calculated by the designated day number computing means, and the lunar calendar reference setting means. Calculates the date data of the difference from the lunar calendar reference day data set as the object of utilization as the lunar calendar specified day / day data, and the Western calendar / hiden calendar conversion means is used by the lunar calendar standard setting means For a particular date on the lunar corresponding to lunar date days data set in the elephant, as to calculate the date of the lunar calendar that is changed by the number of days the calculated lunar designated date days data wereIt is composed.
[0008]
The third calendar display device according to the present invention is:In the first or second calendar display device, the year / month / day designating means indicates a date in the solar calendar corresponding to the current date / time updated at any time according to the current time measured by the time measuring means. Configured as specifiedIs.
[0009]
The fourth calendar display device according to the present invention is:In the first or second calendar display device, the year / month / day designation means designates a date on the solar calendar by a key input means.It is configured as a thing.
[0010]
The fifth calendar display device according to the present invention is:In the first to fourth calendar display devices, the lunar calendar display means displays the lunar calendar of the month to which the lunar calendar date obtained by the Western / Yellow calendar conversion means belongs.It is configured as a thing.
[0011]
The sixth calendar display device according to the present invention is:In the first to fifth calendar display devices, there is provided a calendar month / day correction means for correcting the date / number corresponding to an arbitrary year / month of the lunar calendar stored in the lunar calendar information storage means.It is composed.
[0012]
A seventh calendar display device according to the present invention isIn the sixth calendar display device, when the date days corresponding to an arbitrary year and month of the lunar calendar stored in the lunar calendar information storage means is corrected by the lunar calendar date correction means, according to the correction days And rewriting the date data corresponding to a specific date on the lunar calendar stored in the lunar calendar reference date storage meansIt is comprised and is comprised.
[0015]
[Action]
That is, in the first calendar display device,When an arbitrary date on the solar calendar is specified by the year / month / day specifying means, the date data from the predetermined reference date to the specified date is calculated as the specified day / day data by the specified day / day calculating means. The date data of the difference between the calculated specified date data and the specified date stored in the lunar calendar date storage means to the lunar date standard date from the specified date on the lunar calendar is the lunar calendar date data The date of the lunar calendar, which is calculated by the specified number of days calculation means, and is changed by the number of days of the date specified by the lunar calendar for the specific date on the lunar calendar, is calculated by the date specified by the lunar calendar. The date of the specified solar calendar is converted to the date of the corresponding lunar calendar by being calculated using the number of dates per month in each year of the lunar calendar stored in the lunar calendar information storage means. Is And it is displayed. Therefore, by using the lunar calendar reference day data that is the number of days from the predetermined standard date to a specific date on the lunar calendar, the day data of the difference between the lunar calendar standard day data and the specified day data is calculated. By calculating the date of the lunar calendar changed from the specific date on the lunar calendar by the number of days corresponding to this difference, the conversion process to the lunar calendar date can be performed at high speed.
[0016]
In the second calendar display device,In the first calendar display device, the lunar calendar reference day / day data stored in the lunar calendar reference date storage means is a specific year set in plural among a plurality of lunar calendar years stored in the lunar calendar information storage means It is stored corresponding to each of the month and day, and is close to the specified day / day data calculated by the specified day / day calculating means out of each lunar calendar day / day data stored corresponding to each of the specific date The lunar calendar standard days data is set as a usage target by the lunar calendar standard setting means, the designated days data calculated by the designated days and days calculation means, and the lunar calendar reference days data set as a usage target by the lunar calendar standard setting means, The date of the lunar calendar is calculated as the date specified by the lunar calendar by the lunar calendar specified date calculation means, and the lunar calendar standard date set as the object of use by the lunar calendar standard setting means For a particular date on the lunar corresponding to the data, date lunar which only varied number of days this calculated lunar designated date days data were are calculated. Therefore, it is possible to perform the conversion process to the lunar calendar date at high speed by using the lunar calendar reference day / date data closest to the designated date / day data calculated by the designated day / day calculating means.
[0017]
In the third calendar display device,In the first or second calendar display device, the date in the solar calendar designated by the date designation means is the current date updated at any time according to the current time measured by the time measuring means. Since the date in the solar calendar corresponding to is specified, the lunar date corresponding to the current date in the current solar calendar is easily converted and displayed.
[0018]
In the fourth calendar display device,In the first or second calendar display device, the date on the solar calendar designated by the date designation means is designated by the key input means. The lunar calendar date corresponding to the desired date is easily converted and displayed.
[0019]
In the fifth calendar display device,In any one of the first to fifth calendar display devices, the date of the lunar calendar displayed by the lunar calendar display means is displayed as the lunar calendar of the month to which the lunar calendar date belongs.
[0020]
In the sixth calendar display device,In any one of the first to fifth calendar display devices, the date number corresponding to an arbitrary year and month of the lunar calendar stored in the lunar calendar information storage means is corrected as necessary by the lunar calendar month / day correction means. Therefore, the date correction can be easily performed according to the change of the lunar calendar days by the guidance of Islam.
[0021]
In the seventh calendar display device,In the sixth calendar display device, when the date number corresponding to an arbitrary year and month of the lunar calendar stored in the lunar calendar information storage unit is corrected by the lunar calendar date correction unit, the lunar calendar reference day rewriting unit Since the date data corresponding to a specific date on the lunar calendar stored in the lunar calendar reference date storage means is rewritten according to the correction days, even if there is a change in the lunar calendar days due to Islamic guidance, etc. Thus, it is possible to perform conversion display processing to an accurate lunar calendar date.
[0024]
【Example】
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a front view showing an external configuration of a calendar display device.
A key input unit 12 and a liquid
[0025]
In addition to the ON / OFF keys 14a and 14b for turning on / off the power, the key input unit 12 is input with cursor keys 15 and numeric data that are operated when selecting data by moving the cursor on the display screen. Numeric keypad 16 operated at the time, “month / day” key 17 operated when designating an arbitrary date, “conversion” operated when converting the solar calendar (Western calendar) and the lunar calendar (implicit calendar) A key 18, a “correction” key 19 that is operated when correcting the date of the lunar calendar, and the like are provided.
[0026]
The liquid
[0027]
When the "conversion" key 18 is operated, the year, month and date displayed on the liquid
[0028]
FIG. 2 is a block diagram showing a configuration of an electronic circuit of the calendar display device.
The calendar display device includes a
[0029]
The
[0030]
FIG. 3 is a diagram showing a storage state of fixed data in the
The
[0031]
The calendar calendar days table 31a stores the date days (30 or 31 or 28 or 29) of each month from 1901 to 2099 that can be displayed on the calendar display device, and the day of the week data ( 0: Sunday to 6: Saturday) is stored.
[0032]
As the above-mentioned all-days minimum date data 31b, for example, the total number of days up to the minimum date of calendar year January 1, 1901 that can be displayed on the calendar, with March 1, 1900 as the reference date "1". Is memorized.
[0033]
As the
[0034]
The specified day total number of days calculation formula 31d is calculated from the Western calendar reference date (March 1, 1900) up to the Christian calendar year specified in response to the operation of the "month / day" key 17 or the cursor key 15. The total number of days X is calculated by the following formula (1) when b ≧ 3, where a is the year of the year specified, and b is the day. In addition, when b <3, the following formula (2) is calculated.
[0035]
Here, [] cut means rounding down after the decimal point, and [] 5/4 means rounding off.
[0036]
The day of the week calculation formula 31e is a calculation formula for calculating the corresponding day of the week according to the total number of days X from the Western calendar date (March 1, 1900), and the remainder of the calculation result by the following formula (3) The value is obtained as day data (0: Sunday to 6: Saturday).
[0037]
(Total days + 3) ÷ 7 ... Formula (3)
That is, for example, when the remainder value of the calculation result according to the equation (3) is “0”, it is “Sunday”, and when it is “6”, it is “Saturday”.
[0038]
The day-of-week data 31f is stored in association with each other as 0: Sunday, 1: Monday, 2: Tuesday, 3: Wednesday, 4: Thursday, 5: Friday, 6: Saturday.
[0039]
FIG. 4 is a diagram showing the storage state of the lunar calendar table in the
The lunar calendar table includes a calendar range corresponding to the calendar displayable January 1st 1901 (total number of days 307) to December 31, 2099 (total number of days 72991), September 10th to 1324, 1318. Date data for each month from January 1318 to December 1525 covering “January 6” (“0” 29 or “1” 30) is stored in this lunar calendar table. As a general rule, the range from January to December 1450 is the number of days in each month as the Saudi official calendar.
[0040]
FIG. 5 is a diagram showing the configuration of various work registers in the
[0041]
5A includes a time register 41a, a current year / month / day register 41b, a specified date / month / day register 41c, a specified date / total number of days register 41d, a lunar calendar reference total number of days register 41e, and a number of days register. 41f, an lunar
[0042]
The time register 41a stores current time data sequentially updated by the
The current year / month / day register 41b stores the current year / month / day and the day of the week data that are sequentially updated by the
[0043]
The designated date / month register 41c stores the designated date / year in the year designated by the user in response to the operation of the “month / day” key 17 or the cursor key 15.
In the designated day total number of days register 41d, the total number of days X calculated by the formula (1) or the formula (2) corresponding to the year / month / day designated date stored in the designated date / year / date register 41c is stored. Remembered.
[0044]
In the lunar calendar total number of days register 41e, the first lunar calendar date of the first year corresponding to the Saudi official calendar of the lunar calendar table (see FIG. 4) is January 1, 1400 (November 20, 1979). The total day data “29118” based on the 1st March 1900 of the Western calendar date is stored as the first all-calendar standard day, and corresponds to the Saudi official calendar. The total date data “46838” of the initial lunar calendar date January 1, 1450 (corresponding to May 26, 2028) is stored as the second lunar calendar reference total number of days.
[0045]
In the day /
[0046]
The lunar
The lunar calendar table year pointer 41h stores a pointer indicating the year on the lunar calendar table (see FIG. 4) in the conversion process of the Western calendar / Yin calendar.
[0047]
In the lunar calendar month counter 41i, count data indicating the number of months on the lunar calendar table (see FIG. 4) is stored in the conversion process of the Western calendar / imperial calendar.
The calendar display work RAM 25b shown in FIG. 5B includes a 1 Sunday register 42a, a last date register 42b, a display data register 42c, a
[0048]
In the calendar display process for one month to which the date to be displayed belongs, the one-day-day register 42a stores the day-of-week data of the corresponding month, and in the case of the Western calendar display, the calendar calendar days table in the
[0049]
The last date register 42b stores the last date data of the month at the time of calendar display processing for the month to which the date to be displayed belongs. In the case of the lunar calendar display, the lunar calendar table (see FIG. 4) is read and stored.
[0050]
The display data register 42c sequentially counts the date data for one month to be arranged and displayed in the
[0051]
In the
[0052]
In the display digit register 42e, the digit address on the
[0053]
Next, the operation of the calendar display device having the above configuration will be described.
First, when the power is turned on by operating the ON key 14a of the key input unit 12, the year / month corresponding to the current year / month / day and day of the week data stored in the current year / month / day register 41b in the
[0054]
FIG. 6 is a flowchart showing the Western calendar / yinden conversion display process by the calendar display device.
That is, the year / month / day displayed according to the current year / month / day stored in the current year / month / day register 41b, or the operation of the "month / day" key 17 or the cursor key 15 of the key input unit 12. As shown in FIG. 1, for example, when the desired year, month, and day displayed in response to is February 1, 1994 (Tuesday), this year, month, day “February 1, 1994” When the “convert” key 18 is operated to display the date of the lunar calendar corresponding to “,” first, the above-mentioned year, month and day “February 1, 1994” designated as the conversion target to the lunar calendar is The data is stored in the designated date register 41c in the work RAM 25 (step S1).
[0055]
Then, the total number of days X from the Christian reference date “March 1, 1900” to the above-specified year, “February 1, 1994” is calculated as a specified day total number calculation formula [formula ( 1) or formula (2)], and is stored in the designated day total number of days register 41d in the work RAM 25 (step S2).
[0056]
In this case, since the month designated by the year B = 2, the total number of days X is calculated by the equation (2). For this equation (2), a = 1994, Substituting b = 2 and c = 1, the total number of days X is
And is stored in the specified day total number of days register 41d.
[0057]
Here, the specified date total number of days X “34306” stored in the specified date total number of days register 41d is stored in advance in the
[0058]
On the other hand, if it is determined that the total number of days X specified by the year is outside the calendar displayable range indicated by the minimum value data 31b and the
[0059]
FIG. 7 is a flowchart showing a reference year pointer setting process of the lunar calendar table accompanying the calendar / yen calendar conversion display process of the calendar display device.
That is, first, the total number of days X “34306” of the specified date “February 1, 1994” stored in the specified date total number of days register 41d in the
[0060]
In this step A2, “NO”, that is, the specified day total number of days X “34306” is equal to or greater than the first lunar calendar standard total number of days “29118”, and therefore, the Western calendar specified day “February 1, 1994” If it is determined that it exists in 1400 or more, the designated day total number of days X “34306” and January 1st, 1450 on the lunar calendar table (see FIG. 4) stored in the lunar calendar standard total number of days register 41e Is compared with the second lunar calendar standard total number of days “46838”, and it is determined whether or not the Western calendar designation date is less than 1450 on the lunar calendar (steps A3 and A4).
[0061]
In this step A4, “YES”, that is, the specified day total number of days X “34306” is less than the second lunar calendar standard total number of days “46838”, and therefore, the Western calendar specified date “February 1, 1994” If it is determined that it exists in 1400 or more and less than 1450, the first lunar calendar standard total number of days “29118” corresponding to the first lunar calendar standard date January 1, 1400 is read from the lunar calendar standard total number of days register 41e. Then, the difference from the total number of specified days X “34306” is obtained as “34306−29118 = 5188” (steps A5 and A6).
[0062]
That is, in this step A6, the date on the lunar calendar indicated by the total number of days X “34306” corresponding to the date designated “February 1, 1994” is the first lunar calendar reference date “January 1400”. The number of days after “1st day” is calculated, and the date data “5188” from the first lunar calendar reference date “January 1st, 1400” corresponding to this specified day total number of days X “34306”. "Is stored in the
[0063]
Then, the address pointer indicating the first lunar calendar reference year 1400 on the lunar calendar table (see FIG. 4) is set in the lunar calendar table year pointer 41h in the work RAM 25 (step A7).
[0064]
On the other hand, in step A4, “NO”, that is, since the total number of days X corresponding to the year designated by the calendar year is equal to or greater than the second calendar standard total number of days “46838”, it is determined that the year designated by the calendar year exists in 1450 or more on the calendar year Then, the second lunar calendar standard total number of days “46838” corresponding to the first lunar calendar standard date of January 1, 1450 is read from the lunar calendar standard total number of days register 41e, and the difference from the designated date total number of days X is “ X-46838 "(steps A8 and A9).
[0065]
In other words, in this step A9, the date on the lunar calendar indicated by the total number of days X corresponding to the day designated by the Christian era exists on the day after the second lunar calendar reference date “January 1, 1450”. The date data “X-46838” from the second lunar calendar reference date “January 1, 1450” corresponding to the specified total number of days X is stored in the
[0066]
On the other hand, in step A2, “YES”, that is, the total number of days X corresponding to the year designated by the calendar year is less than the first lunar calendar standard total number of days “29118”. Then, the total number of days corresponding to September 10, 1318, that is, the total number of days “307” corresponding to the minimum displayable date is read from the all day number minimum data 31b of the Western calendar in the
[0067]
That is, in this step A12, the date on which the lunar calendar date indicated by the total number of days X corresponding to the year designated by the Christian era exists on the day after the minimum displayable lunar calendar date “September 10, 1318”. The date data “X-307” from the minimum displayable lunar calendar date “September 10, 1318” corresponding to the specified total number of days X is stored in the
[0068]
As described above, according to the reference year pointer set processing (steps A1 to A7) of the lunar calendar table in FIG. 7, the lunar calendar in which the total number of days X “34306” corresponding to the year designation date “February 1, 1994” exists. When the address pointer indicating the first year “1400” on the table is set in the lunar calendar table year pointer 41h, the process shifts to the lunar calendar date acquisition process corresponding to the above-specified year “February 1, 1994”. (Step SB).
[0069]
FIG. 8 is a flowchart showing a lunar calendar date acquisition process associated with the calendar / yen conversion display process of the calendar display device.
That is, first, the number of days for one year corresponding to the lunar calendar year “1400” indicated by the current lunar calendar table year pointer 41h is the number of days data “1” for each month in the lunar calendar table (see FIG. 4). , 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0 ”is calculated as“ 29 × 6 + 30 × 6 = 354 days ”(step B1).
[0070]
Then, from the date data “5188” after “January 1, 1400” up to the lunar calendar date corresponding to the specified total number of days X “34306” stored in the
[0071]
Then, it is determined whether or not the day data “4834” stored in the
[0072]
Thereafter, the processing of the steps B1 to B4 is repeatedly executed, and from the day data “4834” stored in the
[0073]
Then, the day data “355 days” for 1 year of the lunar calendar 1414 subtracted immediately before it is added to the day data “−127” stored in the day register 41 f as “−127 + 355 = 228”, and the Western calendar is added. The lunar calendar date corresponding to the designated date is obtained as the 228th day of the lunar calendar 1414 and stored in the
[0074]
Next, the lunar calendar “1414” indicated by the lunar calendar table year pointer 41h is obtained from the date data “228” of the lunar calendar 1414 indicating the lunar calendar date corresponding to the year designated by the year in the step B5. The number of days in each month is subtracted according to the date data of each month in 1414 on the lunar calendar table. First, the date of the lunar calendar is indicated according to date data “1” in January 1414. When the day data “228” is subtracted as “228−30 = 198”, the subtraction result, the day data “198” from February 1414 to the lunar calendar date corresponding to the Western calendar date is obtained. The
[0075]
Then, it is judged whether or not the day data “198” stored in the
[0076]
Thereafter, the processing of steps B6 to B8 is repeatedly executed, and the number of days per month from February 1414 in the lunar calendar 1414 indicated by the lunar calendar month counter 41i from the day data “198” stored in the
[0077]
Then, the date data “29 days” for August 1414, subtracted immediately before, is added to the day data “−8” stored in the
[0078]
As a result, the lunar calendar year “1414” indicated by the lunar calendar table year pointer 41h, the lunar calendar month “8” indicated by the lunar calendar month counter 41i, and the day data “21” stored in the
[0079]
On the other hand, the day-of-week data of the lunar calendar date “August 21, 1414” corresponding to the above-specified date “Tuesday, February 1, 1994” is based on the total number of days X “34306”. , Calculated by the day-of-week calculation formula 31e [formula (3)] stored in advance in the
(34306 + 3) ÷ 7 = 4901 ...
Therefore, the remainder “2” (Tuesday) is set as the day-of-week data in the lunar
[0080]
In the year pointer setting process of the lunar calendar table in FIG. 7, the calendar date corresponding to the specified total number of days X is the first lunar calendar reference date “1400” through the processes of steps A1, A2 → A11 to A13. The number of days from the minimum displayable lunar calendar date “September 10, 1318” to the lunar calendar date corresponding to the specified number of days X is determined to be less than “January 1st of the year”. When the address pointer indicating the lunar calendar 1318 is set for the lunar calendar table year pointer 41h and stored in the
[0081]
That is, based on the date data “1, 0, 1, 0” from September to December 1318 in the lunar calendar table (see FIG. 4), the total number of days “118 days” is calculated. By subtracting “10 days”, the number of days “108 days” for the year 1318 to be subtracted from the day data is obtained.
[0082]
Therefore, when the address pointer indicating the lunar calendar 1318 is set with respect to the lunar calendar table year pointer 41h, the day data stored in the
[0083]
If the lunar calendar year pointer 41h is set to the lunar calendar 1318 in step B6 of the lunar calendar date acquisition process in FIG. 8, the initial value of the lunar calendar month counter 41i is "September", and the number of days Only in the first month / day subtraction process from the day / time data stored in the
[0084]
Thus, according to the lunar calendar date acquisition process in FIG. 8, the lunar calendar date “August 21, 1414 (Tuesday)” corresponding to the Western calendar date “February 1, 1994 (Tuesday)” is obtained. When obtained in the lunar
[0085]
In other words, substituting the total number of days “34286” of the “April 1414 August 1” into the equation (3),
(34286 + 3) ÷ 7 = 4898 ...
Therefore, the remainder “3” (Wednesday) is set in the 1-day register 42a in the
[0086]
Further, the month to which the lunar calendar date “August 21, 1414” belongs, that is, the date number of “August 1414” is set to “29” based on the corresponding date data “0” stored in the lunar calendar table. Date "and set in the final date register 42b in the work RAM 25 (step S6).
[0087]
Thus, the lunar calendar date “Tuesday, August 21, 1414” corresponding to the above-specified date “February 1, 1994 (Tuesday)” is obtained in the lunar
[0088]
FIG. 9 is a flowchart showing a lunar calendar display process associated with the calendar / yen conversion display process of the calendar display device.
FIG. 10 is a diagram showing a display state of a lunar calendar associated with the calendar / yen conversion display processing of the calendar display device.
[0089]
That is, first, when the
[0090]
In this case, the first week row corresponding to the Wednesday digit is set as the initial digit row position.
Then, the date “1” to be displayed as the first day is initialized in the display data register 42c in the work RAM 25 (step C3).
[0091]
Then, the date “1” initially set in the display data register 42c is written in the
[0092]
In this case, since the digit position indicated by the display digit register 42e is at the position of Wednesday, it is determined that the display for one week has not ended, and the date stored in the display data register 42c is incremented by (+1). Is updated to “2” (steps C5 → C6).
[0093]
Then, the digit position indicated by the display digit register 42e is updated to the position of Thursday (step C7).
Here, the date “2” to be displayed next stored in the display data register 42c and the last date number “29” of “August 1414” stored in the final date register 42b are compared. It is determined whether or not calendar display for one month has been completed (step C8).
[0094]
In this case, since the date to be displayed next stored in the display data register 42c is “2” and does not exceed the last date number “29” of the display month “August 1414”, it corresponds to one month. The calendar display is determined not to end, and the date corresponding to the column line position set in the display line and
[0095]
Thereafter, the processes of steps C4 to C8 are repeatedly executed, so that the day of the week digit indicated by the display digit register 42e is updated and the date to be displayed next stored in the display data register 42c is updated. The date “3” is written in the first week line corresponding to the digit position of Friday, the date “4” is written in the first week line corresponding to the digit position of Saturday, and sequentially written in the
[0096]
As a result, the calendar of “August 1414” is written to the
[0097]
As a result, the lunar calendar date “August 21, 1414 (Tue)” corresponding to the above-specified date “Tuesday, February 1, 1994” is converted and displayed, and the lunar calendar date “ The calendar of the lunar calendar for one month to which “August 21 (Tuesday) 1414” belongs is displayed.
[0098]
On the other hand, the actual operation of the lunar calendar is carried out by checking the operation of the moon with the naked eye, such as the beginning of the month when the month appears. The number of days per month may be changed by Islamic leaders.
[0099]
Here, the correction process of the lunar calendar table (see FIG. 4) when the number of days of the lunar calendar month is changed will be described.
That is, when the “correction” key 19 in the key input unit 12 is operated, the lunar calendar table stored in the
[0100]
Here, by operating the cursor key 15, the corresponding month of the lunar calendar year in which the number of days needs to be changed is indicated, and “0” or “1” of the numeric keypad 16 is operated to rewrite the date data. When the “correction” key 19 is operated, the date data rewritten lunar calendar table is newly stored in the
[0101]
Thus, the date number of any lunar calendar month can be corrected. In this case, it is managed by the lunar calendar reference all-day register 41e in the lunar calendar conversion work RAM 25a according to the corrected date date of the lunar calendar month. The total number of days corresponding to the first lunar calendar reference date “January 1, 1400” and the total number of days corresponding to the second lunar calendar reference date “January 1, 1450” are corrected.
[0102]
That is, in the correction process of the lunar calendar table, for example, when the date days of a certain month existing in less than January 1400 of the lunar calendar are corrected, according to the correction days (+1) or (−1), The total number of days corresponding to the first and second lunar calendar dates are both corrected by (+1) or (-1), and for example, for a month present from January 1400 to less than January 1450 When the date number is corrected, only the total number of days corresponding to the second lunar calendar reference date is corrected by (+1) or (-1).
[0103]
Thereby, even if there is a change correction in the date days on the lunar calendar table, the conversion display process of the Western calendar / imperial calendar in FIG. 6 is executed accurately.
Therefore, according to the calendar display device having the above-described configuration, the data is displayed on the liquid
[0104]
In addition, the number of days corresponding to an arbitrary year and month on the
[0105]
Further, the total number of days of the lunar calendar reference day managed based on the Western calendar date in the lunar calendar standard days register 41e is set in accordance with the Saudi official calendar on the lunar calendar table stored in the
[0106]
When the number of dates corresponding to any year and month in the lunar calendar table stored in the
[0107]
【The invention's effect】
As described above, according to the first calendar display device of the present invention,When an arbitrary date on the solar calendar is specified by the year / month / day specifying means, the date data from the predetermined reference date to the specified date is calculated as the specified day / day data by the specified day / day calculating means. The date data of the difference between the calculated specified date data and the specified date stored in the lunar calendar date storage means to the lunar date standard date from the specified date on the lunar calendar is the lunar calendar date data The date of the lunar calendar, which is calculated by the specified number of days calculation means, and is changed by the number of days of the date specified by the lunar calendar for the specific date on the lunar calendar, is calculated by the date specified by the date of the lunar calendar. ,The date number of each month in each year of the lunar calendar stored in the lunar calendar information storage meansBy being calculated using,The specified date on the solar calendar is converted and displayed on the corresponding lunar calendar date. Therefore, by using the lunar calendar reference day data that is the number of days from the predetermined standard date to a specific date on the lunar calendar, the day data of the difference between the lunar calendar standard day data and the specified day data is calculated. By calculating the date of the lunar calendar that is changed from the specific date on the lunar calendar by the number of days corresponding to the difference, the conversion process to the lunar calendar date can be performed at high speed.
[0108]
According to the second calendar display device of the present invention,In the first calendar display device, the lunar calendar reference day / day data stored in the lunar calendar reference date storage means is a specific year set in plural among a plurality of lunar calendar years stored in the lunar calendar information storage means It is stored corresponding to each of the month and day, and is close to the specified day / day data calculated by the specified day / day calculating means out of each lunar calendar day / day data stored corresponding to each of the specific date The lunar calendar standard days data is set as a usage target by the lunar calendar standard setting means, the designated days data calculated by the designated days and days calculation means, and the lunar calendar reference days data set as a usage target by the lunar calendar standard setting means, The date of the lunar calendar is calculated as the date specified by the lunar calendar by the lunar calendar specified date calculation means, and the lunar calendar standard date set as the object of use by the lunar calendar standard setting means For a particular date on the lunar corresponding to the data, date lunar which only varied number of days this calculated lunar designated date days data were are calculated. Therefore, it is possible to perform conversion processing to the lunar calendar date at high speed by utilizing the lunar calendar day / date data closest to the designated day / day data calculated by the designated day / day calculating means.
[0109]
According to the third calendar display device of the present invention,In the first or second calendar display device, since the date in the solar calendar corresponding to the current date updated at any time according to the current time measured is designated, the current day in the current solar calendar The lunar calendar date corresponding to the date is easily converted and displayed.
[0110]
According to the fourth calendar display device of the present invention,In the first or second calendar display device, the date on the solar calendar designated by the date designation means is designated by the key input means. The lunar calendar date corresponding to the desired date is easily converted and displayed.
[0111]
According to the fifth calendar display device of the present invention,In any one of the first to fifth calendar display devices, the date of the lunar calendar displayed by the lunar calendar display means is displayed as the lunar calendar of the month to which the lunar calendar date belongs.
[0112]
Moreover, according to the sixth calendar display device of the present invention,In any one of the first to fifth calendar display devices, the date number corresponding to an arbitrary year and month of the lunar calendar stored in the lunar calendar information storage means is corrected as necessary by the lunar calendar month / day correction means. Therefore, the date can be easily corrected according to the change of the lunar calendar days by the guidance of Islam.
[0113]
According to the seventh calendar display device of the present invention,In the sixth calendar display device, when the date number corresponding to an arbitrary year and month of the lunar calendar stored in the lunar calendar information storage unit is corrected by the lunar calendar date correction unit, the lunar calendar reference day rewriting unit Since the date data corresponding to a specific date on the lunar calendar stored in the lunar calendar reference date storage means is rewritten according to the correction days, even if there is a change in the lunar calendar days due to Islamic guidance, etc. Thus, it is possible to perform conversion display processing to an accurate lunar calendar date.
[Brief description of the drawings]
FIG. 1 is a front view showing an external configuration of a calendar display device according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of an electronic circuit of the calendar display device.
FIG. 3 is a view showing a storage state of fixed data in a ROM of the calendar display device.
FIG. 4 is a view showing a storage state of a lunar calendar table in a lunar calendar RAM of the calendar display device.
5A and 5B are diagrams showing the configuration of various work registers in the work RAM of the calendar display device. FIG. 5A is a diagram showing the register configuration of a calendar RAM work RAM, and FIG. 5B is a calendar display. The figure which shows the register structure of work RAM.
FIG. 6 is a flowchart showing a Western calendar / imperial calendar conversion display process by the calendar display device.
FIG. 7 is a flowchart showing a reference year pointer setting process for the lunar calendar table in accordance with the Western calendar / imperial calendar conversion display process of the calendar display device;
FIG. 8 is a flowchart showing a lunar calendar year / month / day acquisition process associated with a Western calendar / imperial calendar conversion display process of the calendar display device;
FIG. 9 is a flowchart showing a lunar calendar display process that accompanies the Western calendar / imperial calendar conversion display process of the calendar display device;
FIG. 10 is a diagram showing a display state of a lunar calendar associated with a Western calendar / imperial calendar conversion display process of the calendar display device.
[Explanation of symbols]
DESCRIPTION OF
Claims (7)
所定の基準日から前記指定された太陽暦上の年月日までの日数データを指定日日数データとして算出する指定日日数演算手段と、
前記所定の基準日から太陰暦上の特定の年月日までの日数データを陰暦基準日日数データとして記憶する陰暦基準日記憶手段と、
太陰暦の各年における各月毎の日付日数を記憶する太陰暦情報記憶手段と、
前記指定日日数演算手段により算出された指定日日数データと前記陰暦基準日記憶手段により記憶された陰暦基準日日数データとの差の日数データを陰暦指定日日数データとして算出する陰暦指定日日数演算手段と、
前記太陰暦上の特定の年月日に対して、この陰暦指定日日数演算手段により算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日を、前記太陰暦情報記憶手段に記憶された太陰暦の各年における各月毎の日付日数を用いて算出することによって、前記指定された太陽暦上の年月日を対応する太陰暦の年月日に変換する西暦/陰暦変換手段と、
この西暦/陰暦変換手段により得られた太陰暦の年月日を表示する陰暦表示手段と、
を具備したことを特徴とするカレンダ表示装置。A date designating means for designating an arbitrary date on the solar calendar;
A designated day number calculating means for calculating the number of days data from a predetermined reference date to the specified date on the solar calendar as the designated day number data ;
An ephemeris reference date storage means for storing date data from the predetermined reference date to a specific date on the lunar calendar as lunar calendar date data;
Lunar calendar information storage means for storing the number of days in each month in each year of the lunar calendar;
Lunar designated date days calculation for calculating the number of days data of the difference between the stored lunar date days data by the designated date days calculation the the calculated designated day days data by means lunar date storage means as a lunar designated date days data Means,
The lunar calendar information storage means stores the date of the lunar calendar that has been changed by the number of days specified by the lunar calendar specified day / day data for the specific date on the lunar calendar. A Western calendar / yen calendar conversion means for converting the date of the specified solar calendar to the corresponding date of the lunar calendar by calculating using the number of days in each month in each year of the lunar calendar;
An lunar calendar display means for displaying the date of the lunar calendar obtained by the Western / Yellow calendar conversion means;
A calendar display device comprising:
前記特定年月日のそれぞれに対応して記憶された各陰暦基準日日数データのうち、前記指定日日数演算手段により算出された指定日日数データに近い陰暦基準日日数データを利用対象に設定する陰暦基準設定手段を具備し、
前記陰暦指定日日数演算手段は、前記指定日日数演算手段により算出された指定日数データと、この陰暦基準設定手段により利用対象に設定された陰暦基準日日数データとの差の日数データを陰暦指定日日数データとして算出し、
前記西暦/陰暦変換手段は、前記陰暦基準設定手段により利用対象に設定された陰暦基準日日数データに対応する太陰暦上の特定の年月日に対して、この算出された陰暦指定日日数データの日数だけ変化させた陰暦の年月日を算出することを特徴とする請求項1に記載のカレンダ表示装置。 The lunar calendar reference day data stored in the lunar calendar reference date storage means is stored corresponding to each of a specific date set in plural among the plural years of the lunar calendar stored in the lunar calendar information storage means. ,
Of the lunar calendar days / days data stored corresponding to each of the specific dates, set the lunar calendar days / days data close to the designated days / days data calculated by the designated days / days calculation means as the usage target. It has a lunar calendar standard setting means,
The lunar calendar designated day / day calculating means designates the date data of the difference between the designated day data calculated by the designated day / day calculating means and the lunar calendar reference day / day data set to be used by the lunar calendar reference setting means. Calculated as day / day data,
The Western calendar / yen calendar conversion means, for a specific year / month / day on the lunar calendar corresponding to the lunar calendar reference day / day data set to be used by the lunar calendar standard setting means, 2. The calendar display device according to claim 1, wherein the date of the lunar calendar changed by the number of days is calculated .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02937094A JP3674957B2 (en) | 1994-02-28 | 1994-02-28 | Calendar display device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02937094A JP3674957B2 (en) | 1994-02-28 | 1994-02-28 | Calendar display device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07239840A JPH07239840A (en) | 1995-09-12 |
JP3674957B2 true JP3674957B2 (en) | 2005-07-27 |
Family
ID=12274270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP02937094A Expired - Fee Related JP3674957B2 (en) | 1994-02-28 | 1994-02-28 | Calendar display device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3674957B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2006200104B2 (en) * | 2005-05-12 | 2007-05-10 | Cinc, Vic MR | A method of determining a target event of a reoccurring event |
JP5494740B2 (en) * | 2012-06-26 | 2014-05-21 | カシオ計算機株式会社 | Calendar display device |
-
1994
- 1994-02-28 JP JP02937094A patent/JP3674957B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH07239840A (en) | 1995-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4573127A (en) | Programmable electronic real-time load controller, and apparatus therefor, providing for updating of preset calendar events | |
US4152768A (en) | Electronic apparatus with calendar | |
JP3674957B2 (en) | Calendar display device | |
JPH01307690A (en) | World timepiece | |
JP3624428B2 (en) | Calendar display device | |
JPH01306962A (en) | Schedule management device | |
JP2984770B2 (en) | Electronic clock | |
JPH0862357A (en) | Worship time display device | |
JP3569057B2 (en) | Display scale variable linear clock | |
JPH01306949A (en) | Electronic apparatus with calendar function | |
JP2884377B2 (en) | Electronic device with day display | |
JPS62143170A (en) | Schedule input device | |
JPH0143669Y2 (en) | ||
JPS61110081A (en) | World time piece | |
EP0350065B1 (en) | Electronic apparatus having a calendar-display function | |
JPS6040066B2 (en) | Calendar information display method | |
JPH0625982B2 (en) | Electronic tide gauge | |
JPH0754356B2 (en) | Calendar device | |
JP3328814B2 (en) | Timetable display device and timetable display control method | |
JPH0661085B2 (en) | Electronic schedule calendar date specification method | |
JPH02311788A (en) | Moon data computing apparatus | |
JP2001519912A (en) | Chronometer | |
JPS5851635B2 (en) | Clock with 7th day calendar | |
JPH02150789A (en) | World clock | |
JPH0726761Y2 (en) | Data storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050322 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050425 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080513 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090513 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100513 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110513 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110513 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120513 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120513 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130513 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |