文字来源:http://www.xishuiw.com/info/2010-7/2010-7-13-25075.htm
在 http://www.hao114.com/tools/wannianli.htm 的源代码中,有从1900--2049的阴历月份的数据:
/*****************************************************************************
日期资料
*****************************************************************************/
var lunarInfo=new Array(
0x04bd8,0x04ae0,0x0a570,0x054d5,0x0d260,0x0d950,0x16554,0x056a0,0x09ad0,0x055d2,
0x04ae0,0x0a5b6,0x0a4d0,0x0d250,0x1d255,0x0b540,0x0d6a0,0x0ada2,0x095b0,0x14977,
0x04970,0x0a4b0,0x0b4b5,0x06a50,0x06d40,0x1ab54,0x02b60,0x09570,0x052f2,0x04970,
0x06566,0x0d4a0,0x0ea50,0x06e95,0x05ad0,0x02b60,0x186e3,0x092e0,0x1c8d7,0x0c950,
0x0d4a0,0x1d8a6,0x0b550,0x056a0,0x1a5b4,0x025d0,0x092d0,0x0d2b2,0x0a950,0x0b557,
略。。。。
正确的解释是:
二进制形式 xxxx xxxx xxxx xxxx xxxx
20-17 16-12 12-9 8-5 4-1
1-4: 表示当年有无闰年,有的话,为闰月的月份,没有的话,为0。
5-16:为除了闰月外的正常月份是大月还是小月,1为30天,0为29天。
注意:从1月到12月对应的是第16位到第5位。
17-20: 表示闰月是大月还是小月,仅当存在闰月的情况下有意义。
举个例子:
1980年的数据是: 0x095b0
二进制:0000 1001 0101 1011 0000
表示1980年没有闰月,从1月到12月的天数依次为:30、29、29、30、29、30、29、30、30、29、30、30。
1982年的数据是:0x0a974
0000 1010 1010 0111 0100
表示1982年的4月为闰月,即有第二个4月,且是闰小月。
从1月到13月的天数依次为:30、29、30、29、29(闰月)、30、29、30、29、29、30、30、30。
相关推荐
从给定的代码片段来看,这是一段C语言编写的万年历程序,其主要功能是根据用户输入的年份,输出该年的日历。下面将详细解析此代码中的核心知识点,包括算法逻辑、日期计算原理以及代码实现细节。 ### 1. 万年历算法...
在编程领域,创建一个“万年历”程序是一项常见的任务,它可以接受用户输入的年份和月份,并打印出相应的日历。在这个特定的案例中,我们关注的是使用Java语言实现这个功能。以下是对该程序涉及的主要知识点的详细...
本资源是一个使用VHDL语言设计的多功能数字万年历,具有计时和年份显示功能。下面是对该资源的详细解释和知识点总结: 标题:VHDL多功能数字万年历 描述:用VHDL写的多功能数字万年历,计时及年份 标签:VHDL ...
是用C语言编写的万年历程序,适用于c语言初学者
【基于FPGA的万年历实验】是一种利用可编程逻辑器件——Field Programmable Gate Array(FPGA)实现的数字系统设计。在这个实验中,我们将会深入理解如何使用硬件描述语言Verilog来构建一个能显示日期和时间的万年历...
万年历是一款非常实用的工具,它可以帮助用户查看任意年份和月份的日历,包括公历和农历日期,以及相关的节气、节日等信息。在信息化时代,万年历不仅局限于传统的纸质形式,而是发展成了各种软件应用,适用于电脑、...
3. **节假日查询**:集成全球主要国家和地区的公共假期,用户可以方便地查询任何年份的节假日信息,有助于规划个人或团队的工作和生活。 4. **农历转换**:考虑到中国用户的需求,VC 万年历很可能支持农历与公历的...
在IT领域,一个“万年历”程序是能够显示任何年份日历的软件。在本例中,我们讨论的是一个使用Microsoft Visual Studio 2008(简称VS2008)开发的C语言版本的万年历。VS2008是一个集成开发环境(IDE),支持C++、C#...
1. **日期计算逻辑**:万年历的核心在于正确计算日期,这需要了解公历的规则,包括普通年份和闰年的区别,每个月的天数以及闰月的处理。例如,每4年有一个闰年,但世纪年(如2100年)如果不是400的倍数则不是闰年。 ...
【万年历程序】是一种计算机程序,用于显示公历日期,并可以追溯到过去或预测未来的很多年,甚至千年,因此被称为“万年历”。在给定的上下文中,这个程序是用C语言编写的,C语言是一种通用的、高级的编程语言,以其...
为了生成一个完整的万年历,你需要遍历从1900年至今的所有年份、月份和日期。这通常通过嵌套循环实现:外层循环控制年份,内层循环控制月份,再内层循环显示每个月的日期。在循环过程中,你可以使用`LocalDate`的`...
摘要:VC/C++源码,系统相关,万年历 C++编写的万年历模块源码下载,万年历.cpp : Defines the entry point for the console application. 显示1900年以后任何年份的日历,日历以月份顺序排列,每月以星期顺序排列...
【万年历1_基于VHDL的万年历设计_VHDL万年历_journeysuw_万年历vhdl_】这个项目是关于利用VHDL语言设计一款能够显示时分秒、日月年信息的万年历。VHDL(Very High Speed Integrated Circuit Hardware Description ...
3. **闰年判断**:编程实现时,需要知道闰年的规则:能被4整除但不能被100整除的年份,或者能被400整除的年份是闰年。这个规则会影响到2月的天数。 4. **节气计算**:中国农历有24个节气,需要了解节气的计算方法并...
算法复杂,涉及闰年规则(每4年一闰,但世纪年不是闰年,除非能被400整除)以保持年份与地球公转周期的同步。 4. **农历转换**:万年历还包括农历的计算,需要了解阴历的月相变化和农历年的闰月规则。农历与阳历...
【标签解析】:标签“Calendar”、“万年历”、“日历”进一步强调了这个项目是关于创建或修改一个多功能的日历应用,它可能涉及到日期计算、节假日显示、事件管理等多个方面。"万年历"通常需要处理闰年规则、不同...
JavaScript是一种轻量级的解释型编程语言,主要应用于客户端的网页开发,负责处理网页的动态效果和交互性。它与HTML和CSS一起构成了网页开发的三大核心技术。JavaScript可以改变HTML元素的样式、内容,甚至可以通过...
在这个软件中,开发者可能自定义了数据结构来存储日期信息,并编写算法来计算任意年份的日期,确保准确无误。 其次,记事本功能是该软件的另一大亮点。用户可以随时记录日常生活中的重要事件或待办事项,这些记事...
用户可以选择输入年份查看当年的万年历,输入年月查看当月的万年历,或输入年月日查询星期。所有输入的验证都在类的方法中完成,确保了数据的正确性。 代码中的`switch`语句用于在打印月份日历时调整输出的对齐方式...
在实现万年历功能时,需要对Date对象进行深入理解和操作,包括获取当前日期、月份和年份,以及计算日期之间的转换。 2. **农历转换算法**:JavaScript本身并不支持农历日期的直接处理,因此需要实现农历与公历之间...