本文轉載自 http://www.microsoft.com/taiwan/year2000/faq/q1.htm
1. 公元2000 年的問題是什麼?
答 以電腦系統來說,有三大問題:
1) 2位數與四位數之別。
日期是以2位數的格式儲存,就連”年”的部份 (月/日/年或日/
月/年)也是。 電腦依據這些日期所作的計算,將不會回報正確的結果。
舉個例子, 假如在公元 1999 年,有人試圖作簡單的信用卡交易,就如
上百萬的人一樣。現在假設購買者在年底過後還有未償還的款項,銀行依
照慣例計算積欠的利息,但是問題就出在這裡。銀行為了計算利息,用當
天的日期減掉付款到期日。電腦使用 2位數日期的格式,用 00 減掉 99,
而產生-99的結果。這是因為電腦不知道,在這個情況裡,00 是比 99
還大的數字ꄊ
錯誤的日期計算所引發的衝擊,可能會影響庫存控制系統、財務計劃工具
、自動歸檔系統等。公元 2000年問題所產生的結果,會顯現出各種情況,
比方說完全停止運作的系統、或是看起來運作正常、但卻是依錯誤邏輯運
作的系統。(參閱問題#3)
2) 閏年。
與日期有關的錯誤可能出現的第二種情況,主要圍繞在公元 2000 年是閏
年這件事上面。事實上,這是個很特別的閏年;每 400 年才發生一次。很
多系統和應用程式的設計,並未將公元 2000年的閏年考慮在內,所以並不
支援公元 2000 年 2 月 29 日這一天,而後面的日期都會跟著出錯。
3) 特殊碼。
第三個大問題,不是出在這個公元 2000 年上面,而是跟日期有關。很多
舊版的應用程式將特定日期當作特殊碼。舉個例子,使用者在表格的日期
欄位上輸入 9/9/99,因為該應用程式將 9/9/99 設定為特殊碼。特殊碼使
特別的文件獲得特別的方式處理,例如將它另外放置,或是放到報告的最
上面。基本上,上述的應用程式會在 9/9/99 中斷,但隔日會恢復到正常
的格式。現在大部份公司組織(organization)都使用許多特殊的日期,必
須使用公元 2000年問題的處理程序來尋找和移除這些代碼。
在技術上,這個問題並不難理解,問題的解決方案看來也相當簡單,但是
問題牽涉的範圍使它變難了。每件硬體、軟體和嵌入式系統(embedded
system)都要考慮進去,每一件事物,從攸關工作的中央會計系統到所有
便利的小型程式,都要檢查其中的日期處理,以及那些日期會如何影響其
他部份的環境。
--
. * . .
七夕凌晨, 大屯山頂 ▁▂▃●▃▂▁
. . *
在臺北市看見銀河的感覺很好 ▁
▁▂▄▆██