UTF-1是一種將ISO 10646 / Unicode轉化成位元組流的方式。由於其本身的設計問題,如果自中間的一個字元開始解碼,UTF-1將無法重新同步(這造成擷取的困難),而且UTF-1也沒辦法進行可靠的位元組搜尋。又因為UTF-1使用的除數不是2的冪,所以轉化得也相當緩慢。由於以上這些問題,UTF-1從來沒有得到廣泛採用,並已被UTF-8所取代。
設計
UTF-1是一個類似於UTF-8的多位元組編碼;一個單一的Unicode代碼點可以被編碼成一個、兩個、三個或五個八位位元組。而如同UTF-8,ASCII碼系列可被編碼為一個八位位元組,ASCII碼的八位位元組0X21 - 0x7E(十進制數33-126)也被用於UTF-1多位元組編碼;所以UTF-1不適合於許多網際網路協定,包括MIME。
UTF-1在其他編碼里不使用C0和C1控制碼-任何0x00-0X20或0x7F-0x9F的八位位元組代表相應的在ISO-8859-1的編碼位置(分別為U+0000-0020和U+007F-009F)。這種設計有66個八位位元組的保護力求與ISO 2022相容。
UTF-1編碼系統使用190的求模運算(256-66=190),它被設計用來對完整的31位元原版通用字元集(UCS-4)進行編碼。相比較而言,UTF-8保護所有128個ASCII八位位元組,而且需要兩個跟蹤位元組的多位元組編碼才能達成這個目的,它構成對64的求模運算(8-2=6, 26=64)。BOCU-1只保護所需的相容MIME的極小集(0x00,0X07-0X0F,0X1A-0X1B和0X20),構成對243的求模運算(256-13=243)。
編碼位置 | UTF-16BE | UTF-16LE | UTF-8 | UTF-1 |
---|---|---|---|---|
U+007F | 007F | 7F00 | 7F | 7F |
U+0080 | 0080 | 8000 | C280 | 80 |
U+009F | 009F | 9F00 | C29F | 9F |
U+00A0 | 00A0 | A000 | C2A0 | A0A0 |
U+00BF | 00BF | BF00 | C2BF | A0BF |
U+00C0 | 00C0 | C000 | C380 | A0C0 |
U+00FF | 00FF | FF00 | C3BF | A0FF |
U+0100 | 0100 | 0001 | C480 | A121 |
U+015D | 015D | 5D01 | C59D | A17E |
U+015E | 015E | 5E01 | C59E | A1A0 |
U+01BD | 01BD | BD01 | C6BD | A1FF |
U+01BE | 01BE | BE01 | C6BE | A221 |
U+07FF | 07FF | FF07 | DFBF | AA72 |
U+0800 | 0800 | 0008 | E0A080 | AA73 |
U+0FFF | 0FFF | FF0F | E0BFBF | B548 |
U+1000 | 1000 | 0010 | E18080 | B549 |
U+4015 | 4015 | 1540 | E48095 | F5FF |
U+4016 | 4016 | 1640 | E48096 | F62121 |
U+D7FF | D7FF | FFD7 | ED9FBF | F72FC3 |
U+E000 | E000 | 00E0 | EE8080 | F73A79 |
U+F8FF | F8FF | FFF8 | EFA3BF | F75C3C |
U+FDD0 | FDD0 | D0FD | EFB790 | F762BA |
U+FDEF | FDEF | EFFD | EFB7AF | F762D9 |
U+FEFF | FEFF | FFFE | EFBBBF | F7644C |
U+FFFD | FFFD | FDFF | EFBFBD | F765AD |
U+FFFE | FFFE | FEFF | EFBFBE | F765AE |
U+FFFF | FFFF | FFFF | EFBFBF | F765AF |
U+10000 | D800DC00 | 00D800DC | F0908080 | F765B0 |
U+38E2D | D8A3DE2D | A3D82DDE | F0B8B8AD | FBFFFF |
U+38E2E | D8A3DE2E | A3D82EDE | F0B8B8AE | FC21212121 |
U+FFFFF | DBBFDFFF | BFDBFFDF | F3BFBFBF | FC2137B27A |
U+100000 | DBC0DC00 | C0DB00DC | F4808080 | FC2137B27B |
U+10FFFF | DBFFDFFF | FFDBFFDF | F48FBFBF | FC21396E6C |
參見
參考文獻
- ISO IR 178 (PDF,256 KB,不再被使用的UTF-1規範)
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.