首先,您需要将输入视为位流。
然后,从流中读取13位,并从中形成一个整数值。如果此整数的值小于或等于88,则再读取一位,并将其放入整数的第14位(最低位为1st)。这个整数(我们称之为
v)的最大值是:8192
+ 88 = 8280。
然后分为
v两个索引:
i0 = v%91,
i1 =v/91。然后使用91个元素的字符表,并输出两个字符:
table[i0],
table[i1]。
(现在你可以看到88的原因:为最大值(8280),两者
i0并
i1成为90)
因此,此过程比base64更复杂,但空间效率更高。此外,与base64不同,输出的大小取决于输入字节。N长度序列0x00将短于N长度序列0xff(其中N是足够大的数字)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)