Manpages

NAME

Unicode - 16 位 統 一 超 級 字 符 集

描 述 (DESCRIPTION)

國 際 標 準 ISO 10646 定 義 了 通 用 字 符 集 (Universal Character Set, UCS). UCS 包 含 所 有 別 的 字 符 集 標 準 裏 的 字 符 ,並 且 保 證 了 互 換 兼 容 性 (round-trip compatibility), 也 就 是 說 , 當 一 個 字 符 串 在 UCS 和 任 何 別 的 字 符 集 之 間 轉 換 時 , 轉 換 表 可 以 保 證 不 會 有 信 息 丟 失 現 象 發 生 .

UCS 包 含 了 表 示 幾 乎 所 有 已 知 的 語 言 所 必 需 的 字 符 . 該 字 符 集 既 包 括 那 些 使 用 擴 展 拉 丁 語 的 語 言 ,也 包 括 下 面 的 這 些 語 言 : Greek, Cyrillic, Hebrew,Arabic, Armenian, Gregorian, Japanese, Chinese, Hiragana, Katakana, Korean, Hangul, Devangari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, alayam, Thai, Lao, Bopomofo,等 等 .而 另 外 的 語 言 ,例 如 Tibetian, Khmer, Runic, Ethiopian, Hieroglyphics, 各 種 Indo-European 語 言 , 還 有 許 多 其 他 的 語 言 , 正 在 被 加 入 其 中 .1993 年 發 佈 該 標 準 的 時 候 , 還 不 清 楚 怎 樣 才 能 對 後 面 加 入 的 這 些 語 言 中 的 大 部 分 作 更 好 的 編 碼 . 另 外 , 這 些 語 言 所 需 的 字 符 , 以 及 由 TeX, PostScript, MS-DOS, Macintosh, Videotext, OCR, 還 有 很 多 字 處 理 系 統 所 提 供 的 大 量 的 圖 形 , 印 刷 體 , 數 學 和 科 學 符 號 , 都 已 被 包 括 進 來 , 還 包 括 了 一 些 特 別 編 碼 以 保 證 和 所 有 其 它 已 存 在 字 符 集 標 準 的 可 逆 轉 換 兼 容 性 .

UCS 標 準 (ISO 10646) 描 述 了 一 個 31 位 字 符 集 的 體 系 , 不 過 , 目 前 只 使 用 了 前 面 65534 個 編 碼 位 置 (0x0000-0xfffd, 它 們 被 稱 爲 基 本 多 語 言 塊 (Basic Multilingual Plane,BMP)), 分 配 給 了 字 符 , 而 且 我 們 估 計 只 有 那 些 很 古 怪 的 字 符 (比 如 . Hieroglyphics)爲 了 專 門 的 科 學 目 的 , 纔 會 在 將 來 的 某 個 時 候 , 需 要 16 位 的 BMP 之 外 的 部 分 . 從 0x0000 到 0x007f 之 間 的 UCS 字 符 和 經 典 US-ASCII 字 符 集 是 一 樣 的 , 而 從 0x0000 到 0x00ff 之 間 的 字 符 等 於 ISO 8859-1 Latin-1 字 符 集 .

組 合 字 符 (COMBINING CHARACTERS)

一 些 UCS 編 碼 被 分 配 給 了 組 合 字 符 (combining characters). 這 樣 的 情 形 有 點 類 似 於 打 字 機 上 的 重 音 鍵 . 一 個 組 合 字 符 只 是 給 前 面 的 字 符 添 加 一 個 重 音 . 在 UCS 裏 最 重 要 的 重 音 字 符 都 有 他 們 自 己 的 編 碼 , 不 過 , 組 合 字 符 機 制 允 許 給 任 一 字 符 添 加 重 音 和 其 他 的 可 識 別 記 號 . 組 合 字 符 總 是 跟 在 那 些 他 們 所 修 飾 的 字 符 後 面 . 例 如 ,德 語 符 號 Umlaut-A (帶 分 音 符 的 大 寫 拉 丁 字 母 A)既 可 以 表 示 爲 UCS 編 碼 0x00c4, 也 可 以 用 一 個 正 常 的 "大 寫 拉 丁 字 母 A"後 面 跟 一 個 "組 合 分 音 符 號 ": 0x0041 0x0308 來 表 示 .

實 現 級 別 (IMPLEMENTATION LEVELS)

由 於 不 是 所 有 系 統 都 支 持 象 組 合 字 符 這 樣 的 高 級 機 制 , ISO 10646 指 明 瞭 UCS 的 三 種 實 現 級 別 : 級 別

