1、ASCII与UNICODE
鉴于信息交换的重要及为统一文字符号的编码标准,让不同厂牌机型的计算机皆能使用同一套标准化的信息交换码,于是美国国家标准局特别制定了ASCII码(America Standard Code for Information Interchange,美国信息交换标准码),作为数据传输的标准码。早期使用7个位来表示英文字母、数字0~9及其它符号,现在则使用8个位,共可表示256个不同的文字与符号,为目前各计算机系统中使用最普遍也最广泛的英文标准码,相对于ASCII code,中文系统使用最广泛的内码则为Big-5码。
ASCII码是使用最广泛的标准码,为大多数的各类计算机所采用。另外由数家知名软硬件厂商所合作发展的万国码(UNICODE),则是数据表示的新标准,UNICODE使用2或4个bytes来表示每一个符号,共可表示65536个或1677万个字符符号,除英文外,还可以包含数量最多的中文、日文,及全世界各国的文字符号,让信息之交流更无国界。
2、Unicode正在改变所有这一切
Unicode给每个字符提供了一个唯一的数字,不论是什么平台,不论是什么程序,不论什么语言。Unicode标准已经被这些工业界的领导们所采用,例如:Apple, HP, IBM, JustSystem, Microsoft, Oracle, SAP, Sun, Sybase, Unisys和其它许多公司。最新的标准都需要Unicode,例如XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML等等,并且,Unicode是实现ISO/IEC 10646的正规方式。许多操作系统,所有最新的浏览器和许多其他产品都支持它。Unicode标准的出现和支持它工具的存在,是近来全球软件技术最重要的发展趋势。
将Unicode与客户服务器或多层应用程序和网站结合,比使用传统字符集节省费用。Unicode使单一软件产品或单一网站能够贯穿多个平台,语言和国家,而不需要重建。它可将数据传输到许多不同的系统,而无损坏。
3. 为什么要使用Unicode
(1) 可以很容易地在不同语言之间进行数据交换。
(2) 使你能够分配支持所有语言的单个二进制.exe文件或DLL文件。
(3) 提高应用程序的运行效率。
Windows 2000是使用Unicode从头进行开发的,如果调用任何一个Windows函数并给它传递一个ANSI字符串,那幺系统首先要将字符串转换成Unicode,然后将Unicode字符串传递给操作系统。如果希望函数返回ANSI字符串,系统就会首先将Unicode字符串转换成ANSI字符串,然后将结果返回给你的应用程序。进行这些字符串的转换需要占用系统的时间和内存。通过从头开始用Unicode来开发应用程序,就能够使你的应用程序更加有效地运行。
Windows CE 本身就是使用Unicode的一种操作系统,完全不支持ANSI Windows函数
Windows 98 只支持ANSI,只能为ANSI开发应用程序。
Microsoft公司将COM从16位Windows转换成Win32时,公司决定需要字符串的所有COM接口方法都只能接受Unicode字符串。