title: 什么是千年虫? 
answer: 什么是千年虫（2000年问题） 
  
  在计算机的程序时规定了的年份仅用两位数来表示，那么无论遇到是哪一个世纪的，计算机都会老老实实地取年份中的后两位来表示其年份，决不会采取四位数来表示年份的。也就是说，假如是1971年，在计算机里就会被表示为“71”，而假如是2002年，计算机就会将其年份表示为“02”。这样的话假如要计算相差多大，计算机要用02减去71了。这就是千年虫（计算机2000年问题）。 
  计算机千年虫（2000年问题）的定义： 
  
  2000年问题，就是指在某些使用了计算机程序的智能系统（包括计算机系统、自动控制芯片等）中，由于其中的年份只使用两位十进制数来表示，因此当系统进行（或涉及到）跨世纪的日期处理运算（如多个日期之间的计算或比较等）时，就会出现错误的结果，进而引发各种各样的系统功能紊乱甚至崩溃。 
  
  另外，更广泛的讲，2000年问题还包括其他两个方面的问题： 
  
  一个是在一些计算机系统中 ，对于闰年的计算和识别出现问题，不能把2000年识别为闰年，即在该计算机系统的日历中没有2000年2月29日这一天，而是直接由2000年2月28日过渡到了2000年3月1日； 
  另外一个是在一些比较老的计算机系统中，使用了数字串99（或99/99等）在程序中来表示文件结束、永久性过期、删除等一些特殊意义的自动操作，这样当1999年9月9日（或1999年4月9日即1999年的第99天）来临时，计算机系统在处理到内容中有日期的文件时，就会遇到99或99/99等数字串，从而将文件误认为已经过期或者将文件删除等错误操作，引发系统混乱甚至崩溃等故障。这个问题有的时候也被称为“9999虫”。 
  2000年问题（英文为 Year 2000 Problem)在国际上有各种各样的叫法，比较通俗的一种就是“千年虫”,英文为Millennium Bug，其中 Millennium 是“一千年”的意思。而Bug在汉语中是“臭虫”，它是美国常用俗语，在计算机界表示那些程序开发中没有注意到的漏洞和毛病。2000年问题就是当初设计程序时没有注意到的一个毛病，它在2000年来临时才发作，所以我们把他叫做“千年虫”（Millennium Bug）。另外，国外经常把一千（KILO-）简写为K，所以2000年问题（Year 2000 )国际上也简称为Y2K，其中Y是英语单词Year的简写，2K是2000的简写。 
  
  同时，从上面的第三个问题中，我们已经看出，假如只用两位数来表示年份的话，当我们在进行不同世纪里的两个年份之间的计算时，我们会得出多么错误的结果。而对于这个结果，我们目前仅仅感觉到的是它的错误可笑，但当这样的错误一旦发生到关键部门的话，其带来的后果又是不可想象的 
  