10000年问题

✍ dations ◷ 2025-10-23 04:26:56 #程序错误,年问题,未来问题

10000年问题(Year 10000 Problem,简称Y10K)是所有软件可能在表示五位数年份时发生的问题的总称。在2000年问题引起人们关注的一段时间中,10000年问题曾被以幽默的方式被人们在媒体中披露。实际上,在10000年时,由于未来科技及软件的进步-不再只以少数几个数字表示年份,这可能不再是个问题。

许多需处理日期的程序会在2000年时将年份错误显示为1900年、19100年或100年,因为工程师直接在以两位数记录的年份前面加上"19"以简化程序或节省存储器空间。这类的日期显示错误不太可能在10000年来临时再度发生,因为这种记录方式在此时是没有用处的。然而,部分程序在处理日期时只会显示末4码的年份。这可能会导致10000年被显示为"0000年"。

这个问题可以在今日相当普及的表格软件Microsoft Excel中发现。因为它以"自1899年12月31日起经过的天数"来储存日期(以此规则,第1天是1900年1月1日)。在数据库软件Microsoft Access中也有同样的问题。它以"自1899年12月30日起经过的天数"来储存日期(第一天是1899年12月31日)。在上述任一个程序中,输入第2958465天会产生日期9999年12月31日。

对此数值再加1(即2958466)则会造成编程语言中的溢出(Excel中为显示一列#号),但事实上,2958465的二进制表示为101101'00100100'10000001,而2958466则是101101'00100100'10000010。这两个值在二进制中皆为22位数。在这些软件中提及的溢出问题最有可能是源于它们的浮点数表示法(在Excel中,第1.5天是1900年1月1日的12:00:00)。它们可能被以变种的IEEE浮点标准存储。而此一部分之数字有23位数的空间。

Long Now基金会(英语:Long Now Foundation)正尝试促进以5位数书写/记录年份的习惯,以此,2000年将会被记录为"02000",如此将能预防10000年问题(一万年虫问题),但这将再次遇到100000年问题(十万年虫问题)。

2000年问题因为以2位数字表示4位数年份,而前两位的"世纪"年份无法被正确决定而产生。被记录的年份应该加上2位的"世纪"年份以解决此问题。10000年问题不需要更新任何旧纪录,因为4位数字已经足够纪录4位数的年份。它将只需要新的纪录方式以记录5位数年份。然而,仍然有一个在使用字典序(lexical sorting)记录时可能会发生的问题。例如,在表示10000年的日期时,它可能会出现在1000年的旁边,而不是在9999年的旁边。

相关

  • 嗉囊嗉囊是食道中段或后段特化形成的薄壁器官,具有良好的延展性,因此作为食物在消化前的储存场所。嗉囊在鸟类、腹足纲(如蜗牛、蛞蝓)、水蛭、昆虫、蚯蚓等动物中都可以发现。鸟类嗉
  • 浪人浪人一词,在古代是指离开登录的户籍地去他国流浪的人,也称“浮浪”。浪人不分身份,任何人都有可能成为浪人。江户时代中期开始把牢人称为浪人,但正确来说牢人和浪人并非完全同义
  • 2015年8月 本文全部或部分内容来自美国联邦政府所属的美国之音网站。根据版权条款(英文)和有关美国政府作品版权的相关法律,其官方发布的内容属于公有领域。
  • 杂贺礼史杂贺礼史(日语:雑賀 礼史),日本轻小说作家。代表作是曾经漫画化与改编成电视动画的《武侠派女高校生(日语:召喚教師リアルバウトハイスクール)》(插图:井上空,角川书店/富士见书房)。199
  • 哈德姆·阿里帕夏哈德姆·阿里帕夏(土耳其语:Hadım Ali Paşa;15世纪-1511年7月),也称阿提克·阿里帕夏,奥斯曼帝国官员,修饰名“哈德姆”在土耳其语中意为“宦官”。他曾在1485年至1491年间的奥斯
  • 卡卡尼卡卡尼(Kakanj,Какањ)是波黑的一座城市。在行政区划上属于波黑联邦。坐标:44°07′52″N 18°05′50″E / 44.13111°N 18.09722°E / 44.13111; 18.09722
  • 南薰礁案件南薰礁案件,发生于1990年11月7日前若干天的一宗未破案件。1990年11月7日,中国人民解放军海军南沙指挥部发现与南薰礁失去无线电联络。情况上报后,南海舰队马上调派船前往查看。
  • 溢血财产《溢血财产》(印尼语:,IPA读音:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","Code2000","Gentium","G
  • 贾鲁河贾鲁河,淮河水系主要支流之一,发源于河南省新密市圣水峪,向东北流经郑州市区西部后折向东流,流经郑州市区北部,在中牟县折向东南,经尉氏县、扶沟县和西华县三县后,在周口市流入沙颍
  • 牧山牧山,又称干卓万东南峰 ,位于台湾南投县仁爱乡亲爱村与信义乡地利村之间。为台湾百岳之一,排名第68。牧山高达3,239米,属于中央山脉。牧山附近接连干卓万山、万东山西峰等山。