日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

关于1970-1-1 00:00.000的知识【转】

發(fā)布時(shí)間:2025/7/14 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于1970-1-1 00:00.000的知识【转】 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

轉(zhuǎn)自:http://blog.csdn.net/tianzizhi/article/details/4547373

現(xiàn)在計(jì)算機(jī)和一些電子設(shè)備時(shí)間的計(jì)算和顯示是以距歷元(即格林威治標(biāo)準(zhǔn)時(shí)間 1970 年 1 月 1 日的 00:00:00.000,格里高利歷)的偏移量為標(biāo)準(zhǔn)的,如1970-1-10 20:47 偏移量為2724441632毫秒,出現(xiàn)類似字樣說(shuō)明時(shí)間被初始化了。

小知識(shí):
格林威治標(biāo)準(zhǔn)時(shí)間GMT
許多人都知道兩地時(shí)間表簡(jiǎn)稱為GMT或UTC,而世界時(shí)區(qū)表則通稱為World Time
,那么GMT與UTC的實(shí)質(zhì)原意又是為何?世界時(shí)區(qū)又是怎么區(qū)分的?面盤(pán)上密密麻麻
的英文單字代表著什么意義與作用呢?這些都是新手在接觸兩地時(shí)間表或世界時(shí)區(qū)表
時(shí),腦海中所不斷浮現(xiàn)的種種疑問(wèn),以下將帶您一探時(shí)區(qū)奧妙的究竟。?

全球24個(gè)時(shí)區(qū)的劃分
相較于兩地時(shí)間表,可以顯示世界各時(shí)區(qū)時(shí)間和地名的世界時(shí)區(qū)表(World Time)?
,就顯得精密與復(fù)雜多了,通常世界時(shí)區(qū)表的表盤(pán)上會(huì)標(biāo)示著全球24個(gè)時(shí)區(qū)的城市名
稱,但究竟這24個(gè)時(shí)區(qū)是如何產(chǎn)生的?過(guò)去世界各地原本各自訂定當(dāng)?shù)貢r(shí)間,但隨著
交通和電訊的發(fā)達(dá),各地交流日益頻繁,不同的地方時(shí)間,造成許多困擾,于是在西?
元1884年的國(guó)際會(huì)議上制定了全球性的標(biāo)準(zhǔn)時(shí),明定以英國(guó)倫敦格林威治這個(gè)地方為?
零度經(jīng)線的起點(diǎn)(亦稱為本初子午線),并以地球由西向東每24小時(shí)自轉(zhuǎn)一周360°
,訂定每隔經(jīng)度15°,時(shí)差1小時(shí)。而每15°的經(jīng)線則稱為該時(shí)區(qū)的中央經(jīng)線,將全球劃
分為24個(gè)時(shí)區(qū),其中包含23個(gè)整時(shí)區(qū)及180°經(jīng)線左右兩側(cè)的2個(gè)半時(shí)區(qū)。?
就全球的時(shí)間來(lái)看,東經(jīng)的時(shí)間比西經(jīng)要早,也就是如果格林威治時(shí)間是中午12時(shí),
則中央經(jīng)線15°E的時(shí)區(qū)為下午1時(shí),中央經(jīng)線30°E時(shí)區(qū)的時(shí)間為下午2時(shí);反之,中央?
經(jīng)線15°W的時(shí)區(qū)時(shí)間為上午11時(shí),中央經(jīng)線30°W時(shí)區(qū)的時(shí)間為上午10時(shí)。以臺(tái)灣?
為例,臺(tái)灣位于東經(jīng)121°,換算后與格林威治就有8小時(shí)的時(shí)差。如果兩人同時(shí)從格?
林威治的0°各往東、西方前進(jìn),當(dāng)他們?cè)诮?jīng)線180°時(shí),就會(huì)相差24小時(shí),所以經(jīng)線180°
被定為國(guó)際換日線,由西向東通過(guò)此線時(shí)日期要減去一日,反之,若由東向西則要增 ,
加一日。


