纯英文长短信编码

当手机设置为PDU编码模式,则单条英文短信采用7bit编码。而长短信编码需要在短信内容前面加上编码长度,050003的协议头,长短信标识码,以及总条数和当前条数。由于这些编码占据一些字节,使得短信内容7bit编码的起始位不为7的倍数。因此长短信拆分的每条内容的第一个字节,需要左移一位放在编码后的第一个字节。后面的内容则按照普通7bit进行编码。

我们都知道7bit编码是把8字节的内容压缩成7个字节,而长短信拆分纯英文内容的规则是最多153个字符(字节)/条。第一个字符仅仅左移,后面152个字符参加7bit编码。(152刚好是8的倍数)。当然长短信拆分的最后一条子短信,有可能不足152个字符,这并没有关系。

最后长短信编码的长度为所有字符个数+7。

具体如下:

这条长短信内容为161个“a”

第一条子短信编码(153个a)

A0(153+7)   050003              06                   0201   C2                          E170381C0E87C3.......................

编码长度     长短信协议头    长短信标识码  1/2      左移第一个字母a   7bit编码内容,以上内容重复19次

第二条子短信编码(8个a)

0F(8+7)       050003              06                   0202  C2                          E170381C0E8701

编码长度     长短信协议头    长短信标识码   2/2    左移第一个字母a   7bit编码内容

 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值