7bit 编码
来源:互联网 发布:mac相簿批量删除照片 编辑:程序博客网 时间:2024/04/30 02:44
GSM默认采用7bit编码,实际上,7位编码是种压缩算法,因为,ASCII码(不包括扩展ASCII),其值小于0x80,最高位bit8是0,被忽略了;而7bit编码就利用了这一位来存储数据;其编码时,依次将下一7位编码的后几位逐次移至前面,形成新的8位编码。
1、 第一个字节
8 7 6 5 4 3 2 1
0 a7 a6 a5 a4 a3 a2 a1
2、第二个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
0 0 b7 b6 b5 b4 b3 b2
3、第三个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
c2 c1 b7 b6 b5 b4 b3 b2
0 0 0 c7 c6 c5 c4 c3
4、第四个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
c2 c1 b7 b6 b5 b4 b3 b2
d3 d2 d2 c7 c6 c5 c4 c3
0 0 0 0 d7 d6 d5 d4
5、第五个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
c2 c1 b7 b6 b5 b4 b3 b2
d3 d2 d2 c7 c6 c5 c4 c3
e4 e3 e2 e1 d7 d6 d5 d4
0 0 0 0 0 e7 e6 e5
6、第六个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
c2 c1 b7 b6 b5 b4 b3 b2
d3 d2 d2 c7 c6 c5 c4 c3
e4 e3 e2 e1 d7 d6 d5 d4
f5 f4 f3 f2 f1 e7 e6 e5
0 0 0 0 0 0 f7 f6
7、第七个字节
8 7 6 5 4 3 2 1
b1 a7 a6 a5 a4 a3 a2 a1
c2 c1 b7 b6 b5 b4 b3 b2
d3 d2 d2 c7 c6 c5 c4 c3
e4 e3 e2 e1 d7 d6 d5 d4
f5 f4 f3 f2 f1 e7 e6 e5
g6 g5 g4 g3 g2 g1 f7 f6
0 0 0 0 0 0 0 g7
解码时,采用相反的过程进行译码。普通的ASCII码对应的字符只需维护一个7bit映射表,对于扩展的ASCII字符,同样也采用一个扩展的映射表即可。
例如,”Hello World!”的7bit编码结果为:
PDU信息中的长度是实际字母的个数,而不是编码后的个数,即每8个字母就差1个字节。
编码时每8个字母一组,编码后为7个字节。
解码时应7个一组分开,每组解为8个字符,各组之间并无联系。
注意:短信发送的是pdu字符串,在用上面函数解码前,需要把pdu字符串转字节数组byte[]才行。
具体的7bit编解码源程序见百度文库:PDU协议7bit编码
- ASCII编码->7Bit编码
- 7bit编码
- 7bit编码
- sms 7bit编码
- pdu 7bit 编码
- 7bit 编码
- 7bit编码
- 7BIT 编码 长短信
- GSM PDU 7bit编码解码函数
- 7bit编码解码---未测试
- Delphi 6Bit 编码
- 短消息发送7Bit AscII编码符号的问题
- SMS内容的7bit和UCS2编码方式简介
- GSM PDU 7bit短信编码与解码
- VB.Net实现7Bit编码与解码
- 8bit转7bit
- 中英文手机短信 PDU 串 编码(UCS2) 解码(UCS2,7-Bit) 程序 ( in C# )
- [SMS]SMS内容的7bit和UCS2编码方式简介
- JDeveloper IDE 12C 版本 运行页面报500错误 没有值"netscape" 的枚举常量
- libevent使用ndk-r8d编译
- 寒假第二天--线性表--数据结构上机测试2-2:单链表操作B
- 软件性能调优系列--知识点1
- 数据结构实验之链表三:链表的逆置
- 7bit 编码
- 同时运行两个脚本
- 寒假第二天--线性表--多项式求和
- 关键字 const
- 编程之美--求数组的子数组之和的最大值
- HDU 1226(bfs,大数求余)
- 实现的小功能:判断报名是否重复,是返回true,否返回false.
- SAE 和 AWS 以及其它
- 基于小文件的分布式文件存储方案(JDistFS)