2.第二个字节为字符串长度
3.第三和第四个字节为基址,基址可以为 UCS 码中第一个字节不为 0 的最小
值。
4.第四个字节以后为 82 格式的 UCS 码
如果第 8 位是 0(xxxx xxxx 0xxx xxxx),则此字符的 82 格式编码就用第 7
到 1 位表示(0000 0000 0xxx xxxx),第 8 位补 0;
如果第 8 位是 1(xxxx xxxx 1xxx xxxx),则此字符的 82 格式编码为 UCS 编
码减去基址,第 8 位补 1。
例:a 不乎了
编码后的字符为:0061 4e0d 4e4e 4e86
用 82 格式表示是:82 04 4e0d 61 80 c1 f9
下面我们以这个例子来看一下基址以及字符编码的获得:
选取 UCS 码第一个字节不为 0 的最小值,此处的四个字符第一个字节都不为
0,所以选择这四个字符的最小值作为基址,也就是 4e0d
然后用基址算出这 4 个字符的 82 编码:
0061 = 0000 0000 0110 0001,第 8 位为 0,所以它的 82 编码为 61
4e0d = 0100 1110 0000 1101,减去基址 4e0d 等于 0,最高位补 1 为
1000 0000,即 80
4e4e = 0100 1110 0100 1110,减去基址等于 41,最高位补 1 为 1100
0001,即 c1
剩下的 4e86 以此类推。
82 格式和 81 有同样的限制,同样也只能表示 128 个字符,而且也要求连续。
那我们在什么情况下选择 80,81 还是 82 格式呢?1.如果可能的话,尽量选
择 81 格式,因为同样大小的字节用 81 格式可以表示最多的字符。如果有 14
个字节可以存储,那么使用 81 格式可以存储 11 个字符(3+N)。但是 81 格式
最多只能表示 128 个字符。
2.选择 82 格式,14 个字节可以存储 10 个字符(4+N),同样最多只能表示连
续的 128 个字符。
3.选择 80 格式,14 个字节可以存储 6 个字符(1+2N),但是 80 格式可以表
找软件资料,就到一览软件文库
http://wk.yl1001.com/rj/