青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

 

unicode,mbcs,utf-8,utf-16,utf-32,big endian,little endian

ASCII(American Standard Code for Information Interchange)

? 美國信息交換標準代碼,這是計算機上最早使用的通用的編碼方案。那個時候計算機還只是拉丁文字的專利,根本沒有想到現(xiàn)在計算機的發(fā)展勢頭,如果想到了,可能一開始就會使用 unicode 了。當時絕大部分專家都認為,要用計算機,必須熟練掌握英文。這種編碼占用 7 Bit ,在計算機中占用一個字節(jié), 8 位,最高位沒用,通訊的時候有時用作奇偶校驗位。因此 ASCII 編碼的取值范圍實際上是: 0x00-0x7f, 只能表示 128 個字符。后來發(fā)現(xiàn) 128 個不太夠用,做了擴展,叫做 ASCII 擴展編碼,用足八位,取值范圍變成: 0x00-0xff, 能表示 256 個字符。其實這種擴展意義不大,因為 256 個字符表示一些非拉丁文字遠遠不夠,但是表示拉丁文字,又用不完。所以擴展的意義還是為了下面的 ANSI 編碼服務。

ANSI American National Standard Institite

美國國家標準協(xié)會,也就是說,每個國家(非拉丁語系國家)自己制定自己的文字的編碼規(guī)則,并得到了 ANSI 認可,符合 ANSI 的標準,全世界在表示對應國家文字的時候都通用這種編碼就叫 ANSI 編碼。換句話說,中國的 ANSI 編碼和在日本的 ANSI 的意思是不一樣的,因為都代表自己國家的文字編碼標準。比如中國的 ANSI 對應就是 GB2312 標準,日本就是 JIT 標準,香港,臺灣對應的是 BIG5 標準等等。當然這個問題也比較復雜,微軟從 95 開始,用就是自己搞的一個標準 GBK GB2312 里面只有 6763 個漢字, 682 個符號,所以確實有時候不是很夠用。 GBK 一直能和 GB2312 相互混淆并且相安無事的一個重要原因是 GBK 全面兼容 GB2312 ,所以沒有出現(xiàn)任何沖突,你用 GB2312 編碼的文件通過 GBK 去解釋一定能獲得相同的顯示效果,換句話說: GBK GB2312 就是,你有的,我也有,你沒得的,我還有!

?

好了, ANSI 的標準是什么呢,首先是 ASCII 的代碼你不能用!也就是說 ASCII 碼在任何 ANSI 中應該都是相同的。其他的,你們自己擴展。所以呢,中國人就把 ASCII 碼變成 8 位, 0x7f 之前我不動你的,我從 0xa0 開始編, 0xa0 0xff 95 個碼位,對于中國字那簡直是杯水車薪,因此,就用兩個字節(jié)吧,因此編碼范圍就從 0xA1A1 - 0xFEFE ,這個范圍可以表示

23901 個漢字。基本夠用了吧, GB2312 7000 多個呢! GBK 更猛,編碼范圍是從 0x8140 - 0xFEFE, 可以表示 3 萬多個漢字。可以看出,這兩種方案,都能保證漢字頭一個字節(jié)在 0x7f 以上,從而和 ASCII 不會發(fā)生沖突。能夠?qū)崿F(xiàn)英文和漢字同時顯示。 BIG5 ,香港和臺灣用的比較多,繁體,范圍: 0xA140 - 0xF9FE, 0xA1A1 - 0xF9FE ,每個字由兩個字節(jié)組成,其第一

字節(jié)編碼范圍為 0xA1~0xF9 ,第二字節(jié)編碼范圍為 0x40-0x7E 0xA1-0xFE ,總計收入 13868 個字 ( 包括 5401 個常用字、 7652 個次常用字、 7 個擴充字、以及 808 個各式符號 )

?

那么到底 ANSI 是多少位呢?這個不一定!比如在 GB2312 GBK BIG5 中,是兩位!但是其他標準或者其他語言如果不夠用,就完全可能不止兩位!