十七世紀(jì),格林威治皇家天文臺(tái)為了海上霸權(quán)的擴(kuò)張計(jì)畫(huà)而進(jìn)行天體觀測(cè)。1675年舊?
皇家觀測(cè)所(Old Royal Observatory) 正式成立,到了1884年決定以通過(guò)格林威治
的子午線作為劃分地球東西兩半球的經(jīng)度零度。觀測(cè)所門口墻上有一個(gè)標(biāo)志24小時(shí)的?
時(shí)鐘,顯示當(dāng)下的時(shí)間,對(duì)全球而言,這里所設(shè)定的時(shí)間是世界時(shí)間參考點(diǎn),全球都?
以格林威治的時(shí)間作為標(biāo)準(zhǔn)來(lái)設(shè)定時(shí)間,這就是我們耳熟能詳?shù)摹父窳滞螛?biāo)準(zhǔn)時(shí)間?
(Greenwich Mean Time,簡(jiǎn)稱G.M.T.)的由來(lái),標(biāo)示在手表上,則代表此表具有?
兩地時(shí)間功能,也就是同時(shí)可以顯示原居地和另一個(gè)國(guó)度的時(shí)間.
世界協(xié)調(diào)時(shí)間UTC?
多數(shù)的兩地時(shí)間表都以GMT來(lái)表示,但也有些兩地時(shí)間表上看不到GMT字樣,出現(xiàn)的?
反而是UTC這3個(gè)英文字母,究竟何謂UTC?事實(shí)上,UTC指的是Coordinated Universal
世界協(xié)調(diào)時(shí)間(又稱世界標(biāo)準(zhǔn)時(shí)間、世界統(tǒng)一時(shí)間),是經(jīng)過(guò)平均太陽(yáng)時(shí)(以格?
林威治時(shí)間GMT為準(zhǔn))、地軸運(yùn)動(dòng)修正后的新時(shí)標(biāo)以及以「秒」為單位的國(guó)際原子時(shí)所?
綜合精算而成的時(shí)間,計(jì)算過(guò)程相當(dāng)嚴(yán)謹(jǐn)精密,因此若以「世界標(biāo)準(zhǔn)時(shí)間」的角度來(lái)
說(shuō),UTC比GMT來(lái)得更加精準(zhǔn)。其誤差值必須保持在0.9秒以內(nèi),若大于0.9秒則由位
于巴黎的國(guó)際地球自轉(zhuǎn)事務(wù)中央局發(fā)布閏秒,使UTC與地球自轉(zhuǎn)周期一致。所以基本
上UTC的本質(zhì)強(qiáng)調(diào)的是比GMT更為精確的世界時(shí)間標(biāo)準(zhǔn),不過(guò)對(duì)于現(xiàn)行表款來(lái)說(shuō),?
GMT與UTC的功能與精確度是沒(méi)有差別的

從1884年起,格林威治標(biāo)準(zhǔn)時(shí)間為其他國(guó)家所承認(rèn)。無(wú)怪
現(xiàn)在人們都把英國(guó)的格林威治天文臺(tái)說(shuō)成是“時(shí)間開(kāi)始的地方”呢。

而為什么現(xiàn)代計(jì)算機(jī)(電話,電子設(shè)備)時(shí)間以1970 年 1 月 1 日的 00:00:00.000為基準(zhǔn)呢,這是Unix**, 是以Unix誕生的時(shí)間為參照確定的。

擴(kuò)展知識(shí):
Unix時(shí)間并沒(méi)有出現(xiàn)錯(cuò)誤

1234567890是個(gè)節(jié)日, 一秒鐘的節(jié)日. 它不是問(wèn)題, 不是錯(cuò)誤, 不是BUG. 我們?nèi)祟愂褂玫挠?jì)時(shí)系統(tǒng)是相當(dāng)復(fù)雜的:秒是基本單位, 60秒為1分鐘, 60分鐘為1小時(shí), 24小時(shí)是一天......如果計(jì)算機(jī)也使用相同的方式來(lái)計(jì)時(shí), 那顯然就要用多個(gè)變量來(lái)分別存放年月日時(shí)分秒, 不停的進(jìn)行進(jìn)位運(yùn)算, 而且還要處理偶爾的閏年和閏秒以及協(xié)調(diào)不同的時(shí)區(qū). 基于"追求簡(jiǎn)單"的設(shè)計(jì)理念, UNIX在內(nèi)部采用了一種最簡(jiǎn)單的計(jì)時(shí)方式:?

計(jì)算從UNIX誕生[注釋1]的UTC時(shí)間1970年1月1日0時(shí)0分0秒起, 流逝的秒數(shù). UTC時(shí)間1970年1月1日0時(shí)0分0秒就是UNIX時(shí)間0, UTC時(shí)間1970年1月2日0時(shí)0分0秒就是UNIX時(shí)間86400. 這個(gè)計(jì)時(shí)系統(tǒng)被所有的UNIX和UNIX-like系統(tǒng)繼承了下來(lái), 而且影響了許多非UNIX系統(tǒng). POSIX標(biāo)準(zhǔn)推出后, 這個(gè)時(shí)間也被稱為POSIX時(shí)間.?

UNIX時(shí)間錯(cuò)誤是誤解

