Work with Unicode, CCSID & DBCS

本文详细介绍了Unicode标准及其转换格式UTF-8、UTF-16、UTF-32,并对比了ASCII、EBCDIC等传统字符集。此外还解释了单字节、双字节及多字节字符集的概念。

Unicode is a standard that precisely defines a character set as well as a small number of encodings for it. It enables you to handle text in any language efficiently. It allows a single application executable to work for a global audience.

Unicode provides a unique number for every character, regardless of platform, language, or program.

A Unicode transformation format (UTF) is the algorithmic mapping from every Unicode value to a unique byte sequence.

UTF-8 converts (via an algorithm) Unicode data so that it: Uses 8 data bits to encode the data.

OS/400(R) supports UTF-8 encoding with CCSID 1208.

UTF-16 is an encoding of Unicode in which each character is composed of either one or two 16-bit elements.

OS/400(R) supports UTF-16 encoding with CCSID 1200.

UTF-32 is an encoding of Unicode in which each character is composed of 4 bytes.

The ASCII (American Standard Code for Information Interchange) character set uses 7-bit units, with a trivial encoding designed for 7-bit bytes. It is the most important character set in use today, despite its limitation to very few characters, because its design is the foundation for most modern character sets. ASCII provides only 128 numeric values, and 33 of those are reserved for special functions.

The EBCDIC (Extended Binary-Coded Decimal Interchange Code) character set and a number of associated character sets, designed by IBM(R) for its mainframes, uses 8-bit bytes. It was developed at a similar time as ASCII, and shares the same set of base characters and has other similar properties. Unlike ASCII, the Latin letters are not combined in two blocks for upper- and lower-case. Instead, the letters are arranged so that their hexadecimal values have second digits of 1 through 9 (another punch card-friendly design).

The most common encodings (character encoding schemes) use a single byte per character, and they are often called single-byte character sets (SBCS). They are all limited to 256 characters. Because of this, none of them can even cover all of the accented letters for the Western European languages.

However, East Asian writing systems needed a way to store over 10,000 characters, and so double-byte character sets (DBCS) were developed to provide enough space for the thousands of ideographic characters in East Asian writing systems. Here, the encoding is still byte-based, but each two bytes together represent a single character.

Even in East Asia, text contains letters from small alphabets like Latin or Katakana. These are represented more efficiently with single bytes. Multi-byte character sets (MBCS) provide for this by using a variable number of bytes per character, which distinguishes them from the DBCS encodings.

The CCSID for bit data is 65535.

转载于:https://www.cnblogs.com/pegasus923/archive/2011/10/27/2227150.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值