例如: GB18030:
GB18030-2000(GBK2K)
GBK 的基礎上進一步擴展了漢字,增加了藏、蒙等少數(shù)民族的字形。 GBK2K 從根本上解決了字位不夠,字形不足的問題。它有幾個特點:它并沒有確定所有的字形,只是規(guī)定了編碼范圍,留待以后擴充。編碼是變長的,其二字節(jié)部分與 GBK 兼容;四字節(jié)部分是擴充的字形、字位,其編碼范圍是首字節(jié) 0x81-0xfe 、二字節(jié)

0x30-0x39 、三字節(jié) 0x81-0xfe 、四字節(jié) 0x30-0x39 。它的推廣是分階段的,首先要求實現(xiàn)的是能夠完全映射到 Unicode3.0 標準的所有字形。它是國家標準,是強制性的。

搞懂了 ANSI 的含義,我們發(fā)現(xiàn) ANSI 有個致命的缺陷,就是每個標準是各自為陣的,不保證能兼容。換句話說,要同時顯示中文和日本文或者阿拉伯文,就完全可能會出現(xiàn)一個編碼兩個字符集里面都有對應,不知道該顯示哪一個的問題,也就是編碼重疊的問題。顯然這樣的方案不好,所以 Unicode 才會出現(xiàn)!

3.MBCS Multi-Byte Chactacter System Set)

? 多字節(jié)字符系統(tǒng)或者字符集,基于 ANSI 編碼的原理上,對一個字符的表示實際上無法確定他需要占用幾個字節(jié)的,只能從編碼本身來區(qū)分和解釋。因此計算機在存儲的時候,就是采用多字節(jié)存儲的形式。也就是你需要幾個字節(jié)我給你放幾個字節(jié),比如 A 我給你放一個字節(jié),比如 " ,我就給你放兩個字節(jié),這樣的字符表示形式就是 MBCS

在基于 GBK windows 中,不會超過 2 個字節(jié),所以 windows 這種表示形式有叫做 DBCS Double-Byte Chactacter System ),其實算是 MBCS 的一個特例。

C 語言默認存放字符串就是用的 MBCS 格式。從原理上來說,這樣是非常經(jīng)濟的一種方式。
4.CodePage

代碼頁,最早來自 IBM ,后來被微軟, oracle ,SAP 等廣泛采用。因為 ANSI 編碼每個國家都不統(tǒng)一,不兼容,可能導致沖突,所以一個系統(tǒng)在處理文字的時候,必須要告訴計算機你的 ANSI 是哪個國家和地區(qū)的標準,這種國家和標準的代號(其實就是字符編碼格式的代號),微軟稱為 Codepage 代碼頁,其實這個代碼頁和字符集編碼的意思是一樣的。告訴你代碼頁,本質(zhì)就是告訴了你編碼格式。但是不同廠家的代碼頁可能是完全不同,哪怕是同樣的編碼,比如, UTF-8 字符編碼 IBM 對應的代碼頁是 1208 ,在微軟對應的是 65001, 在德國的 SAP 公司對應的是 4110 。所以啊,其實本來就是一個東西,大家各自為政,搞那么多新名詞,實在沒必要!所以標準還是很重要的!!!

比如 GBK 的在微軟的代碼頁是 936 ,告訴你代碼頁是 936 其實和告訴你我編碼格式是 GBK 效果完全相同。那么處理文本的時候就不會有問題,不會去考慮某個代碼是顯示的韓文還是中文,同樣,日文和韓文的代碼頁就和中文不同,這樣就可以

避免編碼沖突導致計算機不知如何處理的問題。當然用這個也可以很容易的切換語言版本。
但是這都是治標不治本的方法,還是無法解決同時顯示多種語言的問題,所以最后還是都用 unicode 吧,永遠不會有沖突了。

5.Unicode(Universal Code)

? 這是一個編碼方案,說白了就是一張包含全世界所有文字的一個編碼表,不管你用的上,用不上,不管是現(xiàn)在用的,還是以前用過的,只要這個世界上存在的文字符號,統(tǒng)統(tǒng)給你一個唯一的編碼,這樣就不可能有任何沖突了。不管你要同時顯示任何文字,都沒有問題。
?
因此在這樣的方案下, Unicode 出現(xiàn)了。 Unicode 編碼范圍是: 0-0x10FFFF ,可以容納 1114112 個字符, 100 多萬啊。全世界的字符根本用不完了, Unicode 5.0 版本中,才用了 238605 個碼位。所以足夠了。

因此從碼位范圍看,嚴格的 unicode 需要 3 個字節(jié)來存儲。但是考慮到理解性和計算機處理的方便性,理論上還是用 4 個字節(jié)來描述。

Unicode 采用的漢字相關編碼用的是《 CJK 統(tǒng)一漢字編碼字符集》 國家標準 GB13000.1 是完全等同于國際標準《通用多八位編碼字符集 (UCS) ISO 10646.1 。《 GB13000.1 》中最重要的也經(jīng)常被采用的是其雙字節(jié)形式的基本多文種平面。在這 65536 個碼位的空間中,定義了幾乎所有國家或地區(qū)的語言文字和符號。其中從 0x4E00 0x9FA5 的連續(xù)區(qū)域包含了 20902 個來自中國(包括臺灣)、日本、韓國的漢字,稱為 CJK (Chinese Japanese Korean) 漢字。 CJK 是《 GB2312-80 》、《 BIG5 》等字符集的超集。 CJK 包含了中國,日本,韓國,越南,香港,也就是 CJKVH 。這個在 UNICODE Charset chart 中可以明顯看到。 unicode 的相關標準可以從 unicode.org 上面獲得,目前已經(jīng)進行到了 6.0 版本。

下面這段描述來自百度百科:
Unicode
字符集可以簡寫為 UCS Unicode Character Set )。早期的 ? unicodeUnicode 標準有 UCS-2 UCS-4 的說法。 UCS-2 用兩個字節(jié)編碼, UCS-4 4 個字節(jié)編碼。 UCS-4 根據(jù)最高位為 0 的最高字節(jié)分成 2^7=128 group 。每個 group 再根據(jù)次高字節(jié)分為 256 個平面( plane )。每個平面根據(jù)第 3 個字節(jié)分為 256 row ),每行有 256 個碼位( cell )。 group 0 的平面 0 被稱作 BMP Basic Multilingual Plane )。將 UCS-4 BMP 去掉前面的兩個零字節(jié)就得到了 UCS-2 。每個平面有 2^16=65536 個碼位。 Unicode 計劃使用了 17 個平面,一共有 17*65536=1114112 個碼位。在 Unicode 5.0.0 版本中,已定義的碼位只有 238605 個,分布在平面 0 、平面 1 、平面 2 、平面 14 、平面 15 、平面 16 。其中平面 15 和平面 16 上只是定義了兩個各占 65534 個碼位的專用區(qū)( Private Use Area ),分別是 0xF0000-0xFFFFD 0x100000-0x10FFFD 。所謂專用區(qū),就是保留給大家放自定義字符的區(qū)域,可以簡寫為 PUA 平面 0 也有一個專用區(qū): 0xE000-0xF8FF ,有 6400 個碼位。平面 0 0xD800-0xDFFF ,共 2048 個碼位,是一個被稱作代理區(qū)( Surrogate )的特殊區(qū)域。代理區(qū)的目的用兩個 UTF-16 字符表示 BMP 以外的字符。在介紹 UTF-16 編碼時會介紹。如前所述在 Unicode 5.0.0 版本中, 238605-65534*2-6400-2408=99089 。余下的 99089 個已定義碼位分布在平面 0 、平面 1 、平面 2 和平面 14 上,它們對應著 Unicode 目前定義的 99089 個字符,其中包括 71226 個漢字。平面 0 、平面 1 、平面 2 和平面 14 上分別定義了 52080 3419 43253 337 個字符。平面 2 43253 個字符都是漢字。平面 0 上定義了 27973 個漢字。

?

6.Unicode 的實現(xiàn)方案

Unicode 其實只是一張巨大的編碼表。要在計算機里面實現(xiàn),也出現(xiàn)了幾種不同的方案。也就是說如何表示 unicode 編碼的問題。

UTF-8 UCS Transformation Format 8bit)

這個方案的意思以 8 位為單位來標識文字,注意并不是說一個文字用 8 位標識。他其實是一種 MBCS 方案,可變字節(jié)的。到底需要幾個字節(jié)表示一個符號,這個要根據(jù)這個符號的 unicode 編碼來決定,最多 4 個字節(jié)。

編碼規(guī)則如下:

Unicode 編碼 (16 進制 )     UTF-8 字節(jié)流 ( 二進制 )  
000000 - 00007F
    0xxxxxxx   
000080 - 0007FF
    110xxxxx 10xxxxxx   
000800 - 00FFFF
    1110xxxx 10xxxxxx 10xxxxxx   
010000 - 10FFFF
    11110xxx 10xxxxxx 10xxxxxx 10xxxxxx   
UTF-8
的特點是對不同范圍的字符使用不同長度的編碼。對于 0x00-0x7F 之間的字符, UTF-8 編碼與 ASCII 編碼完全相同。

UTF-8 編碼的最大長度是 4 個字節(jié)。從上表可以看出, 4 字節(jié)模板有 21 x ,即可以容納 21 位二進制數(shù)字。 Unicode 的最大碼位 0x10FFFF 也只有 21 位。

1 字的 Unicode 編碼是 0x6C49 0x6C49 0x0800-0xFFFF 之間,使用用 3 字節(jié)模板了: 1110xxxx 10xxxxxx 10xxxxxx 。將 0x6C49 寫成二進制是: 0110 1100 0100 1001 用這個比特流依次代替模板中的 x ,得到: 11100110 10110001 10001001 ,即 E6 B1 89   
2 Unicode 編碼 0x20C30 0x010000-0x10FFFF 之間,使用用 4 字節(jié)模板了: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

0x20C30 寫成 21 位二進制數(shù)字(不足 21 位就在前面補 0 ): 0 0010 0000 1100 0011 0000 ,用這個比特流依次代替模板中的 x ,得到: 11110000 10100000 10110000 10110000 ,即 F0 A0 B0 B0

2 UTF-16
?UTF-16
編碼以 16 位無符號整數(shù)為單位。注意是 16 位為一個單位,不表示一個字符就只有 16 位。現(xiàn)在機器上的 unicode 編碼一般指的就是 UTF-16 。絕大部分 2 個字節(jié)就夠了,但是不能絕對的說所有字符都是 2 個字節(jié)。這個要看字符的 unicode 編碼處于什么范圍而定,有可能是 2 個字節(jié),也可能是 4 個字節(jié)。這點請注意!
下面算法解釋來自百度百科。

我們把 Unicode? unicode 編碼記作 U 。編碼規(guī)則如下:
如果 U<0x10000 U UTF-16 編碼就是 U 對應的 16 位無符號整數(shù)(為書寫簡便,下文將 16 位無符號整數(shù)記作 WORD )。

如果 U≥0x10000 ,我們先計算 U'=U-0x10000 ,然后將 U' 寫成二進制形式: yyyy yyyy yyxx xxxx xxxx U UTF-16 編碼(二進制)就是: 110110yyyyyyyyyy 110111xxxxxxxxxx 。為什么 U' 可以被寫成 20 個二進制位? Unicode 的最大碼位是 0x10ffff ,減去 0x10000 后, U' 的最大值是 0xfffff ,所以肯定可以用 20 個二進制位表示。

??? 例如: Unicode 編碼 0x20C30 ,減去 0x10000 后,得到 0x10C30 ,寫成二進制是: 0001 0000 1100 0011 0000 。用前 10

位依次替代模板中的 y ,用后 10 位依次替代模板中的 x ,就得到: 1101100001000011 1101110000110000 ,即 0xD843

0xDC30   
???
按照上述規(guī)則, Unicode 編碼 0x10000-0x10FFFF UTF-16 編碼有兩個 WORD ,第一個 WORD 的高 6 位是 110110 ,第二個 WORD 的高 6 位是 110111 。可見,第一個 WORD 的取值范圍(二進制)是 11011000 00000000 11011011 11111111 ,即 0xD800-0xDBFF 。第二個 WORD 的取值范圍(二進制)是 11011100 00000000 11011111 11111111 ,即 0xDC00-0xDFFF

  為了將一個 WORD UTF-16 編碼與兩個 WORD UTF-16 編碼區(qū)分開來, Unicode 編碼的設計者將 0xD800-0xDFFF 保留下來,并稱為代理區(qū)( Surrogate ):   
D800
DB7F     High Surrogates    高位替代   
DB80
DBFF     High Private Use Surrogates    高位專用替代   
DC00
DFFF     Low Surrogates    低位替代   
??
高位替代就是指這個范圍的碼位是兩個 WORD UTF-16 編碼的第一個 WORD 。低位替代就是指這個范圍的碼位是兩個 WORD UTF-16 編碼的第二個 WORD 。那么,高位專用替代是什么意思?我們來解答這個問題,順便看看怎么由 UTF-16 編碼推導 Unicode 編碼。   
?
如果一個字符的 UTF-16 編碼的第一個 WORD 0xDB80 0xDBFF 之間,那么它的 Unicode 編碼在什么范圍內(nèi)?我們知道第二個 WORD 的取值范圍是 0xDC00-0xDFFF ,所以這個字符的 UTF-16 編碼范圍應該是 0xDB80 0xDC00 0xDBFF 0xDFFF 。我們將這個范圍寫成二進制:    1101101110000000 11011100 00000000 - 1101101111111111 1101111111111111   按

照編碼的相反步驟,取出高低 WORD 的后 10 位,并拼在一起,得到    1110 0000 0000 0000 0000 - 1111 1111 1111 1111 1111?
0xe0000-0xfffff ,按照編碼的相反步驟再加上 0x10000 ,得到 0xf0000-0x10ffff 。這就是 UTF-16 編碼的第一個 WORD 0xdb80 0xdbff 之間的 Unicode 編碼范圍,即平面 15 和平面 16 。因為 Unicode 標準將平面 15 和平面 16 都作為專用區(qū),所以

0xDB80 0xDBFF 之間的保留碼位被稱作高位專用替代。

3 UTF-32
?
這個就簡單了,和 Unicode 碼表基本一一對應,固定四個字節(jié)。
?
為什么不采用 UTF-32 呢,因為 unicode 定義的范圍太大了,其實 99% 的人使用的字符編碼不會超過 2 個字節(jié),所以如同統(tǒng)一用 4 個字節(jié),簡單倒是簡單了,但是數(shù)據(jù)冗余確實太大了,不好,所以 16 位是最好的。就算遇到超過 16 位能表示的字符,我們也可以通過上面講到的代理技術,采用 32 位標識,這樣的方案是最好的。所以現(xiàn)在絕大部分機器實現(xiàn) unicode

還是采用的 utf-16 的方案。當然也有 UTF-8 的方案。比如 windows 用的就是 UTF16 方案,不少 linux 用的就是 utf8 方案。

7. 編碼存儲差異

這里就要引出兩個名詞:
LE
little endian): 小字節(jié)字節(jié)序,意思就是一個單元在計算機中的存放時按照低位在前(低地址),高位在后(高地址)的模式存放。

BE big endian): 大字節(jié)字節(jié)序,和 LE 相反,是高位在前,低位在后。

比如一個 unicode 編碼為: 0x006C49 ,如果是 LE ,那么在文件中的存放順序應該是: 49 6c 00
如果是 BE , 那么順序應該是: 00 6c 49

8. 編碼格式的檢測

到底采用什么編碼,如果能檢測就好了。專家們也是這么想的,所以專家給每種格式和字節(jié)序規(guī)定了一些特殊的編碼,

這些編碼在 unicode 中是沒有使用的,所以不用擔心會沖突。

這個叫做 BOM Byte Order Mark )頭。意思是字節(jié)序標志頭。通過它基本能確定編碼格式和字節(jié)序。
UTF
編碼    Byte Order Mark   
UTF-8
  ???   EF BB BF   
UTF-16LE
  FF FE   
UTF-16BE
  FE FF   
UTF-32LE
  FF FE 00 00   
