问个短信编码的问题

Aaron3364 2011-04-22 09:29:40
短信中如果使用的是latin 编码方式,能压缩为7 bit传输吗?
像土耳其语 这种该用什么编码?可以压缩为7bit传输吗?
...全文
2133 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
张和阳 2011-10-21
  • 打赏
  • 举报
回复
楼主你好。
看了你的问题,你的意思应该是想办法把需要8bit编码的土耳其字符,实现成7bit编码,不知道是不是这个意思。
首先问一下你的业务是基于CDMA还是基于GSM的。
CDMA中默认支持8bit编码,即,你直接输入140个字符,打包就行了。
GSM不支持8bit,需要通过扩展7bit的方式实现短信编码。
我曾经做过UMTS手机的土耳其扩展7bit需求,
实现原理是,8bit字符,用两个7bit表示,第一个是它的表信息,第二个是表中的对应的字符。
即,如果你输入很多字符,普通的占一个字符,带帽子的占两个字符,在短信输入的时候,160个满的情况下输入某些字符,减一个,带帽子的减两个。
怎样知道这条短信是不是扩展7bit编码的呢?这个是在短信头实现的。类似与实现知道这条短信是不是长短信。这个头,和长短信的头是一个级别的,可以共存。
Aaron3364 2011-04-24
  • 打赏
  • 举报
回复
谢谢LS的答复,也就是说AEE_ENC_ISOLATIN1/AEESMS_ENC_OCTET 的编码就可以实现以8bit来传输是吧?
另外因为我有看过7bit转换的对应表但没仔细看,其实它有将 一些没用的(比如一些无法显示的那些编码)去掉,转换成一些其他的字符,这个不知道你清楚吗?
strayedbird 2011-04-23
  • 打赏
  • 举报
回复
短信编码需要针对MSGOPT_PAYLOAD_ENCODING和MSGOPT_MOSMS_ENCODING两个层次的编码分别进行设置, 一般有下面三种形式:
如果是ascii,及纯英语,使用编码AEE_ENC_ISOLATIN1 / AEESMS_ENC_ASCII
如果是UNICODE,包括汉字,使用编码AEE_ENC_UNICODE / AEESMS_ENC_UNICODE
如果是binary,这种方式应用较少,使用编码:任意编码/AEESMS_ENC_OCTET
可见底层编码十分灵活又有一定规范,对于latin编码方式不知道具体那种编码,但是应用7比特编码的前提是根据信息学原理,ascii是用7比特压缩的,因为其头一个比特总是0,实际上不包含信息量,这样才可以压缩,但是latin从0到255数据都有效,那么就无法压缩,否则信息量将丢失。

2,851

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