日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

兩位巨佬吃了一頓晚飯,整個互聯網徹底被改變了!

來源: 責編: 時間:2024-07-17 16:54:26 668觀看
導讀1992年9月, 一個周三的下午,貝爾實驗室。 Rob Pike (Go語言發明人之一) 正在操作系統Plan 9 上忙碌,這是繼Unix之后的一個大工程, 馬上就要完工了, 這個時候他突然接到了一個電話。 電話是IBM的人打來的,他們正在奧斯汀參

1992年9月, 一個周三的下午,貝爾實驗室。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob Pike (Go語言發明人之一) 正在操作系統Plan 9 上忙碌,這是繼Unix之后的一個大工程, 馬上就要完工了,  這個時候他突然接到了一個電話。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

(年輕帥氣的Rob Pike)pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

電話是IBM的人打來的,他們正在奧斯汀參加X/Open 委員會會議, 想請Rob Pike 和 Ken Thomson (Unix發明人) 對他們設計的一個Unicode編碼進行評審。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob Pike知道X/Open委員會主要負責制定Unix上的標準規范,以便提高應用程序的在不同Unix變體上的移植性。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

很明顯,這一次會議的主題是:編碼!pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob Pike想到了自己正在忙活的操作系統Plan 9 , 為了支持全世界的語言如英文、中文、韓文、日文、阿拉伯文...... Plan 9 當然要用Unicode 。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

(這貨怎么和Go的吉祥物長得如此之像?)pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

大家都知道Unicode只是規定了每個字符用什么編碼,但是沒有規定如何去存儲, 當時Plan 9 采用了一個叫做ISO 10646 UTF編碼, 但是這個編碼實在不怎么樣, 按照Rob Pike的話說:我們恨這個編碼。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob 和 Ken 立刻意識到:機會來了 !pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob :我們有豐富的經驗, 為什么不設計一個真正好用的Unicode存儲標準呢? pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Ken :同意, 我們設計出來,把標準推廣的事情交給X/Open委員會。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

倆人向IBM的人表達了這個想法, 得到了支持,條件是: 一定要快,快速設計、快速實現。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

因為下周一就要投票表決了!pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

對于天才程序員來說,快速、高質量把活兒搞定就是小菜一碟。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Ken :還記得《老婆離家三周,我開發了一個操作系統嗎?》pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

他們倆慢悠悠地去餐廳吃飯,在吃飯期間,Ken 和 Rob就把基本的方案給設計出來了,這就是大名鼎鼎的UTF-8。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

回到貝爾實驗室,他們就把想法寫成了提綱,發給了X/Open 委員會的人, 委員會的回復是: pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

這比我們設計的版本好多了,你們什么時候能實現它? pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob 和Ken 拍著胸脯說:放心吧,下周一肯定能有一個完整的、可以運行的實現。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

當天晚上(周三),他們倆就卷起袖子干活, Ken 把packing和unpacking的代碼搞定, Rob則去折騰C和圖形庫相關的東西。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

周四,所有的代碼都已完成,開始將Plan 9操作系統上的文本文件轉成UTF-8 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

周五,Plan 9 操作系統就已經運行在UTF-8上面了。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

實際花費不到三天!pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

這三天的工作成果最終統治了整個互聯網的編碼標準, 統計顯示, 現在96.8%的Web網站在使用UTF-8。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

圖片圖片pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

故事講完了,我們來看看為什么UTF-8能流行起來。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

前面說過Unicode只是一個字符集,它規定了每個字符的二進制代碼,例如“碼” , 對應的Unicode 是7801 , 二進制是pcE28資訊網——每日最新資訊28at.com

111 1000 0000 0001pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

需要兩個字節來保存, 如果表示其他更大范圍的字符,可能需要3個字節或者4個字節,甚至更多。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

當計算機面對這兩個字節的字節流的時候,就會出現嚴重的問題:計算機怎么知道這兩個字節表示的是一個字符?還是兩個字符?pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

大家知道英文字母用一個字節保存就夠了,如果Unicode規定每個英文字符也用兩個字節或三個字節來保存,那每個英文字母前面勢必要補上0, 文本文件要大兩到三倍。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

這是巨大的浪費,肯定不行。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

Rob和Ken的設計的UTF-8就比較聰明, 看看這個表:pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

圖片圖片pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

把Unicode 轉換成UTF-8,非常簡單,比如漢字“碼” , Unicode 是7801 , 二進制是 111 1000 0000 0001pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

7801對應上圖的第三行,只要把二進制從右向左填到對應的“模板”中就行,不夠的補零pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