UTF-32BE
? 00 00 FE FF
所以通過檢測文件前面的 BOM 頭,基本能確定編碼格式和字節(jié)序。
但是這個 BOM 頭只是建議添加,不是強制的,所以不少軟件和系統(tǒng)沒有添加這個 BOM 頭(所以有些軟件格式中有帶 BOM 頭和 NoBOM 頭的選擇),這個時候要檢測什么格式,就比較麻煩了當然可以檢測,但是不能保證 100% 準確,只能通過編碼范圍從概率上來檢查,雖然準確度還是比較高,但是不能保證 100% 。所以,時常看到檢測錯誤的軟件,也不奇怪了。

總結:
??
終于寫完了,其實這些問題都是不統(tǒng)一導致的,屬于歷史問題,所以才會有這些困惑,這里也呼吁所有的軟件 開發(fā)人員自覺的采用 Unicode 標準進行文字處理,我相信在不久的將來,這些困擾都不會存在了,因為所有軟件都是 unicode d , 只要有字庫,任何文字都能同時顯示,也可以到任何語言的平臺上的去運行,不再有亂碼的困惑!其實現(xiàn)在絕大部分軟件已經(jīng)是這么做的了!
??
另外也不要被很多名詞屬于所迷惑,其實這些只是標準的問題,根本沒有什么新的東西,更沒有什么復雜的東西。

?

摘自 http://blog.csdn.net/softman11/archive/2011/01/08/6124345.aspx

?

posted on 2011-08-19 00:20 Vcer-JZ 閱讀(444) 評論(0)  編輯 收藏 引用 所屬分類: MFC

導航

統(tǒng)計

隨筆分類