可能是因?yàn)槿祟愂且环N需要精神上的刺激的生物吧, 各種歷法中都存在著各種擁有不同意義的節(jié)日. 其中, 很多節(jié)日僅僅由于日期的特殊性就被賦予了意義, 例如公歷1月1日的新年, 11月11日的光棍節(jié),愛(ài)好節(jié)日的人們也沒(méi)有放過(guò)UNIX時(shí)間. UTC時(shí)間2001年9月9日1時(shí)46分40秒, UNIX時(shí)間迎來(lái)了第一個(gè)"億禧年"(Billennium)[注釋2],??1000000000. UTC時(shí)間2005年3月18日1時(shí)58分31秒則是UNIX時(shí)間的光棍節(jié), 1111111111. 剛剛過(guò)去的1234567890, 對(duì)應(yīng)公歷的UTC2009年2月13日23時(shí)31分30秒, 對(duì)東一區(qū)以東的時(shí)區(qū)來(lái)說(shuō)是2月14日情人節(jié), 以西的時(shí)區(qū)來(lái)說(shuō)則剛好落在黑色星期五. 傳統(tǒng)上認(rèn)為黑色星五不吉利的西方媒體, 針對(duì)此事進(jìn)行了玩笑性的報(bào)道, 結(jié)果被一些居住在其他時(shí)區(qū)的人們誤讀成了"UNIX時(shí)間錯(cuò)誤"。

??

丹麥哥本哈根的丹麥UNIX用戶群組織慶祝UNIX"億禧年" 圖為當(dāng)時(shí)所用的倒計(jì)時(shí)公告牌

無(wú)獨(dú)有偶, 2012年7月13日也是一個(gè)黑色星期五, 而那天的UTC時(shí)間11時(shí)1分20秒對(duì)應(yīng)著UNIX時(shí)間0x50000000(十六進(jìn)制, 十進(jìn)制值是1342177280). 不知到了那個(gè)時(shí)候, 會(huì)不會(huì)再次有人把它誤解為又一次的UNIX時(shí)間錯(cuò)誤?

2038年的問(wèn)題才是混亂

UTC時(shí)間2033年5月18日3時(shí)33分20秒, 是UNIX時(shí)間的第二個(gè)"億禧年"(Billenniumm), 即2000000000. 然而, 第三個(gè)"億禧年"(Billennium)則不會(huì)毫無(wú)障礙的來(lái)臨, 在那之前, 人們先得解決正在變得著名的2038年問(wèn)題. 和本世紀(jì)初的千年蟲(chóng)(Y2K Bug)問(wèn)題類似, 2038年問(wèn)題(Y2K38 BUG)更隱蔽, 而且更難解決. 我們知道計(jì)算機(jī)內(nèi)部的一切都是二進(jìn)制的, 也就是說(shuō)1234567890在32位系統(tǒng)的內(nèi)存里實(shí)際上是01001001 10010110 00000010 11010010. 這串32位二進(jìn)制數(shù)中, 最高位被用來(lái)表示正負(fù)符號(hào), 0代表整數(shù), 1代表負(fù)數(shù), 所以它能表示的最大數(shù)字就是01111111 11111111 11111111 11111111, 即214748367, 對(duì)應(yīng)公歷的UTC時(shí)間2038年1月19日3時(shí)14分7秒. 到這天的凌晨3時(shí)14分8秒, UNIX時(shí)間會(huì)溢出并變成10000000 00000000 00000000 00000000(十進(jìn)制值-214748368), 也就是UTC時(shí)間1901年12月13日20時(shí)45分52秒, 引起和千年蟲(chóng)類似的混亂.?



2038年問(wèn)題的動(dòng)畫(huà)演示?

或許64位可以解決這個(gè)問(wèn)題

2038年問(wèn)題不僅比千年蟲(chóng)更隱蔽, 而且它的原因也更接近系統(tǒng)底層. 要解決這個(gè)問(wèn)題, 最簡(jiǎn)單的方式是擴(kuò)展UNIX時(shí)間的長(zhǎng)度, 用64位數(shù)字來(lái)表示它. 64位二進(jìn)制數(shù)的實(shí)際可用位數(shù)是63位, 最大表示到公歷的UTC時(shí)間292277026596年12月4日. 如果那個(gè)時(shí)候人類文明還存在的話, 公元紀(jì)年很可能已經(jīng)因?yàn)樘y用而被拋棄了. 理想的情況是到2038年, 64位系統(tǒng)已經(jīng)成為主流, 從而避免特意去修正這個(gè)問(wèn)題所需要的大量開(kāi)銷. 否則, 人們就必須把新的64位時(shí)間拆分成兩部分并分別保存在兩個(gè)變量里, 這是一個(gè)麻煩而且效率低下的選擇.?

[注釋1]: 就像很多其他的節(jié)日一樣, 把UNIX的誕生日選在這天只是出于方便. 實(shí)際上, 最早的運(yùn)行在PDP-7上的UNIX在1969年就已經(jīng)完成了.?

[注釋2]: Billennium實(shí)際上是"十億禧年", 但是這樣聽(tīng)起來(lái)很奇怪, 所以我用"億禧年"作為暫用名.?

總結(jié)

以上是生活随笔為你收集整理的关于1970-1-1 00:00.000的知识【转】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。