圖片圖片pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

更多的細節就不展開了,關鍵要看看UTF-8有什么好處。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

1. 兼容ASCII, 表格中的第一行就是為ASCII所設。 

pcE28資訊網——每日最新資訊28at.com

多字節編碼的每個字節的最高位永遠是 1,而 ASCII 字符編碼的最高位是 0,所以從根本上杜絕了編碼沖突。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

2. 第一個字節就指明了后續的長度

pcE28資訊網——每日最新資訊28at.com

當程序面對一個字節流的時候,只需要讀出第一個字節最前面有幾個1 ,就知道這個字符的長度,解碼很方便。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

圖片圖片pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

3. 前綴碼

pcE28資訊網——每日最新資訊28at.com

大家仔細觀察下, UTF-8中沒有任何合法字符是其他字符的前綴, 這樣就帶來了一個好處:支持程序快速地跳過有問題的字節,然后正常解碼。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

假設有兩個中文 “碼” 和 “農”, 對應的UTF-8編碼為E7A081(碼) and E5869C(農)。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

但是網絡傳輸丟失了一些數據,變成了 E781 E5869C   (即“碼”的A0丟失了)pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

現在程序先讀到了E7, 二進制是 1110 0111,它就知道這個字符應該是3字節的, 并且后面的兩個字節都應該以10 開頭。 pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

于是它就要再讀兩個字節, 因為A0這個字節丟失了, 程序讀到了81 和 E5。 pcE28資訊網——每日最新資訊28at.com

程序就發現: pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

81 (二進制10000001) 是符合規范的pcE28資訊網——每日最新資訊28at.com

E5(二進制11100101)的開始兩個bit不是10啊, 這應該是另外一個字符的開始。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

所以程序就判斷出有字符丟失了,可以丟棄剛讀到的E7 81 , 然后從E5開始讀取, E5 86 9C ,最終顯示“農”字。pcE28資訊網——每日最新資訊28at.com

pcE28資訊網——每日最新資訊28at.com

是不是很巧妙?pcE28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-101379-0.html兩位巨佬吃了一頓晚飯,整個互聯網徹底被改變了!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Trip.com QUIC 高可用及性能提升