隨筆檔案

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧洲免费视频| 最近中文字幕日韩精品| 国产精品va| 欧美区国产区| 国产精品盗摄一区二区三区| 国产精品久久999| 欧美视频在线观看免费| 国产精品高潮呻吟| 国产欧美日韩高清| 国产一区二区三区高清播放| 国内偷自视频区视频综合| 亚洲国产精品综合| 亚洲午夜激情免费视频| 久久久久国产精品一区| 亚洲高清在线观看一区| 亚洲网站在线播放| 久久亚洲春色中文字幕| 欧美日韩亚洲一区二区三区在线观看| 国产精品亚洲一区二区三区在线| 一区二区三区在线高清| 一区二区三区精品视频| 久久精品免费| 日韩午夜电影| 久久久免费精品| 国产精品盗摄久久久| 狠色狠色综合久久| 亚洲视频一区在线| 麻豆成人综合网| 亚洲私人影院在线观看| 美女啪啪无遮挡免费久久网站| 欧美深夜影院| 最新国产乱人伦偷精品免费网站| 欧美一区二区精品在线| 国产又爽又黄的激情精品视频| 在线看片欧美| 欧美一区二区三区四区夜夜大片| 美女精品在线观看| 亚洲愉拍自拍另类高清精品| 久热精品视频在线观看一区| 国产精品美女久久久久久2018| 在线播放亚洲一区| 欧美一区二区久久久| 日韩天堂av| 欧美区一区二区三区| 91久久香蕉国产日韩欧美9色| 久久精品人人做人人爽电影蜜月| 亚洲一级黄色片| 国产精品久久久| 亚洲欧美另类久久久精品2019| 亚洲精品国产无天堂网2021| 蘑菇福利视频一区播放| 亚洲国产视频a| 欧美二区不卡| 欧美77777| 9l视频自拍蝌蚪9l视频成人| 亚洲欧洲在线观看| 欧美日韩精品三区| 亚洲无玛一区| 在线一区欧美| 国产精自产拍久久久久久| 午夜在线视频观看日韩17c| 亚洲一区久久| 红桃视频国产一区| 美国成人直播| 久久综合九色九九| 亚洲精品国产品国语在线app| 欧美国产精品v| 欧美精品乱人伦久久久久久| 一本色道久久综合亚洲精品按摩| 亚洲美女av电影| 欧美日韩中文字幕精品| 午夜精品999| 欧美一区二区三区在线观看视频 | 免费成人av在线看| 欧美一区国产二区| 伊人狠狠色丁香综合尤物| 欧美成人精品在线视频| 欧美激情91| 亚洲免费影视| 欧美主播一区二区三区美女 久久精品人| 国产欧美一区二区精品婷婷| 久久人人97超碰国产公开结果 | 麻豆精品国产91久久久久久| 在线观看欧美成人| 亚洲国产视频a| 国产精品久久久久久久久借妻| 欧美在线观看一二区| 久久亚洲精品中文字幕冲田杏梨 | 一区二区三区免费网站| 欧美性色视频在线| 久久精品青青大伊人av| 久久只有精品| 亚洲午夜免费视频| 久久久www成人免费无遮挡大片| 亚洲黄色毛片| 亚洲砖区区免费| 亚洲美女淫视频| 久久国产精品99国产| 一区二区三区www| 久久久久国产精品一区三寸| 一本色道久久综合亚洲精品婷婷| 午夜精品99久久免费| 日韩亚洲一区二区| 久久精品在线播放| 亚洲欧美一区二区精品久久久| 久久亚洲综合| 久久精品99国产精品酒店日本| 欧美激情一区二区三区四区| 久久乐国产精品| 国产农村妇女毛片精品久久莱园子| 美女精品国产| 国产视频一区免费看| 亚洲免费成人| 亚洲精品一级| 久久在精品线影院精品国产| 欧美一区二区三区男人的天堂| 欧美人与性动交α欧美精品济南到| 看欧美日韩国产| 国产情侣久久| 亚洲一区视频| 亚洲免费视频一区二区| 欧美激情网友自拍| 亚洲福利av| 一区二区三区在线观看视频| 亚洲欧美日韩精品久久| 亚洲综合视频网| 欧美日韩在线视频一区| 亚洲福利视频专区| 亚洲国产三级在线| 蜜桃伊人久久| 欧美国产视频在线观看| 激情久久一区| 欧美在线视频一区| 久久国产精品久久精品国产| 国产精品久久久久久亚洲毛片| 99re6热只有精品免费观看| 日韩写真视频在线观看| 欧美成人中文| 亚洲国产天堂久久综合网| 亚洲国产日韩欧美在线99| 久久尤物电影视频在线观看| 乱中年女人伦av一区二区| 精品成人国产| 另类人畜视频在线| 亚洲二区在线视频| 99在线热播精品免费99热| 欧美日韩精品免费观看视频完整 | 久久精品亚洲热| 美日韩精品视频| 91久久嫩草影院一区二区| 欧美激情亚洲综合一区| 亚洲在线观看视频网站| 欧美日韩欧美一区二区| 一区二区三区欧美日韩| 欧美亚洲一区| 亚洲成色777777女色窝| 欧美肥婆bbw| 99精品福利视频| 香蕉视频成人在线观看| 黑人操亚洲美女惩罚| 美女网站久久| 一二三四社区欧美黄| 久久精品在线观看| 91久久综合亚洲鲁鲁五月天| 亚洲国产成人久久综合一区| 亚洲欧美国产另类| 久久久噜噜噜久久狠狠50岁| 国产精品一二一区| 欧美亚洲视频在线观看| 欧美伊久线香蕉线新在线| 亚洲国产另类久久精品| 亚洲视频在线观看三级| 国产区日韩欧美| 亚洲黄色大片| 国产精品久久久久久妇女6080 | 久久综合九色| 欧美精品激情blacked18| 狠狠色综合网| 男男成人高潮片免费网站| 亚洲欧美综合国产精品一区| 久久久久久久久岛国免费| 亚洲福利视频二区| 欧美在线播放| 亚洲伦理中文字幕| 国产一区日韩二区欧美三区| 欧美日韩国产一级片| 久久久久久久综合日本| 亚洲视频一区二区在线观看| 欧美国产日韩视频| 久久精品一区二区| 午夜精品成人在线| 日韩午夜中文字幕| 极品尤物一区二区三区| 国产精品一区二区在线观看网站| 欧美激情aⅴ一区二区三区| 久久久xxx| 欧美专区一区二区三区| 亚洲专区在线| 一区二区欧美在线| 亚洲国产精品一区二区三区|