[发明专利]解决计算机“千年问题”的方法无效
| 申请号: | 99106694.4 | 申请日: | 1999-05-26 |
| 公开(公告)号: | CN1247337A | 公开(公告)日: | 2000-03-15 |
| 发明(设计)人: | 刘伟山 | 申请(专利权)人: | 刘伟山 |
| 主分类号: | G06F3/023 | 分类号: | G06F3/023 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 441322 *** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 解决 计算机 千年 问题 方法 | ||
本发明提供了一种解决计算机“千年问题”的方法,该方法仍只采用两位数表示年份,对目前的计算机来说很容易实现长达K×4162亿年的日期表示范围,最大则可达K×3.4亿亿亿亿亿年(K为一较大的正整数)。
在二十世纪计算机发明初期,设计人员为了节约宝贵的内存,仅用两位数表示年份,这样,随着2000年的到来,计算机会把“00”当作1900年,从而引起一系列与日期有关的处理错误,引发各种各样的计算机业务处理系统和控制系统的功能紊乱。届时,“千年问题”将在信息、金融、电讯、军事、交通以及与网络有关的各行各业捣乱,它的连锁反应将给人类带来巨大的经济损失,甚至给国家安全带来隐患。据估计,“千年问题”给全球造成的损失将超过6000亿美元。
目前常用的修改日期的方法有扩增法、滑动窗口法、日期操纵法、月份加计法。以上方法有如下缺点:一、四种方法表示的日期范围都很有限,月份加计法只能将2000年问题往后延迟7年,日期操纵法也至多推后几十年,滑动窗口法的窗口大小小于100年,扩增法用四位数表示公元纪年,虽然长一些,但也只能用到公元9999年,公元10000年来临时又会产生“万年问题”。二、后三种方法未解决“00”和“99”问题。在很多系统中,字符串“00”和“99”被赋予了特殊的含义,如存档、特殊处理甚至档案删除等,后三种方法未采取有效措施来防止“00”和“99”问题。三、扩增法、日期操纵法、月份加计法都有不符合人们习惯的方面。扩增法用四位数表示年份不符合人们用两位数表示年份的习惯,日期操纵法、月份加计法虽然用两位数表示年份,但又和实际的不一致。四、滑动窗口法、日期操纵法表示的年份仍有可能与实际的年份发生混淆,从而引起紊乱。五、扩增法与用两位数表示年份的方法相比存在占用更多的存贮空间、花费更多的输入时间、修改起来浪费人力、财力、物力且容易引起信息丢失的缺点。扩增法还存在两位数向四位数转换的同步问题,要实现同步,难度很大。另外,用四位数表示年份的应用程序与用两位数表示年份的应用程序之间还存在兼容问题。
本发明的目的是提供一种有足够长的日期表示范围、既能解决“00”和“99”问题、又能解决闰年问题、还能解决兼容问题、且节省人力、物力、财力、还符合人们习惯的修改方法。
本发明的目的是这样实现的。
仍只采用两位数表示年份,但对表示年份的两位数字的背景色及前景色作单独定义,不被整个屏幕的颜色覆盖,本发明的实质就在于世纪数通过两位年份数字的前景标准色与背景色表达出来。若计算机能表示N种颜色(N为正整数),可按由深到浅的顺序将N种颜色的灰度定义为0(黑色)、1、2、3、......、(N-2)、(N-1)(白色)。取灰度为1~(N-2)的颜色为标准色,标准色既参与显示,又参与计算;取灰度为0、(N-1)的两种颜色为增强色,增强色参与显示,但不参与计算。每个年份数字的前景色由标准色与增强色两种颜色组成。标准显示表示的数字中标准色占绝大部分,增强色占一小部分,标准显示用于肉眼能清楚分辨前景标准色与背景色时;当前景标准色与背景色比较接近而肉眼不易分辨时,用增强显示,增强显示的数字中增强色占绝大部分,标准色占一小部分。灰度小于或等于(N-2)/2的标准色对应的增强色的灰度为(N-1),灰度大于(N-2)/2的标准色对应的增强色的灰度为0,增强显示与对应的标准显示所表示的同一个数字的相同部分的颜色刚好对调,增强显示时所计算得的世纪数与对应的标准显示时的完全相同。标准显示和增强显示的数字中标准色和增强色的块数、块的大小、分布有多种组合,可以有K种组合(K为一较大的正整数,这K种组合有必要制订统一的标准,以便各软件能相互识别)。
设A为世纪数(将公元纪年后两位年份数去掉后所得的整数,A的基数为19,即A≥19)、年份个位数背景色灰度为F、年份十位数背景色灰度为G、年份个位数前景标准色灰度为H、年份十位数前景标准色灰度为I、组合序数为J(J为整数,且0≤J≤K-1)。
根据世纪数计算年份数前景标准色和背景色的灰度的方法如下:
令B=A-19
C=INT(B/(N-2))(INT()函数为取整函数,下同。)
D=INT(B/(N-2)2)
E=INT(B/(N-2)3)
J=INT(B/(N-2)4)
则F=B+1-(N-2)*C
G=INT((B-(N-2)2*D)/(N-2))+1
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于刘伟山,未经刘伟山许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/99106694.4/2.html,转载请声明来源钻瓜专利网。





