background image

3.第三个字节为基址,为一个 UCS 码的第 15 位到第 8 位(0xxx xxxx x000 

000)

4.第四个字节以后为 81 格式的 UCS 码

如果第 8 位是 0(xxxx xxxx 0xxx xxxx),则此字符的 81 格式编码就用第 7

到 1 位表示(0000 0000 0xxx xxxx),第 8 位补 0;

如果第 8 位是 1(xxxx xxxx 1xxx xxxx),则此字符的 81 格式编码为 UCS 编

码减去基址左移 7 位,第 8 位补 1。

例:5

Жик

编码后的字符为:0035 0416 0438 043a

用 81 格式表示是:81 04 08 35 96 b8 ba

下面我们以这个例子来看一下基址以及字符编码的获得:

取得第一个字节不是 00’的字符编码:

0416 = 0000 0100 0001 0110

0438 = 0000 0100 0011 1000

043a = 0000 0100 0011 1010

所以基址为 0000 1000,也就是 08

然后用基址算出这 4 个字符的 81 编码:

0035 = 0000 0000 0011 0101,第 8 位为 0,所以它的 81 编码为 0011 

0101,也就是 53

0416 = 0000 0100 0001 0110,基址左移 7 位为 0000 0100 0011 1010 

= 0400,减去基址以后为 16,也就是 0001 0110,然后最高位补 1,为

1001 0110,即 96

后面的以此类推,为 b8,ba

从这里可以看出,81 格式只能在第 15 位到第 8 位相同的情况下才能进行。也

就是说编码的范围只由后 7 位决定,而且是连续的,也就是 2 的 7 次方,即

128 个字符。所以中文并不适合用 81 格式来编码,因为两个汉字之间的 UCS

编码很可能大于 128。

‘82’格式:

1.第一个字节为 0x82

                     找软件资料,就到一览软件文库

http://wk.yl1001.com/rj/