String64类,让CPU一次处理一个字符串

背景

现在的计算机,能一次处理64比特数据。放在DOS时代,一个文件名也才8字节,正好64比特。也就是说,现在的计算机,能一次处理一个DOS文件名。是当做一个数字来处理的,不是当做字符串处理。所以,有了String64类的设想,把常用的句子,都压缩到64比特,便于计算机处理。

步骤

第一步,制作字典。
要包括常用的“字、词、句”。如“操作系统”是个常用词,要包括,作为一个编码单位来存储。实践中会出现难以压缩至64比特的句子,也要纳入字典。

第二步,编码。
采用inf7编码,即7比特为一个编码单位,有1××××××和0××××××两种模式。1模式表示继续,0模式表示终止。
举例:
0××××××,这是一个6比特数字
1××××××0××××××,这是12比特数字
1××××××1××××××0××××××,这是18比特数字

第三步,压缩至64比特。
7×9+1=64
在一个64比特中,可以表示9个英文字母。
剩余的1比特,表示“是否继续”。与inf7编码类似,0表示终止,即“只有这一个64比特”;如果出现1,则是继续,直到出现0开头的编码,才终止。
0+[63bit],这是常见形式
1+[63bit]+0+[63bit],这是扩展形式
1+[63bit]+1+[63bit]+0+[63bit],进一步扩展

第四步,回溯。
整个String64类,可以用64比特表示54比特数字信息。而一个常用句子,将占用一个64比特。所以,在字典中,一个常用句子应该从54比特的最大数开始,由大到小,逆向编码。例如,某个句子特别长,要把它压缩至64比特,应该在字典中,赋予它54比特长的一个数字。

总结

有了String64类,就能把常用的句子,压缩至64比特,让计算机在一个时钟周期内完成处理,从而有希望加快其运行速度。

为了得到更好的压缩率,使用针对汉语优化的GBK编码,可以在64位里记录4个汉字。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值