2013-05-27 47 views
1

如果我需要ASCII格式的西里爾文字符,這意味着我需要一個擴展的ASCII表格,對吧?我想知道cp-1251是否是ASCII的擴展,如果不是它被認爲是什麼的話。我對搜索谷歌有點困惑。在一些地方,他們說這是其他擴展中的代碼頁。CP-1251是ASCII的擴展嗎?

另外,如果我有代碼206的cp-1251字符O,那麼相同字符的UTF-8值將是041E,對吧?

回答

1

ASCII是標準。這是一個7位的代碼。 它包含的值範圍爲0 .. 127. 其他所有內容都不是ASCII。

在PC上可以處理Code Pages。您可以選擇其中包含字符,你有興趣在一個代碼頁。

這可能有利於尋找到Unicode可以支持ASCII和幾乎這是有史以來發明的任何其它字符。

2

「擴展ASCII」是一個不明確的術語。

US-ASCII支持128個值(第8位是保留的)並且不支持任何西里爾碼點。 Windows 1251的前半部分將代碼點映射到相同的值範圍。 UTF-8也是如此。因此,任何編碼爲ASCII的文檔都是合法的Windows 1252,Windows 1251,UTF-8,ISO-8859-1,和其他一些編碼

編碼爲ASCII,Windows-1251或UTF-8的U + 004F(拉丁文大寫字母O)在使用十六進制編輯器查看時將具有相同的八位字節值(4F)。

對於自然語言數據,大多數非Unicode編碼應該被認爲是obsolete

1

從技術上講,ASCII是一種不包含西里爾文字符的7位格式。鑑於此,不可能真正具有真正的ASCII格式的西里爾文字符。

CP-1251是一種包含西里爾文字符的8位編碼。 CP-1251的前128個字符與ASCII相同,因此在這個意義上它是ASCII的擴展。但是,最終,CP-1251只是一種字符編碼,即字符和數字值之間的映射。

Unicode的家庭編碼有在這個時候現代的國際化應用程序的最大動力,使用UTF-8是最流行的,由於基本的ASCII字符的緊湊表示。完全使用Unicode需要能夠處理多字節字符,包括對排序,搜索和文本比較等文本處理任務使用更復雜的算法。

不幸的是,字符編碼不再像US-ASCII爲王時那麼簡單。當然,即便如此,EBCDIC等競爭對手也會淹沒水域。

幾個環節,這可能有助於:

http://www.unicode.org/

http://msdn.microsoft.com/en-us/goglobal/cc305144

http://en.wikipedia.org/wiki/Windows-1251