下一篇: 基于Netty的自研流系統緩存實現挑戰: 內存碎片與OOM困境

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
欧美午夜一区二区三区免费大片| 欧美在线网站| 亚洲欧洲一区二区在线观看| 亚洲欧洲一区二区在线播放| 在线一区二区三区四区五区| 午夜宅男久久久| 久久精品成人欧美大片古装| 欧美α欧美αv大片| 欧美午夜一区二区三区免费大片 | 黄色成人av| 亚洲日韩中文字幕在线播放| 亚洲久久一区| 欧美一级日韩一级| 美腿丝袜亚洲色图| 欧美性猛片xxxx免费看久爱| 国产主播在线一区| 日韩性生活视频| 欧美一级二级三级蜜桃| 欧美h视频在线| 国产精品免费电影| 亚洲第一搞黄网站| 亚洲色在线视频| 久久综合久久综合这里只有精品| 欧美日韩影院| 在线精品福利| 午夜精品久久久久久久99黑人| 蜜臀久久99精品久久久久久9| 国产精品盗摄一区二区三区| 亚洲成色777777女色窝| 亚洲一区欧美激情| 欧美成在线观看| 国产亚洲欧美激情| 亚洲午夜国产一区99re久久 | 国产伪娘ts一区| 99精品欧美一区二区三区综合在线 | 国产精品久久久久久久久免费桃花| 黄色日韩在线| 亚洲综合日韩| 欧美日韩国产一中文字不卡| 一区在线视频| 香蕉亚洲视频| 欧美视频一区二区| 亚洲人成在线播放| 久久久一区二区| 国产啪精品视频| 亚洲网站在线观看| 欧美日韩国产成人高清视频| 国内外成人在线| 午夜精品久久| 国产精品理论片| 日韩视频在线你懂得| 老鸭窝91久久精品色噜噜导演| 国产精品一区免费在线观看| 99国产精品久久久久老师| 老司机一区二区| 国产在线播放一区二区三区| 亚洲欧美影院| 国产精品国产三级欧美二区| 亚洲久久一区二区| 欧美~级网站不卡| 亚洲高清网站| 麻豆av一区二区三区| 国产综合网站| 久久经典综合| 国产一区二区三区高清| 午夜精品视频在线观看一区二区| 欧美日本韩国一区二区三区| 亚洲国产精品t66y| 蜜桃av一区二区| 亚洲大胆人体视频| 久久免费少妇高潮久久精品99| 国产无遮挡一区二区三区毛片日本| 亚洲免费人成在线视频观看| 国产精品v欧美精品∨日韩| 一本色道久久88综合日韩精品| 欧美精品在线视频观看| 亚洲精品视频二区| 欧美精品一区在线发布| 亚洲精品女人| 欧美日韩国产三级| 一本久久综合亚洲鲁鲁| 欧美视频中文在线看| 制服丝袜激情欧洲亚洲| 国产精品成人一区二区三区夜夜夜 | 欧美日韩国产美女| 在线视频欧美一区| 欧美午夜激情在线| 亚洲综合999| 国产乱人伦精品一区二区| 午夜精品一区二区三区四区 | 日韩亚洲国产欧美| 欧美另类99xxxxx| 一本色道**综合亚洲精品蜜桃冫| 欧美连裤袜在线视频| 99re6这里只有精品视频在线观看| 欧美日韩大片| 亚洲小说区图片区| 国产伦精品一区二区| 欧美中文字幕在线播放| 韩日精品在线| 免费中文字幕日韩欧美| 亚洲精品国产精品久久清纯直播| 欧美精彩视频一区二区三区| 99成人在线| 国产精品久久一级| 欧美亚洲免费在线| 在线精品视频免费观看| 欧美大片专区| 一区二区三区精品久久久| 国产精品久久二区| 欧美在线视频观看免费网站| 一区二区三区在线视频免费观看| 毛片精品免费在线观看| 99视频热这里只有精品免费| 国产精品成人一区二区三区夜夜夜| 亚洲欧美日韩区| 国产在线观看一区| 欧美成人官网二区| 这里只有精品视频在线| 国产亚洲人成a一在线v站| 久久一区亚洲| 一区二区三区不卡视频在线观看| 国产精品一区二区三区乱码| 久久一区二区三区四区| 亚洲毛片视频| 国产欧美韩日| 免费日本视频一区| 亚洲天堂视频在线观看| 欧美午夜精品久久久久久浪潮 | 欧美色视频一区| 亚洲欧美日韩精品久久| 一区二区在线视频| 欧美日韩一二三区| 欧美一区二区三区在线视频| 亚洲高清色综合| 国产精品美女久久久| 噜噜噜噜噜久久久久久91 | 亚洲精品日韩在线| 国产婷婷精品| 欧美国产日本在线| 午夜久久资源| 亚洲国产老妈| 国产精品羞羞答答xxdd| 欧美3dxxxxhd| 性欧美xxxx视频在线观看| 亚洲精品久久嫩草网站秘色 | 国产视频久久久久| 欧美激情综合色| 久久激情综合网| 99re国产精品| 国际精品欧美精品| 欧美日韩一区二区三区免费| 久久夜色精品亚洲噜噜国产mv | 久久综合色影院| 亚洲欧美日韩一区在线| 亚洲高清在线观看一区| 国产欧美1区2区3区| 欧美久久一级| 久久嫩草精品久久久精品一| 亚洲深夜福利| 亚洲欧洲精品一区二区三区不卡 | 国产一区二区三区黄视频| 欧美日韩喷水| 另类av一区二区| 欧美一级理论性理论a| 亚洲精品美女久久7777777| 国产一区二区三区久久悠悠色av| 欧美三级电影一区| 欧美黑人在线观看| 久久久亚洲成人| 香蕉国产精品偷在线观看不卡| 亚洲乱码国产乱码精品精天堂| 韩国av一区二区三区在线观看 | 国产日韩精品在线| 欧美午夜精品电影| 欧美日本韩国一区| 久久午夜羞羞影院免费观看| 亚洲综合色噜噜狠狠| 99精品视频免费| 亚洲品质自拍| 亚洲国产精品嫩草影院| 国产一区二区三区视频在线观看| 国产精品久久久久久av下载红粉| 欧美激情一区在线观看| 六月天综合网| 久久裸体视频| 久久九九国产精品| 午夜精品美女久久久久av福利| 日韩午夜剧场| 亚洲精品日韩一| 亚洲看片一区| 亚洲人体影院| 亚洲黄色毛片| 91久久国产综合久久91精品网站| 狠狠色伊人亚洲综合成人| 国产日韩亚洲| 欧美黄色一级视频| 欧美黄色小视频| 欧美国产日韩在线| 欧美国产免费| 欧美国产日产韩国视频| 欧美激情网站在线观看| 久久www免费人成看片高清| 久久超碰97人人做人人爱|