1 (Level 1) 不 支 持 組 合 字 符 和 Hangul Jamo 字 符 (朝 鮮 語 的 一 種 更 復 雜 的 專 用 的 編 碼 , Hangul 音 節 編 碼 成 兩 或 三 個 亞 字 符 ). 級 別
2 (Level 2) 類 似 於 級 別 1, 卻 在 一 些 語 言 裏 面 也 支 持 一 些 組 合 字 符 . (比 如 . Hebrew, Arabic, Devangari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugo, Kannada, Malayalam, Thai 和 Lao). 級 別
3 (Level 3) 支 持 所 有 UCS 字 符 .

Unicode 協 會 發 布 的 Unicode 1.1 標 準 和 ISO 10646 所 描 述 的 那 樣 , 在 第 3 執 行 級 別 只 包 括 了 UCS (基 本 多 語 言 塊 Basic Multilingual Plane). Unicode 1.1 還 爲 一 些 ISO 10646 的 字 符 定 義 加 入 了 一 些 語 義 定 義 .

LINUX 下 的 UNICODE (UNICODE UNDER LINUX)

在 Linux 下 , 爲 了 降 低 組 合 字 符 的 實 現 複 雜 性 , 目 前 只 包 括 了 執 行 級 別 1 下 的 BMP. 更 高 的 執 行 級 別 更 適 合 於 專 門 的 字 處 理 格 式 , 而 不 是 一 個 普 通 的 系 統 字 符 集 . 在 linux 下 C 的 類 型 wchar_t 是 一 個 有 符 號 位 的 32 位 整 型 並 且 其 值 解 釋 爲 UCS4 編 碼 . 本 地 化 設 置 指 明 系 統 字 符 編 碼 是 使 用 諸 如 UTF-8 還 是 ISO 8859-1這 樣 的 編 碼 . 象 庫 函 數 wctomb, mbtowc, 或 者 wprintf 就 可 以 用 於 內 部 wchar_t 字 符 及 字 符 串 與 系 統 字 符 編 碼 之 間 做 轉 換 .

私 有 區 (PRIVATE AREA)

BMP 裏 , 0xe000 到 0xf8ff 的 範 圍 被 標 準 保 留 做 私 用 因 而 永 遠 不 會 被 分 配 給 任 何 字 符 . 對 於 Linux 社 區 , 該 私 有 區 被 再 細 分 爲 可 以 被 任 何 終 端 用 戶 獨 立 使 用 的 0xe000 到 0xefff 的 範 圍 , 以 及 從 0xf000 到 0xf8ff 給 所 有 linux 用 戶 所 共 用 的 linux 區 .H. Peter Anvin(<Peter.Anvin [AT] linux.org>, Yggdrasil Computing,Inc) 現 在 維 護 登 記 分 配 到 linux 區 的 字 符 . 該 區 包 括 一 些 Unicode 中 缺 少 的 DEC VT100 的 圖 形 字 符 , 這 使 控 制 檯 的 字 體 緩 衝 區 可 以 直 接 獲 得 這 些 字 符 , 該 區 還 包 括 一 些 象 Klingon 這 樣 的 古 老 語 言 所 使 用 的 字 符 .

文 獻 (LITERATURE)

*

Information technology - Universal Multiple-Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane. International Standard ISO 10646-1, International Organization for Standardization, Geneva, 1993. 這 是 UCS 的 正 式 規 範 , 非 常 正 式 , 也 很 厚 , 還 非 常 貴 . 如 果 要 定 購 信 息 , 去 看 看 www.iso.ch.

*

The Unicode Standard - Worldwide Character Encoding Version 1.0. The Unicode Consortium, Addison-Wesley, Reading, MA, 1991.

Unicode 已 經 有 1.1.4 版 可 用 ,與 1.0 版 的 差 別 可 以 在 ftp.unicode.org 找 到 . Unicode 2.0 也 將 在 1996 年 出 版 一 本 書 .

*

S. Harbison, G. Steele. C - A Reference Manual. Fourth edition, Prentice Hall, Englewood Cliffs, 1995, ISBN 0-13-326224-3. 一 本 很 好 的 C 語 言 編 程 參 考 書 . 現 在 的 第 四 版 包 含 了 1994 年 對 標 準 ISO C 的 第 一 次 修 正 (ISO/IEC 9899:1990), 添 加 了 大 量 處 理 多 種 字 符 集 的 新 的 C 庫 函 數 .

缺 憾 (BUGS)

在 寫 這 個 手 冊 頁 的 時 候 ,linux 對 UCS 的 C 語 言 庫 支 持 遠 未 完 成 .

作 者 (AUTHOR)

Markus Kuhn <mskuhn [AT] cip.de>

又 見 (SEE ALSO)

utf-8(7)http://www.linuxforum.net/books/UTF-8-Unicode.html

[中 文 版 維 護 人 ]

mapping <mapping [AT] 263.net>

[中 文 版 最 新 更 新 ]

2000/11/06

《 中 國 linux論 壇 man手 冊 頁 翻 譯 計 劃 》 :

http://cmpp.linuxforum.net

本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。 中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh